summaryrefslogtreecommitdiff
path: root/pimd/pim_msdp_socket.c
diff options
context:
space:
mode:
Diffstat (limited to 'pimd/pim_msdp_socket.c')
-rw-r--r--pimd/pim_msdp_socket.c16
1 files changed, 3 insertions, 13 deletions
diff --git a/pimd/pim_msdp_socket.c b/pimd/pim_msdp_socket.c
index b0e7b39d7b..feac42cf53 100644
--- a/pimd/pim_msdp_socket.c
+++ b/pimd/pim_msdp_socket.c
@@ -176,19 +176,9 @@ int pim_msdp_sock_listen(struct pim_instance *pim)
}
}
- if (pimd_privs.change(ZPRIVS_RAISE)) {
- flog_err(LIB_ERR_PRIVILEGES,
- "pim_msdp_socket: could not raise privs, %s",
- safe_strerror(errno));
- }
-
- /* bind to well known TCP port */
- rc = bind(sock, (struct sockaddr *)&sin, socklen);
-
- if (pimd_privs.change(ZPRIVS_LOWER)) {
- flog_err(LIB_ERR_PRIVILEGES,
- "pim_msdp_socket: could not lower privs, %s",
- safe_strerror(errno));
+ frr_elevate_privs(&pimd_privs) {
+ /* bind to well known TCP port */
+ rc = bind(sock, (struct sockaddr *)&sin, socklen);
}
if (rc < 0) {