Commit Graph

33 Commits

Author SHA1 Message Date
mrg
ef05d8864c ensure variables are initialised 2013-10-30 08:41:57 +00:00
kefren
f86d4fa943 allow setting transport addresses for interfaces into config file
also move passive-interface functionality under interface block
report the correct line for config parsing errors
2013-10-17 18:10:23 +00:00
kefren
7eaad7a39f check route messages sizes more carefully
cache pid
treat every message at a time, even if there are more messages to read
interpret also cloning routes

The latter two should fix the ldp_regen test
2013-07-27 14:35:41 +00:00
kefren
ae8b7d0074 don't connect on first hello, there are chances that ours is not seen yet
setproctitle with ldp id - useful for rump kernels testing
fix a memory leak in ldp_peer_new
don't holddown if already holded down
peer sockets are now non-blocking
connected routes deletes are now processed
check if peer is connected before attempting to sending label mappings
2013-07-20 05:16:08 +00:00
kefren
9b2110eba6 Make sure labels are always updated when a route is added and when a peer
is added
Rework mpls_add_label according to that so no route refresh is done anymore
Use poll when reading the PF_ROUTE socket
setsockopt SO_USELOOPBACK on the PF_ROUTE socket
Output some information on SIGINFO
Allow map changing for a ldp peer
Finally fix the connected routes admission into labels
Correct the route trigger when a label map is received
2013-07-18 06:07:45 +00:00
kefren
2cc7bf11fa Constify a little bit 2013-07-11 05:45:23 +00:00
kefren
12d5f1b2e0 First send initialize and keep alive after that. Fixes inter-operability
issues regarding session initialization.
2013-05-08 08:57:45 +00:00
kefren
bed325c414 move code around a little bit in order to call get_ldp_peer correctly
check also for transport_address in get_ldp_peer
2013-02-04 20:28:24 +00:00
kefren
0c72a2ff7e * Don't assume INET in connection path
* Lookup in hello list in order to get the correct LDP ID, instead of
  transport address
* Improve an error message
2013-02-04 17:14:31 +00:00
kefren
898c6f9ff4 Don't try to connect to peers before sending hellos 2013-02-03 19:41:59 +00:00
kefren
fcfdc0a1a0 Be a little more strict when sending notifications and checking PDU 2013-01-28 21:35:34 +00:00
kefren
2157479565 permit notifications even if session not fully established 2013-01-28 20:32:04 +00:00
kefren
97dccf752c Fix the transport address TLV mess I created after INET6 convert
Use a single loop to decrement and check hello list keepalives
Display transport address in show hello output
2013-01-28 20:06:52 +00:00
kefren
dd2b4ae9ab * add a new keyword for config file - passive-if and check if it's
allowed to use the interface before join/send mcast
 * check if interface supports multicast before join/send mcast
2013-01-26 21:07:49 +00:00
kefren
ad4560771b use predefined group consts/macros instead of ptoning strings 2013-01-26 19:44:52 +00:00
kefren
ef9728bbf2 allow compile without -DINET6 2013-01-26 17:46:50 +00:00
kefren
269ea2d396 modify structures in order to accomodate IPv6 according to
draft-ietf-mpls-ldp-ipv6. Correct a little bit IPv6 hello path
2013-01-26 17:29:55 +00:00
kefren
5d14e92019 Make sure there is enough space for sockaddr subtypes
Use u_char for IP_MULTICAST_LOOP as specified in in.h
2013-01-16 08:28:44 +00:00
kefren
27b5caabc1 Use local-link address as source for hellos 2012-11-13 06:58:58 +00:00
pgoyette
76b8726c47 Repair another %lu --> %zd - this one was caught by building for
evbmips port
2012-11-13 01:08:51 +00:00
christos
c0b74ca714 fix the build; ssize_t is %zd not %lu 2012-11-12 22:51:42 +00:00
kefren
6cb0642362 * add initial IPv6 support - still incomplete at this moment, but it sends
out there IPv6 hellos. Interoperability not yet tested.
* sync man page with reality
2012-11-12 18:39:00 +00:00
joerg
bec77c5f43 Use __dead 2011-08-31 13:32:36 +00:00
kefren
c2db1af7a2 obey RFC3036 3.5.2 regarding holdtimes
wire SIGINT
2011-06-16 14:48:30 +00:00
kefren
4671a6ac8d clear the error condition
KNF a little bit
2011-06-16 06:05:47 +00:00
kefren
374dea10e0 simplify the rtsock read sequence
apply a little bit of KNF
2011-06-15 13:24:48 +00:00
kefren
9b733c1c9d * add no-default-route option into configuration file and check it before
rejecting default-route
* exit process in case of error into the main loop
* complete FSM for RTM_CHANGE
* Check if we overflow pollfd array
2011-06-14 11:28:51 +00:00
joerg
e4a1756060 Packed pointers are non-sense 2011-05-24 13:03:19 +00:00
kefren
716840ec3a avoid advertising 0/8 transport address (conforming RFC1122
Section 3.2.1.3)
2011-01-22 19:46:46 +00:00
kefren
0c3c6bf2b7 use SLIST_FOREACH_SAFE when deleting a peer in loop 2011-01-22 19:35:00 +00:00
kefren
e64aab24d3 * add config file so one can control id, timers and label assignment and
use neighbour specific options - XXX: needs documentation
* add peer authentication using TCP_MD5SIG. Interoperability tested with
  Cisco IOS
* use SLIST_FOREACH_SAFE when deleting labels instead of re-looping.
2010-12-30 11:29:21 +00:00
christos
14db3bb9d8 - no cast for malloc
- malloc + memset = calloc
- sizeof(type) -> sizeof(*var)
- small indents
2010-12-09 00:10:59 +00:00
kefren
e7341ada4c Add ldpd, a RFC 3036 compatible LDP speaker. 2010-12-08 07:20:14 +00:00