summaryrefslogtreecommitdiff
path: root/usr.sbin/ospfd
AgeCommit message (Collapse)Author
2005-05-12Fix multiple bugs in if_act_elect(). In some cases DR were set wronglyClaudio Jeker
because of a stupid typo that I fixed in rev. 1.6 but forgot to fix the bug I introduced before because of that typo. Also reset the DR/BDR fields of iface->self when going to round two. Without the reset it is e.g. not possible to drop from DR to BDR. Issue found and patch tested by Stephen Marley OK norby@
2005-05-12If activly connected to more than one area set B flag in the self-originatedClaudio Jeker
router LSA. To do that correctly we need to track the number of active neighbors for each area. If the routers ABR status changes all router LSA need to be updated via orig_rtr_lsa_all(). OK norby@
2005-05-11Add some newlines to make the code easier to follow. No functional change.Claudio Jeker
2005-05-10Do no longer force the default router priority to 0.Claudio Jeker
Ospfd can be used as DR or BDR since quite some time so there is no need to make ospfd ineligible as DR or BDR.
2005-05-09Force all as-external routes to point to the router announcing them byClaudio Jeker
setting the forward address to 0.0.0.0. This is needed as we currently fail to check if the real nexthop is covered by an ospf route -- uncovered routes are ignored by the other routers. OK norby@ tested and requested by Philip Olsson
2005-05-08Keep track of the req list in the RDE. The RFC requires us to check forClaudio Jeker
silly updates while fetching the table from the other server. OK norby@
2005-05-05Fix a stupid typo in the #if 0 block in spf_calc() and start using that codeClaudio Jeker
block. The idea is to ignore nodes that are already part of the SPF tree as soon as possible. OK norby@
2005-05-02use setres[ug]id for privilege dropping; ok norby@Damien Miller
2005-05-01spellingDavid Krause
2005-04-27Sort struct msgbuf by size. From Alexander von Gernler via henning@Claudio Jeker
2005-04-26unify shared code a bit again to make future syncs easierHenning Brauer
From: Alexander von Gernler <grunk@pestilenz.org>
2005-04-25Call if_init() later and for each interface separately.Claudio Jeker
Move code from if_act_start() to if_init() that needs to be called only once per interface. Especially event_set should be called only once as it initializes struct event and so may cause corruption of the event queue if called twice.
2005-04-25Move the creation of the ospf_socket from if_init() directly into ospfe().Claudio Jeker
This makes it possible to call if_init() at a much later time.
2005-04-25Call if_init() in ospfe only, neither the rde nor the parent need it.Claudio Jeker
2005-04-25Change order of execution in if_act_reset(). First notify all neighborClaudio Jeker
that the interface gets reset (NBR_EVT_KILL_NBR) and than clear all timers of the interface. The nbr_fsm() may start some of the timers which has strange results. Tested by Philip Olsson.
2005-04-22RFC tells that the MTU in the db exchange packet may not be bigger thanClaudio Jeker
the interface MTU but it may be smaller. This makes Philip Olssons extreme networks summit24 happy as this stupid thing sets the MTU to 0. testing Philip Olsson, OK norby@
2005-04-19Don't call event_set() before event_init().Claudio Jeker
OK norby@
2005-04-17Use fatalx() instead of ospfd_shutdown() if kr_init() fails.Claudio Jeker
OK henning@
2005-04-16Set F_STATIC flag earlier else the default route will end up as non-static.Claudio Jeker
2005-04-14Some format string cleanup. OK deraadtChad Loder
2005-04-12spellingTheo de Raadt
2005-04-12Support for self originated AS-external LSA.Claudio Jeker
With "redistribute (static|connected|default|none)" it is possible to tell ospfd which external routes should be announced. Connected routes will be announced only if there is no corresponding interface configured, in that case the prefix is not external. Adding and removing of announced prefixes are done automaticaly. OK norby@
2005-04-12spacesClaudio Jeker
2005-04-06Add check for key lengths. Based on diff from Jason Ackley.Esben Norby
Reworked by me. ok claudio@
2005-04-06When deleting LSA because they hit max age (IMSG_LS_MAXAGE) check if theClaudio Jeker
current LSA in the database was updated while max age LSA was flooded out. This solves a reace condition where self originated LSA got removed because an other server sent an update with age set to MAXAGE. OK norby@
2005-04-05Use the dynamic buffer API for packet generation and sending.Claudio Jeker
OK norby@
2005-04-05Set errno in case buf_realloc() fails because the limit of the buffer isClaudio Jeker
reached.
2005-04-04On auth crypt verify not only the main key is allowed but all configured keys.Claudio Jeker
This makes changing keys a piece of cake -- if ospfd would support reloads. Found and patch from Jason Ackley.
2005-03-31Better crypt sequence number initialization.Esben Norby
Suggested by henning@ ok henning@
2005-03-31Add support for crypt authentication (MD5).Esben Norby
ok and input claudio@
2005-03-31and some includes too much here as well, grunkHenning Brauer
2005-03-29The RFC never mentions anything about transfer, this should be transmit.Esben Norby
From Jason Ackley (thanks). ok claudio@
2005-03-26explciitely 0-initialize pidsHenning Brauer
2005-03-26Prototypes where moved to ospfd.h so no need to keep them here.Claudio Jeker
2005-03-26Implement the IMSG_CTL_IFINFO bits correctly. This is needed forClaudio Jeker
"ospfctl show fib interface". OK henning@ norby@
2005-03-26kroute.c cleanup, simplify code and remove unused functions.Claudio Jeker
OK henning@
2005-03-26fix a little race on SIGCHLD where we must delay the claenup untilHenning Brauer
we invalidated all child pids in case both were killed in a very short time, spotted by and diff from Michael Knudsen <e@molioner.dk>, claudio ok
2005-03-25what is an ospfe engine?Henning Brauer
2005-03-25extra char in getopt string, Michael Knudsen <e@molioner.dk>Henning Brauer
2005-03-23mini KNFClaudio Jeker
2005-03-23The interface name in struct sockaddr_dl may not be nul terminated andClaudio Jeker
so the strlcpy() will copy to much. Use sa_nlen instead with some additional logic. This fixes a problem where interfaces where not found. OK norby@
2005-03-23prefixlen2mask() should return a network byte order result as it does implyClaudio Jeker
by using an in_addr_t as return type. It simplyfies also the usage as in most cases the mask is used with a struct in_addr address which is also network byte order. Add prototypes of prefixlen2mask() and mask2prefixlen() to ospfd.h as it is used or will be used at different places. OK norby@
2005-03-23remove now osolete comment, from a mail exchange withHenning Brauer
Alexander von Gernler <grunk@pestilenz.org>
2005-03-23grow receive buffer on the routing socket, from bgpdHenning Brauer
2005-03-23explicitely initialize opt, from bgpdHenning Brauer
2005-03-23ssize_t -> size_t, from ntpd, there from Alexander von GernlerHenning Brauer
2005-03-22Remove bool cruft.Esben Norby
ok claudio@
2005-03-17Handle the retransmission queues correctly. Mainly iface state DROTHERClaudio Jeker
needs to be handled specially because the backup DR does not send acks and so his retransmission queue fills up and does not get cleared. Also implement the retransmission timeout correctly. OK henning@ norby@ deraadt@
2005-03-17Fix an access after free. It is not allowed to use a RB_REMOVE inside of aClaudio Jeker
RB_FOREACH. OK norby@ deraadt@
2005-03-15Add control messages for the show fib commands.Claudio Jeker
OK norby@ deraadt@