summaryrefslogtreecommitdiff
path: root/usr.sbin/ldpd/lde_lib.c
AgeCommit message (Collapse)Author
2013-06-03Advertise the implicit-null label for routes attached to loopbackClaudio Jeker
interfaces to guarantee PHP. With this 'fib-update no' is not totaly broken because of missing mappings for the loopbacks. Diff by Renato Westphal
2010-11-04Only consider pathes with highest priority when replying to labelClaudio Jeker
requests. Else a priority inversion may happen that would build label switching pathes that use inactive routes. OK michele@
2010-10-26Change lde_check_request(), lde_check_mapping(), lde_send_labelmapping(),Claudio Jeker
lde_send_labelrequest(), and lde_nbr_do_mappings() to follow the algorithms defined in Appendix A of RFC 5036. Added comments and markers for better understanding and to find missing bits. OK michele@
2010-10-21Start implementing the missing lablemapping messages in the LDE andClaudio Jeker
fix the existing ones to correctly track outstanding request and sent / recv mappings. Looks good to michele@
2010-08-27Fix format string that was not changed after the log_fec introduction.Claudio Jeker
2010-08-26Fix a memory leak in an error path. Found and diff by Igor Zinovik.Claudio Jeker
OK michele@
2010-06-30Make it possible to store multiple LSP to a FEC. This is another step toClaudio Jeker
handle multipath routes in MPLS. Looks good to michele@
2010-06-30Kill IMSG_KLABEL_INSERT and all the related functions around it.Claudio Jeker
IMSG_KLABEL_CHANGE is smart enough to know when something is a change or an insert.
2010-06-30Switch prefix in struct map to a struct in_addr instead of a u_int32_t.Claudio Jeker
Needed for further clean etc.
2010-06-09Move the logging of FEC changes to the LDE and print the FEC and labelClaudio Jeker
information. This is more useful. OK michele
2010-06-07Store all labels in ldpd in host byte order without any additional shifting.Claudio Jeker
Add the necessary ntohl() and shifts in various places and cleanup the byte order mess we had before. michele@ agrees.
2010-06-02Start reworking the LDE. Implement a FEC RB tree that can be used for theClaudio Jeker
route table and the per neighbor request and mapping lists. The received and sent mappings are added to the per neighbor RB tree and additionally linked to the route table. This makes lookups, etc. a lot easier. While there flip the neighbor hash list over to a RB tree. OK michele@
2010-05-25Kill a bogus bzero() and introduce an empty lde_check_release().Claudio Jeker
That function will be needed soon.
2010-05-19Remove yet another ospf leftover that is not needed here. This timeClaudio Jeker
neighbor self and all the madness surrounding this amazing concept. LDP is not self aware so there is no need for this. OK michele@
2010-05-11No need to do a rt_find() twice.Claudio Jeker
2010-04-13When a prefix has a implicit null label associated, force pop operation.Michele Marchetto
This allow us to correcly do penultimate hop popping. From Thomas Habets. Thanks. ok claudio@
2010-03-03Rework the kroute code by stealing some code from ospfd and massaging itClaudio Jeker
a lot more. Main reason for this is to add priority support. Additionally add some additional NO_LABEL fixes. OK michele@
2010-02-25One more substitution of label 0 with NO_LABEL.Michele Marchetto
ok claudio@
2010-02-25Whitespaces cleanup.Michele Marchetto
2010-02-25NO_LABEL (instead of zero) must be used to mean that no labels are associatedMichele Marchetto
with the prefix. ok claudio@
2010-02-19If a neighbor goes down we need to cleanup the LIB from all FEC that pointClaudio Jeker
via that neighbor. Fixes a use after free and an additional NULL dereference in a log_debug is fixed as well. OK michele
2010-01-19Don't fatalx() when a static route is deleted.Michele Marchetto
ok claudio@
2010-01-08Implement section A.1.6 of RFC 5036: "Recognize new FEC".Michele Marchetto
When a new prefix is learnt, redistribute the local label associated with it to the other connected peers. ok claudio@
2010-01-02In the "ldpctl show lib" output print every known label and make clear if itMichele Marchetto
is currently in use or not. ok claudio@
2009-09-28When a route is deleted, ldpd should remove labels associated with it fromMichele Marchetto
lfib (the kernel lib) but not from the lib. These could be used later on when the route come back. ok claudio@
2009-08-02"ldpctl show lib" output cleanup.Michele Marchetto
- Show only the remote/local labels of the prefixes currently present in fib. - Write a "-" instead of "0" when a remote label is not present (the prefix is directly connected). It avoids confusion with explicit null label. ok claudio@
2009-07-08Detect nexthop change.Michele Marchetto
React installing the label associated with the new nexthop in the kernel routing table. ok claudio@
2009-06-19When operating in liberal mode, retain labels even if they aren't learntMichele Marchetto
from current nexthop. ok laurent@
2009-06-05Correctly send notification messages when errors occur.Michele Marchetto
ok claudio@ laurent@
2009-06-01Welcome ldpd, the Label Distribution Protocol daemon.Michele Marchetto
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@