summaryrefslogtreecommitdiff
path: root/usr.sbin/bgpd/bgpd.h
AgeCommit message (Collapse)Author
2004-02-01Set sane default announce types according to the peer type. For IBGP useClaudio Jeker
announce all and for EBGP use announce self. OK henning@
2004-01-28implementHenning Brauer
tcp md5sig password so that the key can be given in ascii, what unfortunately limits the key space (cisco/juniper compat...) we keep the ability to specify the key in hex whithout these limits. help & ok markus
2004-01-28-struct peer_auth to store the SPIs, linked into struct peerHenning Brauer
-add pfkey_auth_establish(), which sets up flows for both directions and stores the SPIs in above struct -add (yet dummy) pfkey_auth_remove() with markus, ok claudio markus
2004-01-28pfkey_setkey: sockaddr -> bgpd_addr; ok claudioMarkus Friedl
2004-01-27log_ntoa is herewith condemned to death by claudio and yours trulyHenning Brauer
2004-01-27move strict kroute from in_addr_t for nexthop and prefix to struct in_addrHenning Brauer
ok claudio
2004-01-27constify log_addr and log_ntoa's returns, reminded by claudioHenning Brauer
2004-01-27use a struct bgpd_addr instead of sockaddr_in for peer_config->local_addr andHenning Brauer
->remote_addr for easier multiprotocol support ok claudio@
2004-01-27use SADB_GETSPI/UPDATE for setting tcpmd5 keys; ok henningMarkus Friedl
2004-01-26first cut at tcpmd5 setup seupport from within bgpd. works so far.Henning Brauer
with help from hshoexer@ and markus@ ok claudio@ hshoexer@ markus@
2004-01-23provide log_addr, which takes a struct bgpd_addrHenning Brauer
intended to replace log_ntoa in most cases becaus that is IPv4 only by design
2004-01-22provide a log_debug and use it in rde.c.Henning Brauer
with this, logit() can be a private function. we don't need to include syslog.h in bgpd.h any more; log.c and parse.y who need it include it directly now.
2004-01-22make log_peer_* take a struct peer_config instead of the session engineHenning Brauer
specific struct peer, and move their prototypes to bgpd.h to make it available to whole bgpd ok claudio@
2004-01-22provide log_warnx() and log_info()Henning Brauer
2004-01-22s/log_err/log_warn/Henning Brauer
it is like warn(3), nor err(3). so use a less confusing name.
2004-01-22an RTM_IFINFO message can mean a lot. it does not necessarily mean thatHenning Brauer
the status of the interface in terms of our nexthop validation changed; it might be something like a speed change that we don't care about. save the decided state for nexthop verificartion in struct kif, and only walk through the attached (connected) routes & report upwards if the state actually changed.
2004-01-18track interface type and baudrate as wellHenning Brauer
ok claudio@
2004-01-17keep track of interface link state and invalidate connected routes dependingHenning Brauer
on the interface in question if it has no link now, if you pull the network cable all nexthops beeing in a connected network on this interface get invalidated nicely. ok claudio@
2004-01-17Make it possible to announce own networks. In the RDE these prefixes areClaudio Jeker
attached to a pseudo peer and inserted like all other prefixes into the RIB. OK henning@
2004-01-17keep & track interface names as well, not only indicesHenning Brauer
2004-01-17allow the interfaces as bgpd sees 'em to be queried via imsgsHenning Brauer
2004-01-13Implement a max-prefix and a announce none | self | all neighbor statement.Claudio Jeker
The first limits the number of sent prefixes per peer the latter controls which prefix we do annouce to the neighbor. Another looks good from henning@
2004-01-13Better update error handling. Ensure that the session goes down andClaudio Jeker
ignore all queued updates after an error. Looks good henning@
2004-01-11use bgpd_addr in the nexthop tree; change nexthop_add/_remove accordinglyHenning Brauer
ok claudio@
2004-01-11Add to the IMSG_SESSION_UP message the local and remote address of theClaudio Jeker
peer session. This is needed to set the correct nexthop address in outgoing bgp UPDATES. OK henning@
2004-01-11when sending the nexthop status message, include the kroute that makes thatHenning Brauer
nexthop reachable. needed in the RDE for calculating the to-be-announced nexthop. ok claudio@
2004-01-11use struct bgpd_addr for nexthop and gateway in struct kroute_nexthopHenning Brauer
(and thus the nexthop messages between parent and RDE) ok claudio@
2004-01-11new message IMSG_CTL_SHOW_NEXTHOP: request/send lost of BGP nexthops andHenning Brauer
the result of their validity check
2004-01-09for IMSG_CTL_KROUTEs allow matching based on flags,Henning Brauer
add IMGS_CTL_KROUTE_ADDR to match the route for a given address ok claudio@
2004-01-09flag kernel routes whch are not conencted routes as static routes.Henning Brauer
that's what they are, and it makes matching on them easier.
2004-01-09get us a stateful imsg relaying framework, and the first receiver,Henning Brauer
IMSG_CTL_KROUTE, to have the kroute structs forming the fib sent to a control socket. ok claudio@
2004-01-08rename a few functions to further clarify thingsHenning Brauer
2004-01-06two new imsg types, IMSG_CTL_NEIGHBOR_UP and _DOWN, on their receival on theHenning Brauer
control socket the given neighbor session is sent a START / STOP signal. ok claudio@
2004-01-06allow holdtime and holdtime min to be configuered per peerHenning Brauer
ok claudio@
2004-01-062004Henning Brauer
2004-01-05Big overhaul of the mrt code.Claudio Jeker
Dumping of incomming bgp messages is now possible and dumping the (not yet) filtered updates works too. Per neighbor dumps are still missing. OK henning@
2004-01-05allow fib couple/decouple based on an imsg received on the control socketHenning Brauer
by the SE and passed on to the main process
2004-01-04-new imsg CTL_RELOADHenning Brauer
-upong receival in the SE forward to parent -make sending messages from SE to parent work for that (was not required before) -parent reacts to that just like a SIGHUP, reread config file
2004-01-04allow "show neighbor" to be limited to one specific neighborHenning Brauer
2004-01-03move some session specific stuff to session.h and make the few filesHenning Brauer
that need it include that
2004-01-03decouple the peer list from bgpd_config.Henning Brauer
so many parts of bgpd are not at all interested in the session specific peer structs... allows for some further cleaning
2004-01-03send an imsg as list end indicatorHenning Brauer
2004-01-02move the socket name #define to bgpd.h and get rid of bgpdctl*Henning Brauer
2004-01-01listen on a AF_LOCAL socket for imsgs too.Henning Brauer
only implemented type yet is IMSG_CTL_SHOW_NEIGHBOR which sends back the struct peer for all neighbors. will be used by bgpdctl
2004-01-01now that imsg_get uses bigger buffers, one read call can put more than oneHenning Brauer
imsg into the buffer. since imsg_get by definition only returns one imsg we missed the next imsg(s) until the next poll event on the socket in question, building up a queue on that socket. didn't show up as a problem yet... factor out imsg_read, which reads into the buffer. imsg_get now entirely operates on the buffers and does not read(2) itself. make all callers cope by calling imsg_read on poll events and calling imsg_get in a loop until all imsgs are processed.
2003-12-28redo the imsg readers to use bigger buffers and less read(2)s. should increaseHenning Brauer
performance even further. gets rif od struct imsg_readbuf; rename peer_read_buf to read_buf as that is more appropriate now.
2003-12-27keep a copy of the fd locally instead of passing it around all timeHenning Brauer
2003-12-27provide kroute_fib_couple and _decouple, pumping all bgp routes from theHenning Brauer
internal view to the kernel routing table respectively removing them all from the kernel routing table kroute_shutdown is now a simple wrapper to kroute_fib_decouple
2003-12-27implement "no fib-update" much coolerHenning Brauer
2003-12-26add option 'log updates' to log updates. ok henning@Jakob Schlyter