From: Vasu Dasari <vdasari@gmail.com>
[mpls-ldp-portable.git] / common / mpls_mpls_impl.h
blobe19398edca0c91b0c1af7ee014bf90f3951ed122
2 /*
3 * Copyright (C) James R. Leu 2002
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 _MPLS_MPLS_IMPL_H_
11 #define _MPLS_MPLS_IMPL_H_
13 #include "mpls_struct.h"
15 struct ldp_inlabel;
16 struct ldp_outlabel;
19 * in: handle
20 * return: mpls_mpls_handle
22 extern mpls_mpls_handle mpls_mpls_open(mpls_instance_handle handle);
25 * in: handle
27 extern void mpls_mpls_close(mpls_mpls_handle handle);
30 * in: handle, o
31 * return: mpls_return_enum
33 extern mpls_return_enum mpls_mpls_outsegment_add(mpls_mpls_handle handle,
34 struct mpls_outsegment * o);
37 * in: handle, o
39 extern void mpls_mpls_outsegment_del(mpls_mpls_handle handle, struct mpls_outsegment * o);
42 * in: handle, i
43 * return: mpls_return_enum
45 extern mpls_return_enum mpls_mpls_insegment_add(mpls_mpls_handle handle,
46 struct mpls_insegment * i);
49 * in: handle, i
51 extern void mpls_mpls_insegment_del(mpls_mpls_handle handle, struct mpls_insegment * i);
54 * in: handle, i, o
55 * return: mpls_return_enum
57 extern mpls_return_enum mpls_mpls_xconnect_add(mpls_mpls_handle handle,
58 struct mpls_insegment * i, struct mpls_outsegment * o);
61 * in: handle, i, o
63 extern void mpls_mpls_xconnect_del(mpls_mpls_handle handle,
64 struct mpls_insegment * i, struct mpls_outsegment * o);
67 * in: handle, f, o
68 * return: mpls_return_enum
70 extern mpls_return_enum mpls_mpls_fec2out_add(mpls_mpls_handle handle,
71 mpls_fec * f, struct mpls_outsegment * o);
74 * in: handle, f, o
76 extern void mpls_mpls_fec2out_del(mpls_mpls_handle handle,
77 mpls_fec * f, struct mpls_outsegment * o);
79 extern mpls_return_enum mpls_mpls_get_label_space_range(mpls_mpls_handle handle,
80 mpls_range *range);
82 #endif