summaryrefslogtreecommitdiffstats
path: root/bgpd/bgp_btoa.c
diff options
context:
space:
mode:
authorwhitespace / reindent <invalid@invalid.invalid>2017-07-17 14:03:14 +0200
committerwhitespace / reindent <invalid@invalid.invalid>2017-07-17 14:04:07 +0200
commitd62a17aedeb0eebdba98238874bb13d62c48dbf9 (patch)
tree3b319b1d61c8b85b4d1f06adf8b844bb8a9b5107 /bgpd/bgp_btoa.c
parent*: add indent control files (diff)
downloadfrr-d62a17aedeb0eebdba98238874bb13d62c48dbf9.tar.xz
frr-d62a17aedeb0eebdba98238874bb13d62c48dbf9.zip
indent.py `git ls-files | pcregrep '\.[ch]$' | pcregrep -v '^(ldpd|babeld|nhrpd)/'` Signed-off-by: David Lamparter <equinox@opensourcerouting.org>
Diffstat (limited to 'bgpd/bgp_btoa.c')
-rw-r--r--bgpd/bgp_btoa.c485
1 files changed, 230 insertions, 255 deletions
diff --git a/bgpd/bgp_btoa.c b/bgpd/bgp_btoa.c
index be9344830..4faebb538 100644
--- a/bgpd/bgp_btoa.c
+++ b/bgpd/bgp_btoa.c
@@ -35,280 +35,255 @@
#include "bgpd/bgp_aspath.h"
/* privileges */
-static zebra_capabilities_t _caps_p [] =
-{
- ZCAP_BIND,
- ZCAP_NET_RAW,
- ZCAP_NET_ADMIN,
+static zebra_capabilities_t _caps_p[] = {
+ ZCAP_BIND, ZCAP_NET_RAW, ZCAP_NET_ADMIN,
};
-struct zebra_privs_t bgpd_privs =
-{
+struct zebra_privs_t bgpd_privs = {
#if defined(FRR_USER) && defined(FRR_GROUP)
- .user = FRR_USER,
- .group = FRR_GROUP,
+ .user = FRR_USER,
+ .group = FRR_GROUP,
#endif
#ifdef VTY_GROUP
- .vty_group = VTY_GROUP,
+ .vty_group = VTY_GROUP,
#endif
- .caps_p = _caps_p,
- .cap_num_p = array_size(_caps_p),
- .cap_num_i = 0,
+ .caps_p = _caps_p,
+ .cap_num_p = array_size(_caps_p),
+ .cap_num_i = 0,
};
enum MRT_MSG_TYPES {
- MSG_NULL,
- MSG_START, /* sender is starting up */
- MSG_DIE, /* receiver should shut down */
- MSG_I_AM_DEAD, /* sender is shutting down */
- MSG_PEER_DOWN, /* sender's peer is down */
- MSG_PROTOCOL_BGP, /* msg is a BGP packet */
- MSG_PROTOCOL_RIP, /* msg is a RIP packet */
- MSG_PROTOCOL_IDRP, /* msg is an IDRP packet */
- MSG_PROTOCOL_RIPNG, /* msg is a RIPNG packet */
- MSG_PROTOCOL_BGP4PLUS, /* msg is a BGP4+ packet */
- MSG_PROTOCOL_BGP4PLUS_01, /* msg is a BGP4+ (draft 01) packet */
- MSG_PROTOCOL_OSPF, /* msg is an OSPF packet */
- MSG_TABLE_DUMP /* routing table dump */
+ MSG_NULL,
+ MSG_START, /* sender is starting up */
+ MSG_DIE, /* receiver should shut down */
+ MSG_I_AM_DEAD, /* sender is shutting down */
+ MSG_PEER_DOWN, /* sender's peer is down */
+ MSG_PROTOCOL_BGP, /* msg is a BGP packet */
+ MSG_PROTOCOL_RIP, /* msg is a RIP packet */
+ MSG_PROTOCOL_IDRP, /* msg is an IDRP packet */
+ MSG_PROTOCOL_RIPNG, /* msg is a RIPNG packet */
+ MSG_PROTOCOL_BGP4PLUS, /* msg is a BGP4+ packet */
+ MSG_PROTOCOL_BGP4PLUS_01, /* msg is a BGP4+ (draft 01) packet */
+ MSG_PROTOCOL_OSPF, /* msg is an OSPF packet */
+ MSG_TABLE_DUMP /* routing table dump */
};
-static int
-attr_parse (struct stream *s, u_int16_t len)
+static int attr_parse(struct stream *s, u_int16_t len)
{
- u_int flag;
- u_int type;
- u_int16_t length;
- u_int16_t lim;
-
- lim = s->getp + len;
-
- printf ("attr_parse s->getp %zd, len %d, lim %d\n", s->getp, len, lim);
-
- while (s->getp < lim)
- {
- flag = stream_getc (s);
- type = stream_getc (s);
-
- if (flag & BGP_ATTR_FLAG_EXTLEN)
- length = stream_getw (s);
- else
- length = stream_getc (s);
-
- printf ("FLAG: %d\n", flag);
- printf ("TYPE: %d\n", type);
- printf ("Len: %d\n", length);
-
- switch (type)
- {
- case BGP_ATTR_ORIGIN:
- {
- u_char origin;
- origin = stream_getc (s);
- printf ("ORIGIN: %d\n", origin);
- }
- break;
- case BGP_ATTR_AS_PATH:
- {
- struct aspath *aspath;
-
- aspath = aspath_parse (s, length, 1);
- printf ("ASPATH: %s\n", aspath->str);
- aspath_free(aspath);
- }
- break;
- case BGP_ATTR_NEXT_HOP:
- {
- struct in_addr nexthop;
- nexthop.s_addr = stream_get_ipv4 (s);
- printf ("NEXTHOP: %s\n", inet_ntoa (nexthop));
- }
- break;
- default:
- stream_getw_from (s, length);
- break;
+ u_int flag;
+ u_int type;
+ u_int16_t length;
+ u_int16_t lim;
+
+ lim = s->getp + len;
+
+ printf("attr_parse s->getp %zd, len %d, lim %d\n", s->getp, len, lim);
+
+ while (s->getp < lim) {
+ flag = stream_getc(s);
+ type = stream_getc(s);
+
+ if (flag & BGP_ATTR_FLAG_EXTLEN)
+ length = stream_getw(s);
+ else
+ length = stream_getc(s);
+
+ printf("FLAG: %d\n", flag);
+ printf("TYPE: %d\n", type);
+ printf("Len: %d\n", length);
+
+ switch (type) {
+ case BGP_ATTR_ORIGIN: {
+ u_char origin;
+ origin = stream_getc(s);
+ printf("ORIGIN: %d\n", origin);
+ } break;
+ case BGP_ATTR_AS_PATH: {
+ struct aspath *aspath;
+
+ aspath = aspath_parse(s, length, 1);
+ printf("ASPATH: %s\n", aspath->str);
+ aspath_free(aspath);
+ } break;
+ case BGP_ATTR_NEXT_HOP: {
+ struct in_addr nexthop;
+ nexthop.s_addr = stream_get_ipv4(s);
+ printf("NEXTHOP: %s\n", inet_ntoa(nexthop));
+ } break;
+ default:
+ stream_getw_from(s, length);
+ break;
+ }
}
- }
- return 0;
+ return 0;
}
-int
-main (int argc, char **argv)
+int main(int argc, char **argv)
{
- int ret;
- FILE *fp;
- struct stream *s;
- time_t now;
- int type;
- int subtype;
- size_t len;
- int source_as;
- int dest_as;
- ifindex_t ifindex;
- int family;
- struct in_addr sip;
- struct in_addr dip;
- u_int16_t viewno, seq_num;
- struct prefix_ipv4 p;
-
- s = stream_new (10000);
-
- if (argc != 2)
- {
- fprintf (stderr, "Usage: %s FILENAME\n", argv[0]);
- exit (1);
- }
- fp = fopen (argv[1], "r");
- if (!fp)
- {
- fprintf (stdout,"%% Can't open configuration file %s due to '%s'.\n",
- argv[1], safe_strerror(errno));
- exit (1);
- }
-
- while (1)
- {
- stream_reset (s);
-
- ret = fread (s->data, 12, 1, fp);
- if (!ret || feof (fp))
- {
- printf ("END OF FILE\n");
- break;
+ int ret;
+ FILE *fp;
+ struct stream *s;
+ time_t now;
+ int type;
+ int subtype;
+ size_t len;
+ int source_as;
+ int dest_as;
+ ifindex_t ifindex;
+ int family;
+ struct in_addr sip;
+ struct in_addr dip;
+ u_int16_t viewno, seq_num;
+ struct prefix_ipv4 p;
+
+ s = stream_new(10000);
+
+ if (argc != 2) {
+ fprintf(stderr, "Usage: %s FILENAME\n", argv[0]);
+ exit(1);
}
- if (ferror (fp))
- {
- printf ("ERROR OF FREAD\n");
- break;
+ fp = fopen(argv[1], "r");
+ if (!fp) {
+ fprintf(stdout,
+ "%% Can't open configuration file %s due to '%s'.\n",
+ argv[1], safe_strerror(errno));
+ exit(1);
}
- /* Extract header. */
- now = stream_getl (s);
- type = stream_getw (s);
- subtype = stream_getw (s);
- len = stream_getl (s);
-
- printf ("TIME: %s", ctime (&now));
-
- /* printf ("TYPE: %d/%d\n", type, subtype); */
-
- if (type == MSG_PROTOCOL_BGP4MP)
- printf ("TYPE: BGP4MP");
- else if (type == MSG_PROTOCOL_BGP4MP_ET)
- printf ("TYPE: BGP4MP_ET");
- else if (type == MSG_TABLE_DUMP)
- printf ("TYPE: MSG_TABLE_DUMP");
- else
- printf ("TYPE: Unknown %d", type);
-
- if (type == MSG_TABLE_DUMP)
- switch (subtype)
- {
- case AFI_IP:
- printf ("/AFI_IP\n");
- break;
- case AFI_IP6:
- printf ("/AFI_IP6\n");
- break;
- default:
- printf ("/UNKNOWN %d", subtype);
- break;
- }
- else
- {
- switch (subtype)
- {
- case BGP4MP_STATE_CHANGE:
- printf ("/CHANGE\n");
- break;
- case BGP4MP_MESSAGE:
- printf ("/MESSAGE\n");
- break;
- case BGP4MP_ENTRY:
- printf ("/ENTRY\n");
- break;
- case BGP4MP_SNAPSHOT:
- printf ("/SNAPSHOT\n");
- break;
- default:
- printf ("/UNKNOWN %d", subtype);
- break;
- }
- }
-
- printf ("len: %zd\n", len);
-
- fread (s->data + 12, len, 1, fp);
- if (feof (fp))
- {
- printf ("ENDOF FILE 2\n");
- break;
- }
- if (ferror (fp))
- {
- printf ("ERROR OF FREAD 2\n");
- break;
- }
-
- /* printf ("now read %d\n", len); */
-
- if (type == MSG_TABLE_DUMP)
- {
- u_char status;
- time_t originated;
- struct in_addr peer;
- u_int16_t attrlen;
-
- viewno = stream_getw (s);
- seq_num = stream_getw (s);
- printf ("VIEW: %d\n", viewno);
- printf ("SEQUENCE: %d\n", seq_num);
-
- /* start */
- while (s->getp < len - 16)
- {
- p.prefix.s_addr = stream_get_ipv4 (s);
- p.prefixlen = stream_getc (s);
- printf ("PREFIX: %s/%d\n", inet_ntoa (p.prefix), p.prefixlen);
-
- status = stream_getc (s);
- originated = stream_getl (s);
- peer.s_addr = stream_get_ipv4 (s);
- source_as = stream_getw(s);
-
- printf ("FROM: %s AS%d\n", inet_ntoa (peer), source_as);
- printf ("ORIGINATED: %s", ctime (&originated));
-
- attrlen = stream_getw (s);
- printf ("ATTRLEN: %d\n", attrlen);
-
- attr_parse (s, attrlen);
-
- printf ("STATUS: 0x%x\n", status);
- }
- }
- else
- {
- source_as = stream_getw (s);
- dest_as = stream_getw (s);
- printf ("source_as: %d\n", source_as);
- printf ("dest_as: %d\n", dest_as);
-
- ifindex = stream_getw (s);
- family = stream_getw (s);
-
- printf ("ifindex: %d\n", ifindex);
- printf ("family: %d\n", family);
-
- sip.s_addr = stream_get_ipv4 (s);
- dip.s_addr = stream_get_ipv4 (s);
-
- printf ("saddr: %s\n", inet_ntoa (sip));
- printf ("daddr: %s\n", inet_ntoa (dip));
-
- printf ("\n");
+ while (1) {
+ stream_reset(s);
+
+ ret = fread(s->data, 12, 1, fp);
+ if (!ret || feof(fp)) {
+ printf("END OF FILE\n");
+ break;
+ }
+ if (ferror(fp)) {
+ printf("ERROR OF FREAD\n");
+ break;
+ }
+
+ /* Extract header. */
+ now = stream_getl(s);
+ type = stream_getw(s);
+ subtype = stream_getw(s);
+ len = stream_getl(s);
+
+ printf("TIME: %s", ctime(&now));
+
+ /* printf ("TYPE: %d/%d\n", type, subtype); */
+
+ if (type == MSG_PROTOCOL_BGP4MP)
+ printf("TYPE: BGP4MP");
+ else if (type == MSG_PROTOCOL_BGP4MP_ET)
+ printf("TYPE: BGP4MP_ET");
+ else if (type == MSG_TABLE_DUMP)
+ printf("TYPE: MSG_TABLE_DUMP");
+ else
+ printf("TYPE: Unknown %d", type);
+
+ if (type == MSG_TABLE_DUMP)
+ switch (subtype) {
+ case AFI_IP:
+ printf("/AFI_IP\n");
+ break;
+ case AFI_IP6:
+ printf("/AFI_IP6\n");
+ break;
+ default:
+ printf("/UNKNOWN %d", subtype);
+ break;
+ }
+ else {
+ switch (subtype) {
+ case BGP4MP_STATE_CHANGE:
+ printf("/CHANGE\n");
+ break;
+ case BGP4MP_MESSAGE:
+ printf("/MESSAGE\n");
+ break;
+ case BGP4MP_ENTRY:
+ printf("/ENTRY\n");
+ break;
+ case BGP4MP_SNAPSHOT:
+ printf("/SNAPSHOT\n");
+ break;
+ default:
+ printf("/UNKNOWN %d", subtype);
+ break;
+ }
+ }
+
+ printf("len: %zd\n", len);
+
+ fread(s->data + 12, len, 1, fp);
+ if (feof(fp)) {
+ printf("ENDOF FILE 2\n");
+ break;
+ }
+ if (ferror(fp)) {
+ printf("ERROR OF FREAD 2\n");
+ break;
+ }
+
+ /* printf ("now read %d\n", len); */
+
+ if (type == MSG_TABLE_DUMP) {
+ u_char status;
+ time_t originated;
+ struct in_addr peer;
+ u_int16_t attrlen;
+
+ viewno = stream_getw(s);
+ seq_num = stream_getw(s);
+ printf("VIEW: %d\n", viewno);
+ printf("SEQUENCE: %d\n", seq_num);
+
+ /* start */
+ while (s->getp < len - 16) {
+ p.prefix.s_addr = stream_get_ipv4(s);
+ p.prefixlen = stream_getc(s);
+ printf("PREFIX: %s/%d\n", inet_ntoa(p.prefix),
+ p.prefixlen);
+
+ status = stream_getc(s);
+ originated = stream_getl(s);
+ peer.s_addr = stream_get_ipv4(s);
+ source_as = stream_getw(s);
+
+ printf("FROM: %s AS%d\n", inet_ntoa(peer),
+ source_as);
+ printf("ORIGINATED: %s", ctime(&originated));
+
+ attrlen = stream_getw(s);
+ printf("ATTRLEN: %d\n", attrlen);
+
+ attr_parse(s, attrlen);
+
+ printf("STATUS: 0x%x\n", status);
+ }
+ } else {
+ source_as = stream_getw(s);
+ dest_as = stream_getw(s);
+ printf("source_as: %d\n", source_as);
+ printf("dest_as: %d\n", dest_as);
+
+ ifindex = stream_getw(s);
+ family = stream_getw(s);
+
+ printf("ifindex: %d\n", ifindex);
+ printf("family: %d\n", family);
+
+ sip.s_addr = stream_get_ipv4(s);
+ dip.s_addr = stream_get_ipv4(s);
+
+ printf("saddr: %s\n", inet_ntoa(sip));
+ printf("daddr: %s\n", inet_ntoa(dip));
+
+ printf("\n");
+ }
}
- }
- fclose (fp);
- return 0;
+ fclose(fp);
+ return 0;
}