diff options
| author | anlan_cs <vic.lan@pica8.com> | 2023-05-10 22:04:33 +0800 |
|---|---|---|
| committer | Mergify <37929162+mergify[bot]@users.noreply.github.com> | 2023-05-22 11:25:56 +0000 |
| commit | d211a23b7e7eb724e946b57928e2016dc8352b13 (patch) | |
| tree | a409a55f4320a6147c34e5893afd6c0129ff0d0c /lib/command.c | |
| parent | 05469ab2b553302c2a7032f4c89e4510dc3fa6d9 (diff) | |
bfdd: Fix malformed session with vrf
With this configuration:
```
bfd
peer 33:33::66 local-address 33:33::88 vrf vrf8 interface enp1s0
exit
!
exit
```
The bfd session can't be established with error:
```
bfdd[18663]: [YA0Q5-C0BPV] control-packet: wrong vrfid. [mhop:no peer:33:33::66 local:33:33::88 port:2 vrf:61]
```
The vrf check should use the carefully adjusted `vrfid`, which is
based on globally/reliable interface. We can't believe the
`bvrf->vrf->vrf_id` because the `/proc/sys/net/ipv4/udp_l3mdev_accept`
maybe is set "1" in VRF-lite backend even with security drawback.
Just correct the vrf check.
Signed-off-by: anlan_cs <vic.lan@pica8.com>
(cherry picked from commit b17c179664da7331a4669a1cf548e4e9c48a5477)
Diffstat (limited to 'lib/command.c')
0 files changed, 0 insertions, 0 deletions
