summaryrefslogtreecommitdiffstats
path: root/zebra/if_netlink.h (follow)
Commit message (Collapse)AuthorAgeFilesLines
* zebra: remove unused function from if_netlink.cDonna Sharp2024-10-071-3/+0
| | | | Signed-off-by: Donna Sharp <dksharp5@gmail.com>
* zebra: Move protodown_r_bit to a better spotDonald Sharp2023-07-051-11/+0
| | | | | | | Since we are moving some code handling out of the dataplane and into zebra proper, lets move the protodown r bit as well. Signed-off-by: Donald Sharp <sharpd@nvidia.com>
* Merge pull request #12780 from opensourcerouting/spdx-license-idDonald Sharp2023-02-171-16/+1
|\ | | | | *: convert to SPDX License identifiers
| * *: auto-convert to SPDX License IDsDavid Lamparter2023-02-091-16/+1
| | | | | | | | | | | | Done with a combination of regex'ing and banging my head against a wall. Signed-off-by: David Lamparter <equinox@opensourcerouting.org>
* | zebra: handle STP state change for SVD per vlan IDStephen Worley2023-02-141-0/+3
|/ | | | | | | | | | | | | Read in STP state changes for a Single Vxlan Device via bridge vlan netlink messages. Map the vlanid to a VNI in the SVD table and treat it similar to how we handle proto down of the Vxlan device traditionally in a non-SVD device scenario. Forwarding == Interface UP Blocking == Interface DOWN Signed-off-by: Stephen Worley <sworley@nvidia.com>
* zebra: netlink rtm tunnel msg parsingChirag Shah2022-06-241-0/+1
| | | | | | | | | | | | | | | | | | | | | | | 'bridge vni add vni <id> dev <vxlan device>' generates new RTM_NEWTUNNEL and RTM_DELTUNNEL to add or remove vni to l3vxlan device. Register new RTNLGRP_TUNNEL group to receive new netlink notification. Callback for the new RTM_xxxTUNNEL. kernel patches: https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/ linux.git/commit/?h=v5.18-rc7&id=7b8135f4df98b155b23754b6065c157861e268f1 https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/ linux.git/commit/?h=v5.18-rc7&id=f9c4bb0b245cee35ef66f75bf409c9573d934cf9 Ticket:#3073812 Testing Done: Signed-off-by: Donald Sharp <sharpd@nvidia.com> Signed-off-by: Chirag Shah <chirag@nvidia.com>
* zebra: remove old protodown dplane pathStephen Worley2022-03-101-18/+0
| | | | | | | Remove the old protodown dplane path install on the main thread. This is now dead code. Signed-off-by: Stephen Worley <sworley@nvidia.com>
* zebra: add command for setting protodown bitStephen Worley2022-03-091-0/+10
| | | | | | | | Add command for use to set protodown via frr.conf in the case our default conflicts with another application they are using. Signed-off-by: Stephen Worley <sworley@nvidia.com>
* zebra: add support for protodown reason codeStephen Worley2022-03-091-1/+12
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | Add support for setting the protodown reason code. https://github.com/torvalds/linux/commit/829eb208e80d6db95c0201cb8fa00c2f9ad87faf These patches handle all our netlink code for setting the reason. For protodown reason we only set `frr` as the reason externally but internally we have more descriptive reasoning available via `show interface IFNAME`. The kernel only provides a bitwidth of 32 that all userspace programs have to share so this makes the most sense. Since this is new functionality, it needs to be added to the dplane pthread instead. So these patches, also move the protodown setting we were doing before into the dplane pthread. For this, we abstract it a bit more to make it a general interface LINK update dplane API. This API can be expanded to support gernal link creation/updating when/if someone ever adds that code. We also move a more common entrypoint for evpn-mh and from zapi clients like vrrpd. They both call common code now to set our internal flags for protodown and protodown reason. Also add debugging code for dumping netlink packets with protodown/protodown_reason. Signed-off-by: Stephen Worley <sworley@nvidia.com>
* zebra: intf address handler is platform-neutralMark Stapp2021-09-141-3/+0
| | | | | | | | Move the handler for incoming interface address events to a neutral source file - it's not netlink-specific and shouldn't have been in a netlink file. Signed-off-by: Mark Stapp <mjs.ietf@gmail.com>
* zebra: add interface address apis for dplaneMark Stapp2021-09-141-0/+11
| | | | | | | | | | | Add new apis for dplane interface address handling, based on the existing api. The existing api is basically split in two: the first part processes an incoming netlink message in the dplane pthread, creating a dplane context with info about the event. The second part runs in the main pthread and uses the context data to update an interface or connected object. Signed-off-by: Mark Stapp <mjs.ietf@gmail.com>
* zebra: new dplane action to set gre link interfacePhilippe Guibert2021-04-301-0/+3
| | | | | | | | | This action is initiated by nhrp and has been stubbed when moving to zebra. Now, a netlink request is forged to set the link interface of a gre interface if that gre interface does not have already a link interface. Signed-off-by: Philippe Guibert <philippe.guibert@6wind.com>
* zebra: netlink message batchingJakub Urbańczyk2020-08-101-0/+4
| | | | | | Integrate existing functions with batching infrastructure. Signed-off-by: Jakub Urbańczyk <xthaid@gmail.com>
* vrrpd: protodown macvlan in backup stateQuentin Young2019-05-171-0/+14
| | | | Signed-off-by: Quentin Young <qlyoung@cumulusnetworks.com>
* add cplusplus guards to all zebra headersEmanuele Di Pascale2019-03-251-0/+8
| | | | Signed-off-by: Emanuele Di Pascale <emanuele@voltanet.io>
* zebra: Remove unnecessary function parameterDonald Sharp2018-05-241-4/+3
| | | | | | | The snl variable is no longer needed to be passed around, so remove it from the calling path. Signed-off-by: Donald Sharp <sharpd@cumulusnetworks.com>
* *: reindentreindent-master-afterwhitespace / reindent2017-07-171-5/+5
| | | | | | indent.py `git ls-files | pcregrep '\.[ch]$' | pcregrep -v '^(ldpd|babeld|nhrpd)/'` Signed-off-by: David Lamparter <equinox@opensourcerouting.org>
* *: make consistent & update GPLv2 file headersDavid Lamparter2017-05-151-4/+3
| | | | | | | | | | | The FSF's address changed, and we had a mixture of comment styles for the GPL file header. (The style with * at the beginning won out with 580 to 141 in existing files.) Note: I've intentionally left intact other "variations" of the copyright header, e.g. whether it says "Zebra", "Quagga", "FRR", or nothing. Signed-off-by: David Lamparter <equinox@opensourcerouting.org>
* zebra: Add knowledge of whether or not we are acting under startup conditionsDonald Sharp2017-03-011-2/+2
| | | | | | | | | | | The reading if unicast routes from the kernel acts subtly differently between reading in the routes from the kernel on startup and reading a new route or getting a response for a route. Add startup flag(currently ignored) so that we can start consolidating the functionality. Signed-off-by: Donald Sharp <sharpd@cumulusnetworks.com>
* zebra: Refactor netlink interactionsvivek2016-10-171-0/+35
Separate core netlink functions and library functions from route-related interactions and interface-related interactions. Signed-off-by: Vivek Venkatraman <vivek@cumulusnetworks.com> Reviewed-by: Donald Sharp <sharpd@cumulusnetworks.com> Reviewed-by: Don Slice <dslice@cumulusnetworks.com> Ticket: CM-13199 Reviewed By: CCR-5254 Testing Done: bgp-min, ospf-min