mirror of
https://gitlab.nic.cz/labs/bird.git
synced 2024-11-17 08:38:42 +00:00
Nest: Added const to ea_show just to declare that this shouldn't really change anything
This commit is contained in:
parent
a7d9b8f116
commit
258be56539
@ -80,7 +80,7 @@ struct protocol {
|
|||||||
void (*cleanup)(struct proto *); /* Called after shutdown when protocol became hungry/down */
|
void (*cleanup)(struct proto *); /* Called after shutdown when protocol became hungry/down */
|
||||||
void (*get_status)(struct proto *, byte *buf); /* Get instance status (for `show protocols' command) */
|
void (*get_status)(struct proto *, byte *buf); /* Get instance status (for `show protocols' command) */
|
||||||
void (*get_route_info)(struct rte *, byte *buf); /* Get route information (for `show route' command) */
|
void (*get_route_info)(struct rte *, byte *buf); /* Get route information (for `show route' command) */
|
||||||
int (*get_attr)(struct eattr *, byte *buf, int buflen); /* ASCIIfy dynamic attribute (returns GA_*) */
|
int (*get_attr)(const struct eattr *, byte *buf, int buflen); /* ASCIIfy dynamic attribute (returns GA_*) */
|
||||||
void (*show_proto_info)(struct proto *); /* Show protocol info (for `show protocols all' command) */
|
void (*show_proto_info)(struct proto *); /* Show protocol info (for `show protocols all' command) */
|
||||||
void (*copy_config)(struct proto_config *, struct proto_config *); /* Copy config from given protocol instance */
|
void (*copy_config)(struct proto_config *, struct proto_config *); /* Copy config from given protocol instance */
|
||||||
};
|
};
|
||||||
|
@ -577,7 +577,7 @@ void ea_merge(ea_list *from, ea_list *to); /* Merge sub-lists to allocated buffe
|
|||||||
int ea_same(ea_list *x, ea_list *y); /* Test whether two ea_lists are identical */
|
int ea_same(ea_list *x, ea_list *y); /* Test whether two ea_lists are identical */
|
||||||
uint ea_hash(ea_list *e); /* Calculate 16-bit hash value */
|
uint ea_hash(ea_list *e); /* Calculate 16-bit hash value */
|
||||||
ea_list *ea_append(ea_list *to, ea_list *what);
|
ea_list *ea_append(ea_list *to, ea_list *what);
|
||||||
void ea_format_bitfield(struct eattr *a, byte *buf, int bufsize, const char **names, int min, int max);
|
void ea_format_bitfield(const struct eattr *a, byte *buf, int bufsize, const char **names, int min, int max);
|
||||||
|
|
||||||
#define ea_normalize(ea) do { \
|
#define ea_normalize(ea) do { \
|
||||||
if (ea->next) { \
|
if (ea->next) { \
|
||||||
|
@ -790,7 +790,7 @@ ea_free(ea_list *o)
|
|||||||
}
|
}
|
||||||
|
|
||||||
static int
|
static int
|
||||||
get_generic_attr(eattr *a, byte **buf, int buflen UNUSED)
|
get_generic_attr(const eattr *a, byte **buf, int buflen UNUSED)
|
||||||
{
|
{
|
||||||
if (a->id == EA_GEN_IGP_METRIC)
|
if (a->id == EA_GEN_IGP_METRIC)
|
||||||
{
|
{
|
||||||
@ -802,7 +802,7 @@ get_generic_attr(eattr *a, byte **buf, int buflen UNUSED)
|
|||||||
}
|
}
|
||||||
|
|
||||||
void
|
void
|
||||||
ea_format_bitfield(struct eattr *a, byte *buf, int bufsize, const char **names, int min, int max)
|
ea_format_bitfield(const struct eattr *a, byte *buf, int bufsize, const char **names, int min, int max)
|
||||||
{
|
{
|
||||||
byte *bound = buf + bufsize - 32;
|
byte *bound = buf + bufsize - 32;
|
||||||
u32 data = a->u.data;
|
u32 data = a->u.data;
|
||||||
@ -898,7 +898,7 @@ ea_show_lc_set(struct cli *c, const struct adata *ad, byte *pos, byte *buf, byte
|
|||||||
* get_attr() hook, it's consulted first.
|
* get_attr() hook, it's consulted first.
|
||||||
*/
|
*/
|
||||||
void
|
void
|
||||||
ea_show(struct cli *c, eattr *e)
|
ea_show(struct cli *c, const eattr *e)
|
||||||
{
|
{
|
||||||
struct protocol *p;
|
struct protocol *p;
|
||||||
int status = GA_UNKNOWN;
|
int status = GA_UNKNOWN;
|
||||||
|
@ -1852,7 +1852,7 @@ babel_get_route_info(rte *rte, byte *buf)
|
|||||||
}
|
}
|
||||||
|
|
||||||
static int
|
static int
|
||||||
babel_get_attr(eattr *a, byte *buf, int buflen UNUSED)
|
babel_get_attr(const eattr *a, byte *buf, int buflen UNUSED)
|
||||||
{
|
{
|
||||||
switch (a->id)
|
switch (a->id)
|
||||||
{
|
{
|
||||||
|
@ -72,7 +72,7 @@ struct bgp_attr_desc {
|
|||||||
void (*export)(struct bgp_export_state *s, eattr *a);
|
void (*export)(struct bgp_export_state *s, eattr *a);
|
||||||
int (*encode)(struct bgp_write_state *s, eattr *a, byte *buf, uint size);
|
int (*encode)(struct bgp_write_state *s, eattr *a, byte *buf, uint size);
|
||||||
void (*decode)(struct bgp_parse_state *s, uint code, uint flags, byte *data, uint len, ea_list **to);
|
void (*decode)(struct bgp_parse_state *s, uint code, uint flags, byte *data, uint len, ea_list **to);
|
||||||
void (*format)(eattr *ea, byte *buf, uint size);
|
void (*format)(const eattr *ea, byte *buf, uint size);
|
||||||
};
|
};
|
||||||
|
|
||||||
static const struct bgp_attr_desc bgp_attr_table[];
|
static const struct bgp_attr_desc bgp_attr_table[];
|
||||||
@ -396,7 +396,7 @@ bgp_decode_origin(struct bgp_parse_state *s, uint code UNUSED, uint flags, byte
|
|||||||
}
|
}
|
||||||
|
|
||||||
static void
|
static void
|
||||||
bgp_format_origin(eattr *a, byte *buf, uint size UNUSED)
|
bgp_format_origin(const eattr *a, byte *buf, uint size UNUSED)
|
||||||
{
|
{
|
||||||
static const char *bgp_origin_names[] = { "IGP", "EGP", "Incomplete" };
|
static const char *bgp_origin_names[] = { "IGP", "EGP", "Incomplete" };
|
||||||
|
|
||||||
@ -510,7 +510,7 @@ bgp_decode_next_hop(struct bgp_parse_state *s, uint code UNUSED, uint flags UNUS
|
|||||||
|
|
||||||
/* TODO: This function should use AF-specific hook */
|
/* TODO: This function should use AF-specific hook */
|
||||||
static void
|
static void
|
||||||
bgp_format_next_hop(eattr *a, byte *buf, uint size UNUSED)
|
bgp_format_next_hop(const eattr *a, byte *buf, uint size UNUSED)
|
||||||
{
|
{
|
||||||
ip_addr *nh = (void *) a->u.ptr->data;
|
ip_addr *nh = (void *) a->u.ptr->data;
|
||||||
uint len = a->u.ptr->length;
|
uint len = a->u.ptr->length;
|
||||||
@ -601,7 +601,7 @@ bgp_decode_aggregator(struct bgp_parse_state *s, uint code UNUSED, uint flags, b
|
|||||||
}
|
}
|
||||||
|
|
||||||
static void
|
static void
|
||||||
bgp_format_aggregator(eattr *a, byte *buf, uint size UNUSED)
|
bgp_format_aggregator(const eattr *a, byte *buf, uint size UNUSED)
|
||||||
{
|
{
|
||||||
const byte *data = a->u.ptr->data;
|
const byte *data = a->u.ptr->data;
|
||||||
|
|
||||||
@ -676,7 +676,7 @@ bgp_decode_cluster_list(struct bgp_parse_state *s, uint code UNUSED, uint flags,
|
|||||||
}
|
}
|
||||||
|
|
||||||
static void
|
static void
|
||||||
bgp_format_cluster_list(eattr *a, byte *buf, uint size)
|
bgp_format_cluster_list(const eattr *a, byte *buf, uint size)
|
||||||
{
|
{
|
||||||
/* Truncates cluster lists larger than buflen, probably not a problem */
|
/* Truncates cluster lists larger than buflen, probably not a problem */
|
||||||
int_set_format(a->u.ptr, 0, -1, buf, size);
|
int_set_format(a->u.ptr, 0, -1, buf, size);
|
||||||
@ -831,7 +831,7 @@ bgp_decode_aigp(struct bgp_parse_state *s, uint code UNUSED, uint flags, byte *d
|
|||||||
}
|
}
|
||||||
|
|
||||||
static void
|
static void
|
||||||
bgp_format_aigp(eattr *a, byte *buf, uint size UNUSED)
|
bgp_format_aigp(const eattr *a, byte *buf, uint size UNUSED)
|
||||||
{
|
{
|
||||||
const byte *b = bgp_aigp_get_tlv(a->u.ptr, BGP_AIGP_METRIC);
|
const byte *b = bgp_aigp_get_tlv(a->u.ptr, BGP_AIGP_METRIC);
|
||||||
|
|
||||||
@ -909,7 +909,7 @@ bgp_decode_mpls_label_stack(struct bgp_parse_state *s, uint code UNUSED, uint fl
|
|||||||
}
|
}
|
||||||
|
|
||||||
static void
|
static void
|
||||||
bgp_format_mpls_label_stack(eattr *a, byte *buf, uint size)
|
bgp_format_mpls_label_stack(const eattr *a, byte *buf, uint size)
|
||||||
{
|
{
|
||||||
u32 *labels = (u32 *) a->u.ptr->data;
|
u32 *labels = (u32 *) a->u.ptr->data;
|
||||||
uint lnum = a->u.ptr->length / 4;
|
uint lnum = a->u.ptr->length / 4;
|
||||||
@ -2293,7 +2293,7 @@ bgp_process_as4_attrs(ea_list **attrs, struct linpool *pool)
|
|||||||
}
|
}
|
||||||
|
|
||||||
int
|
int
|
||||||
bgp_get_attr(eattr *a, byte *buf, int buflen)
|
bgp_get_attr(const eattr *a, byte *buf, int buflen)
|
||||||
{
|
{
|
||||||
uint i = EA_ID(a->id);
|
uint i = EA_ID(a->id);
|
||||||
const struct bgp_attr_desc *d;
|
const struct bgp_attr_desc *d;
|
||||||
|
@ -581,7 +581,7 @@ int bgp_rte_recalculate(rtable *table, net *net, rte *new, rte *old, rte *old_be
|
|||||||
struct rte *bgp_rte_modify_stale(struct rte *r, struct linpool *pool);
|
struct rte *bgp_rte_modify_stale(struct rte *r, struct linpool *pool);
|
||||||
void bgp_rt_notify(struct proto *P, struct channel *C, net *n, rte *new, rte *old);
|
void bgp_rt_notify(struct proto *P, struct channel *C, net *n, rte *new, rte *old);
|
||||||
int bgp_preexport(struct proto *, struct rte **, struct linpool *);
|
int bgp_preexport(struct proto *, struct rte **, struct linpool *);
|
||||||
int bgp_get_attr(struct eattr *e, byte *buf, int buflen);
|
int bgp_get_attr(const struct eattr *e, byte *buf, int buflen);
|
||||||
void bgp_get_route_info(struct rte *, byte *buf);
|
void bgp_get_route_info(struct rte *, byte *buf);
|
||||||
int bgp_total_aigp_metric_(rte *e, u64 *metric, const struct adata **ad);
|
int bgp_total_aigp_metric_(rte *e, u64 *metric, const struct adata **ad);
|
||||||
|
|
||||||
|
@ -620,7 +620,7 @@ ospf_get_route_info(rte * rte, byte * buf)
|
|||||||
}
|
}
|
||||||
|
|
||||||
static int
|
static int
|
||||||
ospf_get_attr(eattr * a, byte * buf, int buflen UNUSED)
|
ospf_get_attr(const eattr * a, byte * buf, int buflen UNUSED)
|
||||||
{
|
{
|
||||||
switch (a->id)
|
switch (a->id)
|
||||||
{
|
{
|
||||||
|
@ -740,7 +740,7 @@ radv_pref_str(u32 pref)
|
|||||||
|
|
||||||
/* The buffer has some minimal size */
|
/* The buffer has some minimal size */
|
||||||
static int
|
static int
|
||||||
radv_get_attr(eattr *a, byte *buf, int buflen UNUSED)
|
radv_get_attr(const eattr *a, byte *buf, int buflen UNUSED)
|
||||||
{
|
{
|
||||||
switch (a->id)
|
switch (a->id)
|
||||||
{
|
{
|
||||||
|
@ -1190,7 +1190,7 @@ rip_get_route_info(rte *rte, byte *buf)
|
|||||||
}
|
}
|
||||||
|
|
||||||
static int
|
static int
|
||||||
rip_get_attr(eattr *a, byte *buf, int buflen UNUSED)
|
rip_get_attr(const eattr *a, byte *buf, int buflen UNUSED)
|
||||||
{
|
{
|
||||||
switch (a->id)
|
switch (a->id)
|
||||||
{
|
{
|
||||||
|
@ -46,7 +46,7 @@ static inline void krt_sys_io_init(void) { }
|
|||||||
static inline void krt_sys_init(struct krt_proto *p UNUSED) { }
|
static inline void krt_sys_init(struct krt_proto *p UNUSED) { }
|
||||||
static inline void krt_sys_postconfig(struct krt_config *x UNUSED) { }
|
static inline void krt_sys_postconfig(struct krt_config *x UNUSED) { }
|
||||||
|
|
||||||
static inline int krt_sys_get_attr(eattr *a UNUSED, byte *buf UNUSED, int buflen UNUSED) { return GA_UNKNOWN; }
|
static inline int krt_sys_get_attr(const eattr *a UNUSED, byte *buf UNUSED, int buflen UNUSED) { return GA_UNKNOWN; }
|
||||||
|
|
||||||
|
|
||||||
#endif
|
#endif
|
||||||
|
@ -2065,7 +2065,7 @@ static const char *krt_features_names[KRT_FEATURES_MAX] = {
|
|||||||
};
|
};
|
||||||
|
|
||||||
int
|
int
|
||||||
krt_sys_get_attr(eattr *a, byte *buf, int buflen UNUSED)
|
krt_sys_get_attr(const eattr *a, byte *buf, int buflen UNUSED)
|
||||||
{
|
{
|
||||||
switch (a->id)
|
switch (a->id)
|
||||||
{
|
{
|
||||||
|
@ -1156,7 +1156,7 @@ krt_copy_config(struct proto_config *dest, struct proto_config *src)
|
|||||||
}
|
}
|
||||||
|
|
||||||
static int
|
static int
|
||||||
krt_get_attr(eattr *a, byte *buf, int buflen)
|
krt_get_attr(const eattr *a, byte *buf, int buflen)
|
||||||
{
|
{
|
||||||
switch (a->id)
|
switch (a->id)
|
||||||
{
|
{
|
||||||
|
@ -141,7 +141,7 @@ void krt_sys_copy_config(struct krt_config *, struct krt_config *);
|
|||||||
int krt_capable(rte *e);
|
int krt_capable(rte *e);
|
||||||
void krt_do_scan(struct krt_proto *);
|
void krt_do_scan(struct krt_proto *);
|
||||||
void krt_replace_rte(struct krt_proto *p, net *n, rte *new, rte *old);
|
void krt_replace_rte(struct krt_proto *p, net *n, rte *new, rte *old);
|
||||||
int krt_sys_get_attr(eattr *a, byte *buf, int buflen);
|
int krt_sys_get_attr(const eattr *a, byte *buf, int buflen);
|
||||||
|
|
||||||
|
|
||||||
/* kif sysdep */
|
/* kif sysdep */
|
||||||
|
Loading…
Reference in New Issue
Block a user