summaryrefslogtreecommitdiff
path: root/usr.sbin/bgpd
AgeCommit message (Collapse)Author
2009-07-20Include more info in the bgpctl show nexthop ctl message. Mainly add theClaudio Jeker
gateway used for non-connected routes. This info was missing all the time and often resulted in massive confusion when the nexthop selection choosed a bad nexthop.
2009-07-20On config reload errors free the list of ribs so that following reloadsClaudio Jeker
don't fail because of redefinition conflicts. This problem was reported by some people.
2009-07-20Flag added RIBs as F_RIB_NOFIB | F_RIB_NOEVALUATE in the no-eval case evenClaudio Jeker
though F_RIB_NOEVALUATE implicitly includes F_RIB_NOFIB.
2009-07-12Remove a semicolon at the end of an if statement so theJonathan Gray
test if a buffer isn't NULL before freeing has effect. This was harmless as it is in a failure case and free(NULL) is valid in userland.
2009-06-29Protect the other rde_send_kroute() with a F_RIB_NOFIB check.Claudio Jeker
2009-06-29Doh! Fix logic botch that disconnected the FIB from the Loc-RIB instead ofClaudio Jeker
making sure that other RIBs are not injecting routes into the FIB.
2009-06-29Unfuck mrt table dumps and plug a memory leak while there.Claudio Jeker
2009-06-25Add missing RTM_VERSION checks. Bad me, no cockies.Claudio Jeker
Tested and OK sthen@, OK henning@
2009-06-25incorrect .PATH setting, discovered with nicmTheo de Raadt
2009-06-22Log a warning when "enforce remote-as" is triggered. ok claudio@Stuart Henderson
2009-06-12Move prefixlen2mask and inet6applymask to util.c so that we can kill theClaudio Jeker
copies in bgpctl.
2009-06-08revert this change by eric@:David Gwynne
Make the imsg protocol network-safe. it might be network safe, but half the imsg based daemons on my firewalls dont run anymore.
2009-06-07Change the way fds passed over a socket are retreived on the receiving side.Eric Faurot
Currently the receiver fetches an imsg via imsg_get() and if he expects an fd, he then calls imsg_get_fd() to fetch the next fd queued on the imsgbuf from which the imsg came. This changes hides the fd queueing mechanism to the API user. When closing an imsg with an fd, the message is flagged so that the receiving end knows it must dequeue the fd in imsg_get() and return it with the imsg structure. This way there is no (less) possible screw up from imsg_get_fd() not being called directly after imsg_get() by the user. The retreived imsg is self-contained. ok pyr@, "I like that" henning@
2009-06-07Make the imsg protocol network-safe.Eric Faurot
ok pyr@
2009-06-07Initial documentation for the new stuffClaudio Jeker
2009-06-07First attempt at reload support for RIBs. There is some magic that I doClaudio Jeker
not fully understand but at least no flames are comming out of my test box anymore.
2009-06-06change the imsg header fields a bit to prepare for upcoming changes.Eric Faurot
add a flag field, use u_int32_t for pid_t and extend type to 32 bits for padding. ok pyr@
2009-06-06Reorder IMSG types to put the "exported" ones further down so they do notClaudio Jeker
change that often anymore.
2009-06-06Fix bgpctl show rib prefix/len command. Problem reported by Insan Praja.Claudio Jeker
2009-06-06Get ready for including imsg.h from a lib, when it comes along.Pierre-Yves Ritschard
2009-06-06sync bgpd/bgpctl with the common imsg code, making it lib ready as well.Eric Faurot
ok claudio@ pyr@
2009-06-06Make it possible to select the RIB that a show command should show.Claudio Jeker
2009-06-06Some preliminary filter magic to support multiple RIBs on the filters.Claudio Jeker
It is ugly but does the trick for now. Filters will be rewritten anyway. The rib specifier only makes sense on from rules. e.g. deny rib OMG from any
2009-06-06Only the main Loc-RIB should update the FIB for now. So introduce aClaudio Jeker
F_RIB_NOFIB flag and apply it on all RIBs that are not F_RIB_NOEVALUATE.
2009-06-06Only generate updates for peers that are member of the RIB that update isClaudio Jeker
comming from.
2009-06-06Minor cleanup.Claudio Jeker
2009-06-05rtm->rtm_hdrlen conversionChris Cappuccio
ok claudio@, henning@
2009-06-05Don't call the main RIB DEFAULT but Loc-RIB. Makes more sense.Claudio Jeker
2009-06-05Adjust print_config to all the stuff added in the last days.Claudio Jeker
2009-06-05Make it possible to bind peers to a specified RIB. Now only filters andClaudio Jeker
bgpctl are missing to have full support of multiple RIBs.
2009-06-05Change the way we do mrt dumps in the rde (from the retarded only one dumpClaudio Jeker
possible to as many as you like). The mrt dumps are now done with the same tree walking code as the control messages. Makes the RDE respond a bit faster and use less memory while dumping.
2009-06-04Make mrt understand alternate RIB plus remove some other static rib references.Claudio Jeker
There is still a problem with the mrt dumps because we only allow one in the RDE. This needs some additional work.
2009-06-04Implement rib_find and add a rib id to struct rde_peer.Claudio Jeker
2009-06-04Export networks to be redistributed into all ribs for now.Claudio Jeker
2009-06-04Add "rde rib <name>" to the config and allow the rde to use these other RIBs.Claudio Jeker
Still a bit hackish, reload is missing and printconf as well. Looks good h@
2009-06-04Document that we accept ASPLAIN format 32-bit ASN.Stuart Henderson
2009-06-03Allocate all rib contextes for tree walks and don't use static stack memory.Claudio Jeker
This will make interruptable walks a lot easier.
2009-06-03Initial stab at rib_free() until now unused.Claudio Jeker
2009-06-03Better way to allocate new RIBs.Claudio Jeker
2009-06-03Make prefix_destroy more generic and use it in prefix_remove this is possibleClaudio Jeker
because path_remove was changed to remove the prefixes in a slightly different way.
2009-06-02Make show rib as and show rib community use the same dump code as the otherClaudio Jeker
show rib commands. This makes the output sorted by prefix and not some rather randomly output.
2009-06-02Move the rest of the rib dump functions into rde_rib.c where it belongs.Claudio Jeker
2009-06-01Use only one list to queue the dump contextes on. Use the list in structClaudio Jeker
rib_context instead of the ctl specific rde_dump_ctx to make it more general.
2009-06-01Do not call the upcall twice on some prefixes. Move the upcall back toClaudio Jeker
where it was beforhands.
2009-06-01Holy simplification batman. Use the per rib entry flags to lock entriesClaudio Jeker
when interrupting rib dumps and now we no longer need evil RB magic to find the next entry on restart.
2009-06-01Instead of storing a pointer to the RIB head in the RIB element use thatClaudio Jeker
space for a flags field and the RIB id. In the end bgpd will be able to lock RIB elements and therefore make it possible to interrupt all tree walks.
2009-05-30Only use a single tree for all address families. There is no need for multipleClaudio Jeker
trees and the rib trees are also not split. Looks good henning@
2009-05-27Move update and withdraw code into own functions to simplify the necessaryClaudio Jeker
changes to make multiple RIB functional. Also change the way we account the prefixes per peer (for maxprefix check). Every prefix that was added to any RIB is counted. OK henning@
2009-05-27add an option to change the "connect-retry" timer which defaults to 120s.Reyk Floeter
this can be used to decrease the failover time in specific carp'ed IBGP setups. ok henning@
2009-05-25In dispatch_rtmsg_addr() don't fatal on missing multipath deletes. Not 100%Claudio Jeker
sure why it happens but it is not a fatal condition. A warning should still be logged because it is not good to miss updates.