summaryrefslogtreecommitdiffstats
path: root/isisd/isis_ldp_sync.c (follow)
Commit message (Collapse)AuthorAgeFilesLines
* *: Convert event.h to frrevent.hDonald Sharp2023-03-241-1/+1
| | | | | | | We should probably prevent any type of namespace collision with something else. Signed-off-by: Donald Sharp <sharpd@nvidia.com>
* *: Convert THREAD_XXX macros to EVENT_XXX macrosDonald Sharp2023-03-241-4/+4
| | | | Signed-off-by: Donald Sharp <sharpd@nvidia.com>
* *: Convert thread_timer_remain_XXX to event_timer_remain_XXXDonald Sharp2023-03-241-2/+2
| | | | Signed-off-by: Donald Sharp <sharpd@nvidia.com>
* *: Convert thread_add_XXX functions to event_add_XXXDonald Sharp2023-03-241-3/+2
| | | | Signed-off-by: Donald Sharp <sharpd@nvidia.com>
* *: Rename `struct thread` to `struct event`Donald Sharp2023-03-241-1/+1
| | | | | | | | | Effectively a massive search and replace of `struct thread` to `struct event`. Using the term `thread` gives people the thought that this event system is a pthread when it is not Signed-off-by: Donald Sharp <sharpd@nvidia.com>
* *: Rename thread.[ch] to event.[ch]Donald Sharp2023-03-241-1/+1
| | | | | | | | | | | This is a first in a series of commits, whose goal is to rename the thread system in FRR to an event system. There is a continual problem where people are confusing `struct thread` with a true pthread. In reality, our entire thread.c is an event system. In this commit rename the thread.[ch] files to event.[ch]. Signed-off-by: Donald Sharp <sharpd@nvidia.com>
* *: auto-convert to SPDX License IDsDavid Lamparter2023-02-091-14/+1
| | | | | | Done with a combination of regex'ing and banging my head against a wall. Signed-off-by: David Lamparter <equinox@opensourcerouting.org>
* isisd: changes for code maintainabilitysri-mohan12022-08-291-13/+13
| | | | | | these changes are for improving the code maintainability Signed-off-by: sri-mohan1 <sri.mohan@samsung.com>
* *: Fix spelling of specifedDonald Sharp2022-04-191-3/+3
| | | | Signed-off-by: Donald Sharp <sharpd@nvidia.com>
* *: Change thread->func to return void instead of intDonald Sharp2022-02-241-3/+2
| | | | | | | The int return value is never used. Modify the code base to just return a void instead. Signed-off-by: Donald Sharp <sharpd@nvidia.com>
* *: cleanup ifp->vrf_idIgor Ryzhov2021-11-221-1/+1
| | | | | | | Since f60a1188 we store a pointer to the VRF in the interface structure. There's no need anymore to store a separate vrf_id field. Signed-off-by: Igor Ryzhov <iryzhov@nfware.com>
* isisd: remove useless checks when configuring ldp-syncIgor Ryzhov2021-10-301-0/+3
| | | | | | | | | | We have checks on NB validation stage to prevent configuring LDP sync on interfaces in non-default VRFs. These checks are completely useless, because the interface can be easily moved to another VRF after configuring LDP sync. Instead, the check must be done in the actual code to cover the case when the interface is moved between VRFs. Signed-off-by: Igor Ryzhov <iryzhov@nfware.com>
* isisd: fix ldp-sync configurationIgor Ryzhov2021-04-291-189/+126
| | | | | | | | | | | YANG model and CLI commands allow user to configure LDP-sync per area. But the actual implementation is incorrect - all commands are changing the config for the whole VRF instead of a single area. This commit fixes this issue by actually implementing per area configuration. Fixes #8578. Signed-off-by: Igor Ryzhov <iryzhov@nfware.com>
* isisd: Prevent sending of uninited data to zebraDonald Sharp2021-01-301-0/+1
| | | | | | | | | | | | | | | | | | | | | | Valgrind reports: 2172861-==2172861== 2172861-==2172861== Syscall param write(buf) points to uninitialised byte(s) 2172861:==2172861== at 0x49B4FB3: write (write.c:26) 2172861-==2172861== by 0x48A4EA0: buffer_write (buffer.c:475) 2172861-==2172861== by 0x4915AD9: zclient_send_message (zclient.c:298) 2172861-==2172861== by 0x12AE08: isis_ldp_sync_state_req_msg (isis_ldp_sync.c:152) 2172861-==2172861== by 0x12B74B: isis_ldp_sync_adj_state_change (isis_ldp_sync.c:305) 2172861-==2172861== by 0x16DE04: hook_call_isis_adj_state_change_hook.isra.0 (isis_adjacency.c:141) 2172861-==2172861== by 0x16EE27: isis_adj_state_change (isis_adjacency.c:371) 2172861-==2172861== by 0x16F1F3: isis_adj_process_threeway (isis_adjacency.c:242) 2172861-==2172861== by 0x13BCCA: process_p2p_hello (isis_pdu.c:283) 2172861-==2172861== by 0x13BCCA: process_hello (isis_pdu.c:781) 2172861-==2172861== by 0x13BCCA: isis_handle_pdu (isis_pdu.c:1700) Sending of request includes uninited memory at the end of the interface name string. Fix Signed-off-by: Donald Sharp <sharpd@nvidia.com>
* isisd, ospfd: update 'client close' callback to 'ldp fail' apiKaren Schoener2020-12-101-1/+1
| | | | | | Update 'client close' callback to 'ldp fail' api. Signed-off-by: Karen Schoener <karen@voltanet.io>
* ldpd, isisd, ospfd: Remove periodic ldp-sync hello messageKaren Schoener2020-12-091-111/+0
| | | | | | | | | | | Removing the obsolete ldp-sync periodic 'hello' message. When ldp-sync is configured, IGPs take action if the LDP process goes down. The IGPs have been updated to use the zapi client close callback to detect the LDP process going down. Signed-off-by: Karen Schoener <karen@voltanet.io>
* isisd, ospfd: IGPs detect LDP down via zapi client close messageKaren Schoener2020-12-091-1/+39
| | | | | | | | | | | | | | | | When ldp-sync is configured, IGPs take action if the LDP process goes down. Currently, IGPs detect the LDP process is down if they do not receive a periodic 'hello' message from LDP within 1 second. Intermittently, this heartbeat mechanism causes false topotest failures. When the failure occurs, LDP is busy receiving messages from zebra for a few seconds. During this time, LDP does not send the expected periodic message. With this change, IGPs detect LDP down via zapi client close message. Signed-off-by: Karen Schoener <karen@voltanet.io>
* isisd: move and rename the infinity metric constantsRenato Westphal2020-11-251-4/+8
| | | | | | | | Those constants are also useful in contexts other than LDP-IGP Synchronization (e.g. the upcoming LFA work will need them). Move them to a more general header to reflect that. Signed-off-by: Renato Westphal <renato@opensourcerouting.org>
* *: unify thread/event cancel macrosMark Stapp2020-10-231-9/+9
| | | | | | | | | Replace all lib/thread cancel macros, use thread_cancel() everywhere. Only the THREAD_OFF macro and thread_cancel() api are supported. Also adjust thread_cancel_async() to NULL caller's pointer (if present). Signed-off-by: Mark Stapp <mjs@voltanet.io>
* *: Use proper semantics for turning off threadDonald Sharp2020-10-121-6/+2
| | | | | | | | | | | | | We have this pattern in the code base: if (thread) THREAD_OFF(thread); If we look at THREAD_OFF we check to see if thread is non-null too. So we have a double check. This is unnecessary. Convert to just using THREAD_OFF Signed-off-by: Donald Sharp <sharpd@nvidia.com>
* isisd, ospfd: fix missing/excessive docstringsIgor Ryzhov2020-10-021-1/+3
| | | | Signed-off-by: Igor Ryzhov <iryzhov@nfware.com>
* isisd: updates to ldp-sync isis commandslynne2020-09-191-2/+14
| | | | | | Improve the output of the show isis mpls ldp-sync command. Signed-off-by: Lynne Morrison <lynne@voltanet.io>
* isisd: ldp-igp-sync feature: adding isis supportlynne2020-09-091-0/+788
Signed-off-by: Lynne Morrison <lynne@voltanet.io> Signed-off-by: Karen Schoener <karen@voltanet.io>