More RSVP packet decode/encode
[mpls-ldp-portable.git] / ldp / ldp_outlabel.h
blob89016a009c1e2bd8880ca32cda6ddc66618aca0d
2 /*
3 * Copyright (C) James R. Leu 2000
4 * jleu@mindspring.com
6 * This software is covered under the LGPL, for more
7 * info check out http://www.gnu.org/copyleft/lgpl.html
8 */
10 #ifndef _LDP_OUTLABEL_H_
11 #define _LDP_OUTLABEL_H_
13 #include "ldp_struct.h"
15 extern ldp_outlabel *ldp_outlabel_create();
16 extern void ldp_outlabel_delete(ldp_outlabel * i);
18 extern ldp_outlabel *ldp_outlabel_create_complete(ldp_global * g,
19 ldp_session * s, ldp_addr * nh, ldp_attr * a);
20 extern void ldp_outlabel_delete_complete(ldp_global * g, ldp_outlabel * out);
22 extern mpls_return_enum _ldp_outlabel_add_inlabel(ldp_outlabel *, ldp_inlabel *);
23 extern mpls_return_enum _ldp_outlabel_del_inlabel(ldp_outlabel *, ldp_inlabel *);
25 extern mpls_return_enum _ldp_outlabel_add_session(ldp_outlabel *, ldp_session *);
26 extern mpls_return_enum _ldp_outlabel_del_session(ldp_outlabel * o);
28 extern uint32_t _ldp_outlabel_get_next_index();
29 extern mpls_return_enum _ldp_outlabel_add_attr(ldp_outlabel * o, ldp_attr * a);
30 extern mpls_return_enum _ldp_outlabel_del_attr(ldp_outlabel * o);
31 extern mpls_return_enum ldp_outlabel_add_nexthop(ldp_outlabel * o,
33 ldp_addr * nh);
34 extern mpls_return_enum ldp_outlabel_del_nexthop(ldp_outlabel * o);
36 extern mpls_return_enum _ldp_outlabel_add_tunnel(ldp_outlabel * o,
38 ldp_tunnel * t);
39 extern mpls_return_enum _ldp_outlabel_del_tunnel(ldp_outlabel * o,
41 ldp_tunnel * t);
43 #endif