summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--vrrpd/vrrp.c6
-rw-r--r--vrrpd/vrrp_ndisc.c3
2 files changed, 3 insertions, 6 deletions
diff --git a/vrrpd/vrrp.c b/vrrpd/vrrp.c
index d24f918b12..f98b230c62 100644
--- a/vrrpd/vrrp.c
+++ b/vrrpd/vrrp.c
@@ -1087,13 +1087,12 @@ static int vrrp_socket(struct vrrp_router *r)
setsockopt_ipv4_multicast_loop(r->sock_tx, 0);
/* Bind Rx socket to exact interface */
- vrrp_privs.change(ZPRIVS_RAISE);
+ frr_elevate_privs(&vrrp_privs)
{
ret = setsockopt(r->sock_rx, SOL_SOCKET,
SO_BINDTODEVICE, r->vr->ifp->name,
strlen(r->vr->ifp->name));
}
- vrrp_privs.change(ZPRIVS_LOWER);
if (ret) {
zlog_warn(VRRP_LOGPFX VRRP_LOGPFX_VRID VRRP_LOGPFX_FAM
"Failed to bind Rx socket to %s: %s",
@@ -1198,13 +1197,12 @@ static int vrrp_socket(struct vrrp_router *r)
setsockopt_ipv6_multicast_loop(r->sock_tx, 0);
/* Bind Rx socket to exact interface */
- vrrp_privs.change(ZPRIVS_RAISE);
+ frr_elevate_privs(&vrrp_privs)
{
ret = setsockopt(r->sock_rx, SOL_SOCKET,
SO_BINDTODEVICE, r->vr->ifp->name,
strlen(r->vr->ifp->name));
}
- vrrp_privs.change(ZPRIVS_LOWER);
if (ret) {
zlog_warn(VRRP_LOGPFX VRRP_LOGPFX_VRID VRRP_LOGPFX_FAM
"Failed to bind Rx socket to %s: %s",
diff --git a/vrrpd/vrrp_ndisc.c b/vrrpd/vrrp_ndisc.c
index 8a439e97ca..8081533ebc 100644
--- a/vrrpd/vrrp_ndisc.c
+++ b/vrrpd/vrrp_ndisc.c
@@ -211,11 +211,10 @@ int vrrp_ndisc_una_send_all(struct vrrp_router *r)
void vrrp_ndisc_init(void)
{
- vrrp_privs.change(ZPRIVS_RAISE);
+ frr_elevate_privs(&vrrp_privs)
{
ndisc_fd = socket(AF_PACKET, SOCK_RAW, htons(ETH_P_IPV6));
}
- vrrp_privs.change(ZPRIVS_LOWER);
if (ndisc_fd > 0) {
DEBUGD(&vrrp_dbg_sock,