X-Git-Url: https://git.proxmox.com/?a=blobdiff_plain;f=zebra%2Flabel_manager.h;h=3e3def5f98bbf47eaf7a18e11cc6da2a4786c65d;hb=91d227b7e3cb53ad8fdbcd9d4cff7f0a666918e3;hp=0c6a5ebc7d98d1999508c224e0c5e3ab38e47b20;hpb=df581cd3e137e8d3ab0f9acbb3d33bdb1e63face;p=mirror_frr.git diff --git a/zebra/label_manager.h b/zebra/label_manager.h index 0c6a5ebc7..3e3def5f9 100644 --- a/zebra/label_manager.h +++ b/zebra/label_manager.h @@ -16,10 +16,9 @@ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU * General Public License for more details. * - * You should have received a copy of the GNU General Public License - * along with FRR; see the file COPYING. If not, write to the Free - * Software Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA - * 02111-1307, USA. + * You should have received a copy of the GNU General Public License along + * with this program; see the file COPYING; if not, write to the Free Software + * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA */ #ifndef _LABEL_MANAGER_H @@ -30,6 +29,8 @@ #include "lib/linklist.h" #include "lib/thread.h" +#include "zebra/zserv.h" + #define NO_PROTO 0 /* @@ -45,11 +46,11 @@ * 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 */ }; /* @@ -62,13 +63,15 @@ struct label_manager { bool lm_is_external; -int zread_relay_label_manager_request(int cmd, struct zserv *zserv); +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 */