Age | Commit message (Collapse) | Author |
|
|
|
especially it got called in the wrong place. OK norby@
|
|
OK norby@
|
|
ok norby@
|
|
- have ospfctl tell us when we are using authentication with 'show interface'
ok claudio@ norby@
|
|
- remove rtr_id from struct iface we don't need to keep a copy of this value
per interface
- replace all references to iface->rtr_id.s_addr with calls to ospfe_rtr_id()
ok claudio@ norby@
|
|
that are in loopback mode. With this it is possible to use lo1 to hold the
loopback address of the router as done often on ciscos etc.
Problem found and fix tested by jakob@ OK norby@
|
|
One of the main problems is that the RFC is very unprecise about the process
and so a bit of guessing and "violating" the RFC is needed.
The problem was that on fast restarts ospfd computed wrong DR and BDR
routers. OK norby@ deraadt@
|
|
timer in IF_STA_WAITING. We are not ready for this because the RFC is totaly
fucked up in that specific area causing many issues on fast reloads.
OK norby@
|
|
and init) are not electable not only neighbors that are in state down.
OK norby@
|
|
OK norby@
|
|
ignores the event. This removes the warning "fsm_if: interface em0, event
WAITTIMER not expected in state DROTHER" in case of a quick startup.
OK norby@
|
|
faster and follows the RFC more closely).
OK norby@
|
|
ok claudio@
|
|
|
|
ok claudio@
|
|
This makes it possible to have ospfd(8) parse a configuration file and
display the parsed result.
ok claudio@
|
|
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@
|
|
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.
|
|
|
|
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.
|
|
OK norby@
|
|
Suggested by henning@
ok henning@
|
|
ok and input claudio@
|
|
From Jason Ackley (thanks).
ok claudio@
|
|
ok claudio@
|
|
|
|
by using the kif/kroute info while allocating interfaces.
|
|
ok claudio@
|
|
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@
|
|
for 0. Action 0 was IF_ACT_STRT and that's why if_act_start() got called
multiple times. The inappropriate hack from the previous commit is no
longer needed.
|
|
|
|
times for a interface.
|
|
|
|
|
|
do with this software, just happend to be my only valid email address at
the time.
|
|
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@
|