3 * Copyright (C) James R. Leu 2002
6 * This software is covered under the LGPL, for more
7 * info check out http://www.gnu.org/copyleft/lgpl.html
13 #include "lsr_struct.h"
15 #define LSR_CFG_ADD 0x00000001
16 #define LSR_CFG_DEL 0x10000000
18 #define LSR_GLOBAL_CFG_ADMIN_STATE 0x00000002
20 #define LSR_GLOBAL_CFG_WHEN_DOWN (0)
22 #define LSR_OUTSEGMENT_CFG_INDEX 0x00000002
23 #define LSR_OUTSEGMENT_CFG_PUSH_LABEL 0x00000004
24 #define LSR_OUTSEGMENT_CFG_OWNER 0x00000008
25 #define LSR_OUTSEGMENT_CFG_INTERFACE 0x00000010
26 #define LSR_OUTSEGMENT_CFG_LABEL 0x00000020
27 #define LSR_OUTSEGMENT_CFG_NEXTHOP 0x00000040
28 #define LSR_OUTSEGMENT_CFG_WHEN_DOWN (LSR_CFG_DEL|\
29 LSR_OUTSEGMENT_CFG_PUSH_LABEL|\
30 LSR_OUTSEGMENT_CFG_OWNER|\
31 LSR_OUTSEGMENT_CFG_INTERFACE|\
32 LSR_OUTSEGMENT_CFG_LABEL|\
33 LSR_OUTSEGMENT_CFG_NEXTHOP)
35 #define LSR_INSEGMENT_CFG_INDEX 0x00000002
36 #define LSR_INSEGMENT_CFG_NPOP 0x00000004
37 #define LSR_INSEGMENT_CFG_FAMILY 0x00000008
38 #define LSR_INSEGMENT_CFG_LABELSPACE 0x00000010
39 #define LSR_INSEGMENT_CFG_LABEL 0x00000020
40 #define LSR_INSEGMENT_CFG_OWNER 0x00000040
41 #define LSR_INSEGMENT_CFG_WHEN_DOWN (LSR_CFG_DEL|\
42 LSR_INSEGMENT_CFG_NPOP|\
43 LSR_INSEGMENT_CFG_FAMILY|\
44 LSR_INSEGMENT_CFG_LABELSPACE|\
45 LSR_INSEGMENT_CFG_LABEL|\
46 LSR_INSEGMENT_CFG_OWNER)
48 #define LSR_XCONNECT_CFG_INDEX 0x00000002
49 #define LSR_XCONNECT_CFG_OUTSEGMENT 0x00000004
50 #define LSR_XCONNECT_CFG_INSEGMENT 0x00000008
51 #define LSR_XCONNECT_CFG_LSPID 0x00000010
52 #define LSR_XCONNECT_CFG_LABELSTACK 0x00000020
53 #define LSR_XCONNECT_CFG_ADMIN_STATE 0x00000040
54 #define LSR_XCONNECT_CFG_OWNER 0x00000080
55 #define LSR_XCONNECT_CFG_WHEN_DOWN (LSR_CFG_DEL|\
56 LSR_XCONNECT_CFG_OUTSEGMENT|\
57 LSR_XCONNECT_CFG_INSEGMENT|\
58 LSR_XCONNECT_CFG_LSPID|\
59 LSR_XCONNECT_CFG_LABELSTACK|\
60 LSR_XCONNECT_CFG_OWNER)
62 #define LSR_IF_CFG_INDEX 0x00000002
63 #define LSR_IF_CFG_OPER_STATE 0x00000004
64 #define LSR_IF_CFG_NAME 0x00000008
65 #define LSR_IF_CFG_WHEN_DOWN (LSR_CFG_DEL|\
68 #define LSR_FTN_CFG_INDEX 0x00000002
69 #define LSR_FTN_CFG_OUTSEGMENT 0x00000004
70 #define LSR_FTN_CFG_FEC 0x00000008
71 #define LSR_FTN_CFG_WHEN_DOWN (LSR_CFG_DEL|\
73 LSR_FTN_CFG_OUTSEGMENT)
75 extern mpls_cfg_handle
lsr_cfg_open(mpls_instance_handle data
);
76 extern void lsr_cfg_close(mpls_cfg_handle handle
);
78 extern mpls_return_enum
lsr_cfg_global_get(mpls_cfg_handle handle
, lsr_global
* g
, uint32_t flag
);
79 extern mpls_return_enum
lsr_cfg_global_set(mpls_cfg_handle handle
, lsr_global
* g
, uint32_t flag
);
81 extern mpls_return_enum
lsr_cfg_outsegment_get(mpls_cfg_handle handle
, lsr_outsegment
* i
, uint32_t flag
);
82 extern mpls_return_enum
lsr_cfg_outsegment_getnext(mpls_cfg_handle handle
, lsr_outsegment
* i
, uint32_t flag
);
83 extern mpls_return_enum
lsr_cfg_outsegment_test(mpls_cfg_handle handle
, lsr_outsegment
* i
, uint32_t flag
);
84 extern mpls_return_enum
lsr_cfg_outsegment_set(mpls_cfg_handle handle
, lsr_outsegment
* i
, uint32_t flag
);
87 extern mpls_return_enum
lsr_cfg_insegment_get(mpls_cfg_handle handle
, lsr_insegment
* i
, uint32_t flag
);
88 extern mpls_return_enum
lsr_cfg_insegment_getnext(mpls_cfg_handle handle
, lsr_insegment
* i
, uint32_t flag
);
89 extern mpls_return_enum
lsr_cfg_insegment_test(mpls_cfg_handle handle
, lsr_insegment
* i
, uint32_t flag
);
90 extern mpls_return_enum
lsr_cfg_insegment_set(mpls_cfg_handle handle
, lsr_insegment
* i
, uint32_t flag
);
93 extern mpls_return_enum
lsr_cfg_xconnect_get(mpls_cfg_handle handle
, lsr_xconnect
* x
, uint32_t flag
);
94 extern mpls_return_enum
lsr_cfg_xconnect_get2(mpls_cfg_handle handle
, lsr_xconnect
*x
, uint32_t flag
);
95 extern mpls_return_enum
lsr_cfg_xconnect_getnext(mpls_cfg_handle handle
, lsr_xconnect
* x
, uint32_t flag
);
96 extern mpls_return_enum
lsr_cfg_xconnect_test(mpls_cfg_handle handle
, lsr_xconnect
* x
, uint32_t flag
);
97 extern mpls_return_enum
lsr_cfg_xconnect_set(mpls_cfg_handle handle
, lsr_xconnect
* x
, uint32_t flag
);
98 extern mpls_return_enum
lsr_cfg_xconnect_set2(mpls_cfg_handle handle
, lsr_xconnect
* x
, uint32_t flag
);
101 extern mpls_return_enum
lsr_cfg_if_get(mpls_cfg_handle handle
, lsr_if
* i
, uint32_t flag
);
102 extern mpls_return_enum
lsr_cfg_if_getnext(mpls_cfg_handle handle
, lsr_if
* i
, uint32_t flag
);
103 extern mpls_return_enum
lsr_cfg_if_test(mpls_cfg_handle handle
, lsr_if
* i
, uint32_t flag
);
104 extern mpls_return_enum
lsr_cfg_if_set(mpls_cfg_handle handle
, lsr_if
* i
, uint32_t flag
);
106 extern mpls_return_enum
lsr_cfg_ftn_get(mpls_cfg_handle handle
, lsr_ftn
* i
, uint32_t flag
);
107 extern mpls_return_enum
lsr_cfg_ftn_get2(mpls_cfg_handle handle
, lsr_ftn
* i
, uint32_t flag
);
108 extern mpls_return_enum
lsr_cfg_ftn_getnext(mpls_cfg_handle handle
, lsr_ftn
* i
, uint32_t flag
);
109 extern mpls_return_enum
lsr_cfg_ftn_test(mpls_cfg_handle handle
, lsr_ftn
* i
, uint32_t flag
);
110 extern mpls_return_enum
lsr_cfg_ftn_set(mpls_cfg_handle handle
, lsr_ftn
* i
, uint32_t flag
);
111 extern mpls_return_enum
lsr_cfg_ftn_set2(mpls_cfg_handle handle
, lsr_ftn
* i
, uint32_t flag
);