Age | Commit message (Collapse) | Author |
|
|
|
If this happens the imsg may no longer be usable as there may be queued
messages, but this is a) already the case with the code now, and b)
would be the case if recvmsg() fails anyway, so we can document that -1
from imsg_read() invalidates the struct imsgbuf.
discussed with and ok eric
|
|
Sync description of the OSPF protocol between ospfd(8) and ospf6d(8).
Document current shortcomings -- in particular, document that ospf6d(8)
needs manual IPsec setup for security. Clean up various grammatical errors,
re-order and re-phrase things a bit to improve readability.
Update RFC references. Remove IPv4-specific stuff from ospf6d.conf(5).
OK jmc@ claudio@
|
|
Appart from multi-area support this is the last big missing piece in
ospf6d. ospf6d should now work correctly in single area setups.
So please test.
"it's always nice to see those #if 0 being killed" stsp@
|
|
specified by type, adv_rtr and an LSA to compare against. This is needed
to find either a free LS ID or the previously assigned LS ID of an AS-ext
LSA. "looks like you know what you're doing" stsp@
|
|
latter are not realy tested. AS-ext LSA are now correctly added to the
RIB. "looks like you know what you're doing" stsp@
|
|
ls_id. This is needed since sometimes the ls_id is not known and we need
to walk part of the tree.
|
|
in these cases, is useless anyway.
Found by and fixing the build with mandoc;
still fine with both old and new groff.
ok jmc@
|
|
created a badly sized struct sockaddr_in6 we need to add some magic pading
on 64bit archs.
Code stolen from bgpd after a painful afternoon of bug hunting, head
scratching and violent cursing. Now ospf6d works on 64bit archs.
|
|
by lsa_asext_check().
|
|
Diff originally from stsp@, some minor modifications by me.
First step to support type 5 LSA.
|
|
aggregate, as mandated by RFC5340.
OK claudio@
|
|
From Christiano F. Haesbaert.
ok claudio@
|
|
state machine needed by the features that are coming along.
ok claudio@
|
|
which easily fits on the stack.
OK claudio@
|
|
address for so that the device is no considered unnumbered.
|
|
|
|
in almost all sockaddr_in6 addresses it is required for the nexthop and
sin6_scope_id is actually ignored there.
This needs to be fixed but my quota of IPv6 insanity is already used for today.
Workaround for now. My simple testsetup is now actually able to install
the first ospf6d learned routes in the kernel. Weeee!
|
|
this information to kroute and kroute can use that information to fill in
the various sin6_scope_id fields.
|
|
definitions so that we have a chance to build a correct nexthop.
Insane that a struct in6_addr is unable to fully specify an IPv6 address.
kroute.c still needs fixing but now the rib is starting to make sense.
|
|
again but different because of link local addressing.
|
|
interface id of the remote side. Found the hard way.
|
|
We need to pass our ifindex so that we can find the Link-LSA that has the
link local address stored for that router. Don't we all like IPv6 link local
addresses and their insanity.
|
|
|
|
|
|
|
|
`OK' claudio
|
|
henning, sthen, michele like the idea
|
|
few remaining ".Tn UNIX" macros with ".Ux" ones.
pointed out by ratchov@, thanks!
ok jmc@
|
|
ok jmc@
|
|
in an error path.
|
|
loop in the shutdown case. OK henning@
|
|
parameter was NULL. But it's easy enough to make ifname != NULL by accident,
e.g. by passing a zeroed or even uninitialised array. This function should
accept a 'virtual' flag of some kind instead.
Since we don't even support virtual links yet, change the check to
"if (virtual)", #if 0 the check, and code that depends on it (including
a file-scope variable), and add comments marking this as TODO.
ok claudio, who requested #if 0 instead of deletion.
|
|
caller passed NULL for the sdl parameter.
ok claudio@
|
|
function, which is additionally exported for use by others.
It will be needed by smtpd's SSL module when the SMTP client code
is changed to replace libevent's evbuffers with our msgbuf_* API.
ok gilles@ henning@ guenther@ eric@
|
|
freeing the msgbuf.
While here also remove an unnecessary while loop.
ok eric pyr
|
|
as router type and not as a network.
From stsp@
|
|
Again from stsp@
|
|
when passing -1 as fd to the imsg call. No frogs for eric@ and pyr@
From stsp@
|
|
bytes that were filled, not the whole buffer.
ok pyr@ gilles@
|
|
Make the imsg protocol network-safe.
it might be network safe, but half the imsg based daemons on my firewalls
dont run anymore.
|
|
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@
|
|
ok pyr@
|
|
add a flag field, use u_int32_t for pid_t and extend type to 32 bits
for padding.
ok pyr@
|
|
|
|
ospf6ctl is already broken in tree (not connected to build).
ok pyr@
|
|
ok claudio@, henning@
|
|
|
|
time in the callback. Same diff that went into ospfd applied with some
fuzz.
|
|
populated. Intra-area routes only for now.
"I see no obvious issues. Should go in so you can move forward" claudio@
|