summaryrefslogtreecommitdiffstats
path: root/ldpd/ldpe.c (follow)
Commit message (Collapse)AuthorAgeFilesLines
* ldpd: remove unnecessary memcpy'sRenato Westphal2017-03-031-12/+14
| | | | Signed-off-by: Renato Westphal <renato@opensourcerouting.org>
* ldpd: send VPLS MAC withdrawalsRenato Westphal2017-03-031-5/+16
| | | | | | | | | | RFC 4762 says that MAC address withdrawal messages can be used to improve convergence time in VPLS networks. This patch makes ldpd send MAC withdrawals whenever a non-pseudowire interface pertaining to a VPLS goes down. The processing of received MAC withdrawals will be implemented later. Signed-off-by: Renato Westphal <renato@opensourcerouting.org>
* ldpd: minor tweaksRenato Westphal2017-03-031-2/+1
| | | | Signed-off-by: Renato Westphal <renato@opensourcerouting.org>
* Merge remote-tracking branch 'origin/stable/2.0'Donald Sharp2017-02-021-1/+2
|\
| * ldpd: add ctl_socket cli option to override the compiled-in location for the ↵Renato Westphal2017-01-251-1/+2
| | | | | | | | | | | | control socket Signed-off-by: Renato Westphal <renato@opensourcerouting.org>
* | ldpd: introduce advanced filtering capabilitiesRenato Westphal2017-02-021-3/+8
| | | | | | | | | | | | | | | | This patch introduces several new configuration commands to ldpd. These commands should allow the operator to define advanced filtering policies for things like label advertisement, label allocation, etc. Signed-off-by: Renato Westphal <renato@opensourcerouting.org>
* | ldpd: add synchronous IPC channelsRenato Westphal2017-02-021-5/+11
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | By default all ldpd interprocess communication is asynchronous (non-blocking socketpairs). Under some circumstances, however, we'll need synchronous IPC as well. Examples: * the lde child process requesting labels to zebra (through the parent process); * apply an access-list on a given IP prefix (ACLs are only available in the parent process). This patch only adds the necessary infrastructure to allow the child processes to make synchronous requests to the parent process. Later patches will make use of this new infrastructure. Signed-off-by: Renato Westphal <renato@opensourcerouting.org>
* | Merge pull request #40 from opensourcerouting/ldpd-ordered-outputDonald Sharp2017-01-061-28/+28
|\ \ | |/ |/| ldpd ordered output - fixes issue#18
| * ldpd: use red-black trees to store 'adj' elementsRenato Westphal2017-01-041-9/+9
| | | | | | | | | | | | | | | | | | | | | | | | | | Using red-black trees instead of linked lists brings the following benefits: 1 - Elements are naturally ordered (no need to reorder anything before outputting data to the user); 2 - Faster lookups/deletes: O(log n) time complexity against O(n). The insert operation with red-black trees is more expensive though, but that's not a big issue since lookups are much more frequent. Signed-off-by: Renato Westphal <renato@opensourcerouting.org>
| * ldpd: use red-black trees to store 'l2vpn_pw' elementsRenato Westphal2017-01-041-4/+4
| | | | | | | | | | | | | | | | | | | | | | | | | | Using red-black trees instead of linked lists brings the following benefits: 1 - Elements are naturally ordered (no need to reorder anything before outputting data to the user); 2 - Faster lookups/deletes: O(log n) time complexity against O(n). The insert operation with red-black trees is more expensive though, but that's not a big issue since lookups are much more frequent. Signed-off-by: Renato Westphal <renato@opensourcerouting.org>
| * ldpd: use red-black trees to store 'l2vpn_if' elementsRenato Westphal2017-01-041-2/+2
| | | | | | | | | | | | | | | | | | | | | | | | | | Using red-black trees instead of linked lists brings the following benefits: 1 - Elements are naturally ordered (no need to reorder anything before outputting data to the user); 2 - Faster lookups/deletes: O(log n) time complexity against O(n). The insert operation with red-black trees is more expensive though, but that's not a big issue since lookups are much more frequent. Signed-off-by: Renato Westphal <renato@opensourcerouting.org>
| * ldpd: use red-black trees to store 'l2vpn' elementsRenato Westphal2017-01-041-2/+2
| | | | | | | | | | | | | | | | | | | | | | | | | | Using red-black trees instead of linked lists brings the following benefits: 1 - Elements are naturally ordered (no need to reorder anything before outputting data to the user); 2 - Faster lookups/deletes: O(log n) time complexity against O(n). The insert operation with red-black trees is more expensive though, but that's not a big issue since lookups are much more frequent. Signed-off-by: Renato Westphal <renato@opensourcerouting.org>
| * ldpd: use red-black trees to store 'nbr_params' elementsRenato Westphal2017-01-041-2/+2
| | | | | | | | | | | | | | | | | | | | | | | | | | Using red-black trees instead of linked lists brings the following benefits: 1 - Elements are naturally ordered (no need to reorder anything before outputting data to the user); 2 - Faster lookups/deletes: O(log n) time complexity against O(n). The insert operation with red-black trees is more expensive though, but that's not a big issue since lookups are much more frequent. Signed-off-by: Renato Westphal <renato@opensourcerouting.org>
| * ldpd: use red-black trees to store 'tnbr' elementsRenato Westphal2017-01-041-5/+5
| | | | | | | | | | | | | | | | | | | | | | | | | | Using red-black trees instead of linked lists brings the following benefits: 1 - Elements are naturally ordered (no need to reorder anything before outputting data to the user); 2 - Faster lookups/deletes: O(log n) time complexity against O(n). The insert operation with red-black trees is more expensive though, but that's not a big issue since lookups are much more frequent. Signed-off-by: Renato Westphal <renato@opensourcerouting.org>
| * ldpd: use red-black trees to store 'iface' elementsRenato Westphal2017-01-041-4/+4
| | | | | | | | | | | | | | | | | | | | | | | | | | Using red-black trees instead of linked lists brings the following benefits: 1 - Elements are naturally ordered (no need to reorder anything before outputting data to the user); 2 - Faster lookups/deletes: O(log n) time complexity against O(n). The insert operation with red-black trees is more expensive though, but that's not a big issue since lookups are much more frequent. Signed-off-by: Renato Westphal <renato@opensourcerouting.org>
* | build: rename (1 of ?): configure.ac + preprocDavid Lamparter2016-12-201-3/+3
|/ | | | | | | This replaces Quagga -> FRR in most configure.ac settings as well as a handful of preprocessor macros in the source code. Signed-off-by: David Lamparter <equinox@opensourcerouting.org>
* ldpd: adapt the code for QuaggaRenato Westphal2016-09-231-144/+242
| | | | Signed-off-by: Renato Westphal <renato@opensourcerouting.org>
* ldpd: copy original sources from OpenBSD (14/09/2016)Renato Westphal2016-09-231-0/+808
Signed-off-by: Renato Westphal <renato@opensourcerouting.org>