summaryrefslogtreecommitdiff
path: root/usr.sbin/bgpd/bgpd.h
AgeCommit message (Collapse)Author
2004-09-28Add prepend-neighbor feature. Prepend the remote-as n times similar toClaudio Jeker
prepend-self. Only for incomming UPDATEs. OK henning@
2004-09-16imsg type is really an enum imsg_type and not an intHenning Brauer
2004-09-16imsg API cleanup:Henning Brauer
-kill imsg_compose_pid, imsg_compose_fdpass and imsg_create_pid -extend the original imsg_compose/_create API to take pid & fd too -make imsg_compose do imsg_create + imsg_add + imsg_close instead of duplicating the code -adjust all callers to the new API ok claudio
2004-08-20add IMSG_CTL_NEIGHBOR_CLEAR, takes a session down and restarts it,Henning Brauer
claudio ok
2004-08-10switch nexthop in struct filter_set form struct in_addr to struct bgpd_addrClaudio Jeker
OK henning@
2004-08-06Monster diff to get one step closer to IPv6 support.Claudio Jeker
Cleanup path attribute handling. First of all kill struct attr_flags, all those infos are now in struct rde_aspath. Second move attribute parser functions into rde.c, rde_attr.c is shared between bgpd and bgpctl. Third reimplementation of the nexthop handling. Make it IPv6 ready and fix some major bug relating to "set nexthop". henning@ OK if it breaks nothing
2004-08-05rename and move prefix_equal() to prefix_compare() which returns -1, 0, 1Claudio Jeker
similar to memcmp() and all other compare functions in bgpd. OK henning@
2004-07-30Add new announce type "default-route" which will only announce the defaultClaudio Jeker
route to the specified neighbor. Idea and OK henning@
2004-07-27do not define the prefix, prefixlen and community structs used forHenning Brauer
the filters from within struct filter_match but explicit; no functional change
2004-07-05implement "set nexthop blackhole" and "set nexthop reject"Henning Brauer
blackhole/reject routes will be entered to the kernel for matching ones. this is intended to be used with the Cymru Bogon Route Server Project (http://www.cymru.com/BGP/bogon-rs.html) and similar services, claudio ok
2004-07-05fix a few KNF falloutsHenning Brauer
2004-07-03Switch mrt dumping to fd passing. This gives some speed up when extensiveClaudio Jeker
dumping is done. Acctually mrt dumps were broken because of the fd passing. The nice side effect is a much cleaner code, especially in the parent process. OK henning@
2004-06-25provide mask2prefixlen6() and prefixlen2mask6()Henning Brauer
2004-06-23Support rfc 3765 which adds a new well known community NOPEER. OK henning@Claudio Jeker
2004-06-22Make the RDE IPv6 ready missing is the message handling. The internalClaudio Jeker
prefix tree changed form a hash table to a per AF RB tree. OK henning@ some ideas are from Brent Graveland.
2004-06-22introduce kroute6, which will be used to build a seperate v6 tableHenning Brauer
(smashing them into the v4 table would raise the memory requirements far too much), and make kroute_nexthop (where we are not under such memory pressure, you don't have a hundred thousand nexthops) v4/v6. change existing callers to use the v4 part, claudio ok
2004-06-20at least somewhat consistently name the TAILQ_ENTRYs... this confused meHenning Brauer
more than once
2004-06-20implement file descriptor passing in the imsg/msgbuf framework, and useHenning Brauer
it to let the main process to prepare new listening sockets (socket() and bind()) on behalf of the session engine, which of course cannot bind() to ports < 1024 any more once it dropped privileges. with some help from theo, claudio ok
2004-06-06rework bgpd's handling of listening sockets. instead of one for eachHenning Brauer
supported address familiy, keep a tailq of an arbitary number of them. the new struct listen_addr contains the sockaddr and the fd. this fixes quite some nasty behaviour which was a consequence of the previous model. looks right deraadt@, and discussed with claudio
2004-05-21RFC 2796 bgp route reflector support. This is very useful in conjunctionClaudio Jeker
with templates. looks good, go for it henning@
2004-05-21Add support for dynamic announcements. Usefule to annouce temporaryClaudio Jeker
blackhole routes or to make network announcements dependent on a external state (e.g. for carp setups) OK henning@
2004-05-17extend filter language to allow basic setting of COMMUNITIES attribute.Damien Miller
ok claudio@
2004-05-07add a filter option to dump prefixes learned in UPDATEs into a PF table,Damien Miller
intended for building realtime BGP blacklists (e.g. with spamd); ok claudio & henning
2004-05-06we need a seperate field for the md5 key len, can't use strlen, noticedHenning Brauer
by markus some time ago
2004-05-06scale socket buffer sizes (and thus window size) up to up to 64k,Henning Brauer
but only of tcp md5sig or ipsec is in use. excellent idea by ryan some time ago, claudio and theo agree
2004-04-29sock -> fd; ok henningTheo de Raadt
2004-04-28allow ah/esp spec with IKE, markus okHenning Brauer
2004-04-28Enable route refresh in the RDE. Now peer can request route refreshes.Claudio Jeker
OK henning@
2004-04-28spacingHenning Brauer
2004-04-28prefix the auth related defines by AUTH_, we had a name clash, markus okHenning Brauer
2004-04-27rename the ipsec struct to auth, move all tcpmd5 related fields in there, andHenning Brauer
add a generic "method" field that expresses what method (none/md5sig/ipsec manual/ipsec ike) is in use markus ok
2004-04-27parser parts for ipsec ike, markus okHenning Brauer
2004-04-27initial route refresh support per RFC2918Henning Brauer
process incoming route refresh request and notify the RDE not advertised via capabilities yet, claudio ok
2004-04-26need keylen too, markusHenning Brauer
2004-04-26structs for ipsec, with markusHenning Brauer
2004-04-25add "neighbor cloning", allowing you to specify a prefix and prefixlengthHenning Brauer
instead of the neighbor's IP address. WHen a connection comes in matching that mask we clone the neighbor spec. IPv6 match code by itojun, rde feeding by claudio, ok claudio
2004-04-24some rather boring windows talk at cansecwest made me hack initial supportHenning Brauer
for IPv6 transport parts based on a diff from Brent Graveland ok itojun@ claudio@
2004-04-10move the API_* and SAFI_* defines to where they belongHenning Brauer
2004-03-11Add basic support for communities. Currently it is only possible to filterClaudio Jeker
on communities, e.g match from any community 24640:* set localpref 666 OK henning@
2004-03-10implement framework to announce capabilities in the open messages we send.Henning Brauer
this includes handling "unsupported optional parameter" notifications from the peer and retrying without capability announcement. claudio ok
2004-03-02flesh out the address and prefix parsing, include v6 code, but reject v6Henning Brauer
upwards, claudio ok
2004-03-02Framework for rib lookups by prefix. OK henning@Claudio Jeker
2004-03-01Make it possible to diable the decision process. This is a feature only usefulClaudio Jeker
for route-collectors. OK henning@
2004-02-26show rib infrastructure. At least full dumps and per as dumps. Per prefixClaudio Jeker
dump need some more work. OK henning@
2004-02-26Implement "enforce neighbor-as yes|no" which is by default on for ebgpClaudio Jeker
neighbors. While doing that check also that the nexthop is valid (not class D or E and not in 127/8 range). Kill some TODO and XXX and rename the british neighbour to neighbor as used everywhere else. OK henning@
2004-02-26Add per netwok definition filter sets. So you can now useClaudio Jeker
network 10.0.0.0/8 set localpref 100 OK henning@
2004-02-24Enhance filters. prefixlen knows now 8-24 and 8><24. It is possible to useClaudio Jeker
prefix 10.0.0.0/8 prefixlen >= 8 and set localpref 100 can be set on a per neighbor basis. OK henning@
2004-02-16add scope_id for v6 to struct bgpd_addrHenning Brauer
ok itojun, grumbling ok claudio
2004-02-16Extend imsg API so that messages can be composed on the fly. In the RDE itClaudio Jeker
happens often, that imsg consists of multiple objects. OK henning@
2004-02-16Make the path attribute handling more RFC conformant. Also move theClaudio Jeker
parser to rde_attr.c where it belongs. Still missing: better aspath loop detection (should be done afterwards) and some basic error checking for optional attributes. OK henning@