summaryrefslogtreecommitdiff
path: root/usr.sbin/bgpctl/parser.c
AgeCommit message (Collapse)Author
2008-08-31Fix AS check in parse_community() -- well-known communities have the ASClaudio Jeker
part set to COMMUNITY_WELLKNOWN which is the same as USHRT_MAX. Figured out by Greg Skinner
2008-06-15Fix minor mem leak in case parse_addr() fails.Claudio Jeker
2008-06-11getcwd can return NULL on error, so handle that case properly.Tobias Stoeckmann
ok henning
2008-06-07teach the command lineparser about getopt style options after commandsHenning Brauer
use that for irrfilter mode. hints from theo a year ago, code by me a year ago, ok claudio a year ago
2007-10-14do not fallthroughTheo de Raadt
2007-05-31Use COMMUNITY_UNSET in bgpctl as well. This makes it possible to filterClaudio Jeker
on communities with 0 in them.
2007-05-28parse_asnum must return 0 (no match) if word is not an as number insteadHenning Brauer
of bitching and erroring out. worked so far because at the position it kicked in, only asnumor nothing were allowed
2007-04-23bgpctl needs to know about 4-byte AS numbers as well.Claudio Jeker
2007-04-06Implement "bgpctl show neighbor <peer> terse" this will print all statisticsClaudio Jeker
in an easily parseable form. This output can be used to implement SNMP MIBs or rrdtool/mrtg update scripts. OK henning@
2007-03-31some KNF, partially pt out by rivo nurges <rix@estpak.ee>Henning Brauer
2007-03-28add support for bgpctl show rib community <community>Henning Brauer
mostly from rivo nurges <rix@estpak.ee>, ok claudio
2007-03-07support "bgpctl show rib peer-as NN", From: Armin Wolfermann <aw@osn.de>Henning Brauer
ok theo
2007-03-03add irrfilter mode.Henning Brauer
generates bgpd filter rules from the Internet Routing Registry aka IRR aka the aut-num, as-set and route objects in the RIPE, ARIN, APNIC ... databases accessed via whois, using the Routing Policy Specificaion Language RPSL. implement the whois query interface, an RPSL parser (of course only the parts we need), recursive as-set resolver, prefixes per AS lookup, and an ouput module to make up the rules. work in progress, not ready for general consumption yet. import agreed by theo & claudio
2007-02-22minor KNF bits here tooHenning Brauer
2007-02-01Correct function name in err() message.Claudio Jeker
2007-01-31Switch from strtoul() to strtonum() making the code easier to read.Claudio Jeker
OK henning@
2007-01-25Correctly detect missing arguments. Same diff as in ospfctl. OK henning@Claudio Jeker
2006-08-23Extend show rib command. Following new options are added:Claudio Jeker
in: show the unfiltered input of a neighbor aka adj-rib-in out: show only the prefixes that are sent to a specified neighbor (adj-rib-out) neighbor <IP>: limit the output of the command to prefixes sent by the specified neighbor OK henning@ manpage with help by jmc@ but the show rib section needs some rework because it starts to be confusing. Actually the parser needs to get smarter.
2006-06-15Move the PREFIX token to the end of the list. The other tokens are moreClaudio Jeker
specific in what they match.
2006-06-14Use inet_net_pton() instead of inet_pton() so that it is possible to useClaudio Jeker
10/8 as prefix. OK henning@
2006-05-26change keyword for route refresh request to just refresh, discussed withHenning Brauer
claudio
2006-05-23support requesting route refresh from a neighborHenning Brauer
2006-03-22Detailed RIB output including communities. Detailed output is enabled viaClaudio Jeker
the "detailed" keyword. Currently only works for IP or prefix lookups like "bgpctl show rib detail 199.185.137.3". Requested by many, looks good henning@
2006-02-09inet_pton() may return 1, 0 or -1. Only 1 is success so check explicitlyClaudio Jeker
for it. OK henning@
2006-01-24introduce "bgpctl show summary terse", shows summary in an easy to parseHenning Brauer
format, intended for monitoring puposes. claudio ok
2006-01-03Show RIB statistics via "bgpctl show rib mem".Claudio Jeker
2006-01-03Don't use fatal() and friend in bgpctl. The log system does not work here.Claudio Jeker
2005-12-30Fix parse_prefix() for IPv4 addresses. Looks like fallout after IPv6 addition.Claudio Jeker
Now bgpctl show rib 129.128.5.191 works again.
2005-11-29tabs on empty linesClaudio Jeker
2005-11-02Add IPv6 support for the address and prefix parser. OK henning@Claudio Jeker
2005-09-20allow "show rib" to be limited to an address family tooHenning Brauer
2005-09-20for consistency, make "show network" and alias for "network show"Henning Brauer
2005-09-20allow the "show network" output to be limited to a given address familyHenning Brauer
2005-07-01fix breakage; if this proves to be wrong, will be fixed later. at leastFederico G. Schwindt
make build will work now.
2005-06-16use prefixlen2mask() instead of doing the bitshifting by hand; fixes theHenning Brauer
zero prefixlen case (32 bit shift on 32 bit val -> undefined result) spotted by Moritz Grimm and otto
2005-06-07In case strlcpy() indicates that a string was truncated fail with errx().Claudio Jeker
No need for other strange constructs. OK henning@
2005-06-06add support for a "family" token, allows to select address familiesHenning Brauer
2005-06-05grr, more whitespace KNF, more carrot for claudioHenning Brauer
2005-05-23Make it possible to dynamicaly add networks with attributes like communitiesClaudio Jeker
or metrics. Requested by beck@ OK henning@
2004-12-23allo the "bgpctl show neighbor " commands to take the neighbor descrHenning Brauer
too, claudio ok
2004-12-23must only try to match PEERDESC of nothing else matched, it's just a stringHenning Brauer
and will match almost everything...
2004-12-23allow "bgpctl neighbor" to take the peer's descr as argument as wellHenning Brauer
as its address so "bgpctl neighbor upstream1 clear" now works and you don't have to remember IPs claudio ok
2004-10-26ease the parser a bit.Henning Brauer
parse() now wants the first argv member to be the first argument it parses, i. e. it does not skip over argv[0] any more, caller has to account for that. the caller does the usual getopt followed by argv += optind; argc -= optind; dance so this is accounted for. in parse() don't use a seperate curarg counter, just in/decrease argv/argc claudio ok
2004-08-20add support for "bgpctl neighbor 1.2.3.4 clear", takes session down & up againHenning Brauer
claudio ok
2004-06-17print '<cr>' instead of '(nothing)' when we hit the end token in theHenning Brauer
context-dependent usage help
2004-05-21Make it possible to add, delete, flush and show network announcements.Claudio Jeker
OK henning@
2004-03-11typoHenning Brauer
2004-03-02show rib A.B.C.D and show rib A.B.C.D/N [all] support. Now the most importantClaudio Jeker
show commands are available. OK henning@
2004-02-26Implement "show rib" and "show rib <astype> <AS>" commands to dump theClaudio Jeker
RIB. OK henning@
2004-01-29KNFHenning Brauer