summaryrefslogtreecommitdiff
path: root/usr.sbin/ospfd/ospfe.h
AgeCommit message (Collapse)Author
2006-03-13The return value of the start/stop timer functions is almost never checked.Claudio Jeker
Switch them to void functions and check if evtimer_add/del fails -- in which case we fatal() as there is no useful way to recover in such an event. OK norby@
2006-03-09Move *_name functions to log.c and use these for both ospfd and ospfctl.Claudio Jeker
Stuff that is only used in ospfd debug messages is simplified. OK norby@
2006-03-09Switch send_packet from char * to void * and from int to size_t. The functionClaudio Jeker
is now similar to sendto et al.
2006-02-19Keep track of the duration of our relationships with neighbors.Esben Norby
Displayed in "ospfctl show neighbor". ok claudio@
2006-02-19Do not traverse the entire LS retransmission list to figure out how manyEsben Norby
are present on it. ok claudio@
2006-02-19Do not allocate a new chunk of memory every time we receive a packet.Esben Norby
This should have been fixed ages ago since it really improves the performance of ospfd. ok claudio@
2006-02-02zap md_list_empty, found by lint.Esben Norby
ok claudio@
2005-12-29Instead of a simple timer per neighbor for the LS retransmition list useClaudio Jeker
a timewheel. All LSA updates are now first added to the queue and sent out later. This makes it possible to cluster multiple LSA updates into on OSPF packet. This gives a massive speedup when large databases need to be synced. Tested and OK norby@
2005-12-15Simpify iface_del() and nbr_del(). make them void funtions as they can not failClaudio Jeker
and do not remove a element twice in iface_del(). OK norby@
2005-12-04Increase the receive buffer of the raw socket.Esben Norby
Prevents some of the retransmitting during bulk ls update transfers. ok claudio@
2005-11-04Remove unused variable link_state in struct nbr.Claudio Jeker
2005-10-18Cleanup interface code a minimal bit. There is no need for if_shutdown(),Claudio Jeker
especially it got called in the wrong place. OK norby@
2005-05-26Remove unused neighbor state.Esben Norby
ok claudio@
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-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-05Use the dynamic buffer API for packet generation and sending.Claudio Jeker
OK norby@
2005-03-31Add support for crypt authentication (MD5).Esben Norby
ok and input claudio@
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-07Track interface state (up/down) and media status. Simplify the code a bitClaudio Jeker
by using the kif/kroute info while allocating interfaces.
2005-02-10Work around a timing issue in the db exchange phase. The DB descriptionClaudio Jeker
packets comming from the net are looped through the RDE and may get delayed because of this. The result is that the neighbor FSM ends in state FULL instead of LOADING and so the LSDB is not correctly synchronized. Issue found by norby@ OK norby@
2005-02-09NBR_STA_ACTIVE is just ~NBR_STA_DOWN instead of some hardcoded magic.Claudio Jeker
2005-02-09Rework of self originated LSA. First of all the code to generate the LSAClaudio Jeker
is rewritten to use the dynamic buffer api introduced lately. Add missing parts in the RDE to merge these LSA originated from the OE into the LSDB with correct seq_num, etc. Add hooks to the neighbor and interface fsm so that the LSA get updated if needed. This is not perfect, still many things are missing. OK norby@
2005-02-02KNFHenning Brauer
2005-01-28Change my email address to the OpenBSD one since Ericsson has nothing toEsben Norby
do with this software, just happend to be my only valid email address at the time.
2005-01-28Welcome ospfdClaudio Jeker
started by Esben Norby some time ago by using the imsg/three process framework of bgpd. He implemented the basic concept plus the ospf finite state machines. Later I joined and helped him cleanup, debug and extend his work. Right now it is not particularly useful, major parts are still missing but is imported to allow more people to work on it. status: The basic protocol works for broadcast networks and the LS database is synchronized and updated. It is not possible to be DR or BDR on a network and other interface types like point-to-point are not yet supported. The shortest path tree is not calculated and so no routing information is exchanged with the kernel FIB. Not yet connected to the builds. OK henning@