summaryrefslogtreecommitdiff
path: root/usr.sbin/bgpd/session.h
AgeCommit message (Collapse)Author
2004-07-042 more file descriptors for each RDE and SE inherited from the parentHenning Brauer
we should close
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-09move to a dynamically allocated struct pollfd array.Henning Brauer
we used a ststic one with OPEN_MAX entries, which is a rather arbitary limit as OPEN_MAX is _not_ the max # of open fds we can have, but just a default for that setting. in the same move we have to allocate the peer_l array, basically there for pfd-index to peer pointers to prevent peer list scans all time, dynamiccaly to. we overallocate a little and use that reserve until we have to realloc again later to prevent reallocs for every single control connection or a single flapping peer. help & ok claudio
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-28detect absence of PF_KEY interface and/or the TCP_MD5SIG setsockoptsHenning Brauer
at runtime and disable said subsystems if so. helps the guys porting bgpd to $otherBSD, and is actually the right thing to do. claudio ok
2004-05-08provide log_sockaddr, which uses getnameinfo(), and use it inHenning Brauer
log_conn_attempt
2004-05-08remove unused argument to control_dispatch_msg(), lintHenning Brauer
2004-04-28rename sock to fdTheo de Raadt
2004-04-28if a peer follows the extremely misgiuded path that the RFCs just barely allowHenning Brauer
to send a NOTIFICATION and thus ternminating the session when it sees a capability it doesn't support (who would guess: zebra does so), parse the data section of the notifcication to find out what what capabilties it didn't like and do not advertise them the next time the session gets up. In case we get a notification about unsupported capabilities with an empty data part (don't ask for RFCs... and guess who does that), disable capabilty announcement alltogether. claudio ok
2004-04-28keep track of which ipsec/md5 SAs we inserted - ESRCH on blind removalHenning Brauer
otherwise, markus ok
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-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-26load ipsec SAs into the kernel and enable them.Markus Friedl
2004-04-26announce multiprotocol capabilities - IPv4 multicast for nowHenning Brauer
this implies ourgoing capabilities annoucnement is there and just needs the values to be filled in for other shitz we'll support soonish
2004-04-25Remove the no longer needed configure stuff in RDE. The peer list needs noClaudio Jeker
longer to be synced between parent, SE and RDE. OK henning@
2004-04-16let getpeerbyip work for both v4 and v6Henning Brauer
2004-04-16make log_conn_attempt work in an address family independent matterHenning Brauer
2004-04-13parse the BGP Multiprotocol Extensions (RFC 2858) capabilities and store inHenning Brauer
the peer struct, claudio ok
2004-03-11Shutdown the RDE cleanly on exit. Plug some memleaks. OK henning@Claudio Jeker
2004-03-11Free unneeded mrt lists in SE and on exit. OK henning@Claudio Jeker
2004-03-10pass a pointer to the network list as well to session_main so we can free()Henning Brauer
the members after fork
2004-03-10pass a pointer to the filter rule list to session_main() so we can free()Henning Brauer
the list entries and the head there after forking
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-05new error code "unsupported capability" from RFC 3392Henning Brauer
2004-03-05add a parser for the capability announcements using the OPEN message as perHenning Brauer
RFC 3392. we don't support any capability yet but this at least avoids one session teardown and reestablishment when talking to peers which do support capability announcement (as in: basically any) and we'll start supporting some soon.
2004-03-01Forgotten in the last commit. Sync printconfig and parser.Claudio Jeker
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-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@
2004-02-09print networks tooHenning Brauer
2004-02-09print more fluffHenning Brauer
2004-02-08factor out functions to print the configuration (rules only for now)Henning Brauer
will become more and needed by bgpctl too
2004-02-07send filter rules to the RDE on reloads, help & ok claudioHenning Brauer
2004-02-06initial cut at the filtering language.Henning Brauer
structs etc to describe a rule, filter rule list management parser groks filter defs now. claudio ok, discussion & help also jakob theo
2004-01-28we need a pfkey_init the gets us a PF_KEY socket before we drop privsHenning Brauer
eases other code quite a bit in exchange...
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-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-22log_peer_err -> log_peer_warnHenning Brauer
log_peer_errx -> log_peer_warnx
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-11clean up setting the poll events a bit. no functional changes.Henning Brauer
2004-01-11once the tcp session is established use gettsockname/getpeername to getHenning Brauer
local/remote sockaddr and store it in the peer struct ok claudio@
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-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-06lower the initial value for the IdleHold timer from 90 to 30 seconds.Henning Brauer
90 is too much, and now that the punishment works as intended oscillating peers get slowed down by that
2004-01-06properly punish oscillating neighbors.Henning Brauer
previously we were to forgiving so the punishment didn't kick in as intended
2004-01-06rename our StartTimer to IdleHoldTimer as per draft-ietf-idr-bgp4-23Henning Brauer
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-04keep seperate message counters for open/update/keepalive/notificationHenning Brauer
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