Age | Commit message (Collapse) | Author |
|
a single generic function.
|
|
functions into a single generic function.
Add a few error checks and implement parsing of optional tlvs.
Putting it all together helps avoid to code duplication and improve
maintainability.
|
|
OK claudio@
|
|
Add more sanity checks and send proper notification messages on error
conditions.
OK claudio@
|
|
it belongs only _after_ receiving an Initialization message containing
the information we need. Before an Initialization message is received,
the TCP connection shouldn't be associated with any neighbor/adjacency.
Therefor refactor that part into a own module.
From Renato Westphal
|
|
to send a keepalive packet when a other PDU was sent out.
Also add a missing NBR_EVT_PDU_RCVD call to recv_address() which restarts
the session keepalive timeout. All other places already do that.
Diff by Renato Westphal
|
|
* Don't try to send a Shutdown message if the connection is already
closed or a read error occured;
* As per RFC 5036, send a Shutdown message if an unexpected message is
received during the initialization process;
* Check if the whole LSR ID of received messages is correct;
* On ldpe_dispatch_main(), ignore the messages from the lde process
whose associated neighbor is not in the operational state.
Diff from Renato Westphal
|
|
Support for per-interface labelspaces is only necessary for legacy ATM/FR
interfaces running in cell-mode. We shouldn't worry about this.
For platform-wide label spaces the label space id is always 0.
Diff by Renato Westphal
|
|
Support for passive interfaces was inherited from ospfd but it doesn't
make any sense at all for ldpd.
Diff from Renato Westphal
|
|
TLV header which will be used in different places shortly.
Cleanup the ldp.h header file a tiny bit.
|
|
the needed bits
ok deraadt@, millert@
|
|
now ldpd had no chance to run on a strict alignment architecture but
this makes ldpd happy on sparc64. Be careful to do all needed overflow
checks and try to make all parsing functions look similar.
OK michele@
|
|
Currently on the genaration side is done.
|
|
FEC is the one and only FEC of that message. This is required by
the RFC. While it is not correct to have multiple FEC in anything
but label mapping messages ldpd will accept those since the RFC
is extra vague about this feature and it does not hurt.
|
|
definition of a FEC mapping. This makes extending struct map simpler
and makes it possible to access the additional data in struct map.
|
|
Needed for further clean etc.
|
|
information. This is more useful.
OK michele
|
|
ibuf, buf_read to ibuf_read, READ_BUF_SIZE to IBUF_READ_SIZE.
ok henning gilles claudio jacekm deraadt
|
|
functions a bit to make them all look more similar. All but the label req
abort message are now parsed and passed to the lde.
|
|
about that. OK michele@
|
|
implemented use a correct return value so that ldpd has a chance to survive
when one of those messages are received.
OK michele@
|
|
buffer API. This fixes a few possible problems in session_read and does
some further cleanup in various places. Wrap msgbuf into evbuf to add
libevent functionality and use buf_read to handle the read side of a
session. OK michele@ and dlg@ did not see anything evil
|
|
OK michele
|
|
or fatal().
ok claudio@
|
|
ok claudio@
|
|
of octets.
ok claudio@
|
|
ok claudio@ laurent@
|
|
Built using the imsg/three process framework, its main aim
is to redistribute MPLS labels between peers.
Right now it has some really basic functionalities,
the basic protocol works and peers are able to exchange
labels and insert them in the kernel.
It still does not react to changes of topology.
Not yet connected to the builds.
ok claudio@ deraadt@
|