--- embedaddon/quagga/bgpd/bgp_aspath.h 2012/02/21 17:26:12 1.1 +++ embedaddon/quagga/bgpd/bgp_aspath.h 2016/11/02 10:09:10 1.1.1.4 @@ -58,6 +58,7 @@ struct aspath /* String expression of AS path. This string is used by vty output and AS path regular expression match. */ char *str; + unsigned short str_len; }; #define ASPATH_STR_DEFAULT_LEN 32 @@ -70,8 +71,10 @@ extern struct aspath *aspath_dup (struct aspath *); extern struct aspath *aspath_aggregate (struct aspath *, struct aspath *); extern struct aspath *aspath_prepend (struct aspath *, struct aspath *); extern struct aspath *aspath_filter_exclude (struct aspath *, struct aspath *); +extern struct aspath *aspath_add_seq_n (struct aspath *, as_t, unsigned); extern struct aspath *aspath_add_seq (struct aspath *, as_t); extern struct aspath *aspath_add_confed_seq (struct aspath *, as_t); +extern int aspath_cmp (const void *, const void *); extern int aspath_cmp_left (const struct aspath *, const struct aspath *); extern int aspath_cmp_left_confed (const struct aspath *, const struct aspath *); extern struct aspath *aspath_delete_confed_seq (struct aspath *); @@ -95,6 +98,7 @@ extern unsigned int aspath_count_hops (struct aspath * extern unsigned int aspath_count_confeds (struct aspath *); extern unsigned int aspath_size (struct aspath *); extern as_t aspath_highest (struct aspath *); +extern as_t aspath_leftmost (struct aspath *); extern size_t aspath_put (struct stream *, struct aspath *, int); extern struct aspath *aspath_reconcile_as4 (struct aspath *, struct aspath *);