#include "lib/linklist.h"
#include "lib/thread.h"
+#include "zebra/zserv.h"
+
#define NO_PROTO 0
/*
* the same proto and instance values)
*/
struct label_manager_chunk {
- u_char proto;
- u_short instance;
- u_char keep;
- uint32_t start; /* First label of the chunk */
- uint32_t end; /* Last label of the chunk */
+ uint8_t proto;
+ unsigned short instance;
+ uint8_t keep;
+ uint32_t start; /* First label of the chunk */
+ uint32_t end; /* Last label of the chunk */
};
/*
bool lm_is_external;
-int zread_relay_label_manager_request(int cmd, struct zserv *zserv, vrf_id_t vrf_id);
+int zread_relay_label_manager_request(int cmd, struct zserv *zserv,
+ struct stream *msg, vrf_id_t vrf_id);
void label_manager_init(char *lm_zserv_path);
-struct label_manager_chunk *assign_label_chunk(u_char proto, u_short instance,
- u_char keep, uint32_t size);
-int release_label_chunk(u_char proto, u_short instance, uint32_t start,
+struct label_manager_chunk *assign_label_chunk(uint8_t proto,
+ unsigned short instance,
+ uint8_t keep, uint32_t size);
+int release_label_chunk(uint8_t proto, unsigned short instance, uint32_t start,
uint32_t end);
-int release_daemon_chunks(u_char proto, u_short instance);
+int release_daemon_label_chunks(struct zserv *client);
void label_manager_close(void);
-#endif /* _LABEL_MANAGER_H */
+#endif /* _LABEL_MANAGER_H */