Age | Commit message (Collapse) | Author |
|
after fixing many use-after-free errors a couple of days ago.
Most cases -- adding/removing of interfaces, adding/removing of areas --
seem to work. Still merge_config() is a behemoth of a function and some
edge cases may not be covered correctly (yet).
OK norby@ pyr@
|
|
is needed for upcomming reload support -- it can happen that a message to
a just deleted neighbor is still pending.
|
|
state, if known by the driver. this is required to check the full
duplex state without depending on the ifmedia ioctl which can't be
called in the kernel without process context.
ok henning@, brad@
|
|
address of a interface could be used. Now it is possible to specify a
interface more than once if multiple networks are configured. An alternative
network can be specified via e.g. interface em0:10.0.5.1. The old interface
syntax without the IP still works and uses the main/first configured IP
address.
ospfd now needs to include the IP header on outgoing messages as it is not
possible to specifiy the source address in sendto(2). Additionally all
multicast joins and leaves have to be tracked.
OK norby@
|
|
the source address and the interface index to find the corresponding
struct interface which is less error prone. OK norby@
|
|
|
|
|
|
|
|
|
|
ok claudio@
|
|
|
|
queue for the neighbor there is no need to send back an ack.
|
|
|
|
This should have been fixed ages ago since it really improves the
performance of ospfd.
ok claudio@
|
|
and remove other unneeded functions that are only used in bgpd.
|
|
not be used to connect to a OSPF cloud and forced to be passive. With this
ospfd will only announce the carp interface route if the interface is master.
So you can connect a LAN in a redundant way to your ospf backbone. OK norby@
|
|
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@
|
|
|
|
Prevents some of the retransmitting during bulk ls update transfers.
ok claudio@
|
|
|
|
especially it got called in the wrong place. OK norby@
|
|
networks. Bug report and testing by Stephen Marley.
While there kill an unneeded log_debug().
OK norby@
|
|
ok claudio@
|
|
jajaja claudio@
|
|
|
|
ok claudio@
|
|
|
|
|
|
|
|
ok claudio@
|
|
This makes it possible to have ospfd(8) parse a configuration file and
display the parsed result.
ok claudio@
|
|
|
|
to ospfctl.
Show detailed information about the LSAs in the Link State Database.
ok claudio@
|
|
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@
|
|
|
|
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.
|
|
This makes it possible to call if_init() at a much later time.
|
|
|
|
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@
|
|
OK norby@ deraadt@
|
|
ok claudio@ henning@
|
|
ok henning@
|
|
ok henning@
|
|
by using the kif/kroute info while allocating interfaces.
|
|
Calculate Shortest Path Tree for each area known in the link state
database.
The Shortest Path Tree is used as input for route table calculation.
Route tabled is calculated and the result is inserted into the kernel
route table.
ok claudio@
|
|
ok claudio@
|
|
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@
|
|
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@
|
|
|
|
|