mirror of
https://git.proxmox.com/git/mirror_frr
synced 2025-07-16 20:43:41 +00:00
bgpd: restore -S, --skip_runas options
Signed-off-by: Lou Berger <lberger@labn.net>
This commit is contained in:
parent
700f63d361
commit
c073457614
@ -66,6 +66,7 @@ static const struct option longopts[] =
|
||||
{ "listenon", required_argument, NULL, 'l'},
|
||||
{ "retain", no_argument, NULL, 'r'},
|
||||
{ "no_kernel", no_argument, NULL, 'n'},
|
||||
{ "skip_runas", no_argument, NULL, 'S'},
|
||||
{ "ecmp", required_argument, NULL, 'e'},
|
||||
{ 0 }
|
||||
};
|
||||
@ -151,7 +152,8 @@ sigint (void)
|
||||
if (! retain_mode)
|
||||
{
|
||||
bgp_terminate ();
|
||||
zprivs_terminate (&bgpd_privs);
|
||||
if (bgpd_privs.user) /* NULL if skip_runas flag set */
|
||||
zprivs_terminate (&bgpd_privs);
|
||||
}
|
||||
|
||||
bgp_exit (0);
|
||||
@ -364,6 +366,7 @@ main (int argc, char **argv)
|
||||
int bgp_port = BGP_PORT_DEFAULT;
|
||||
char *bgp_address = NULL;
|
||||
int no_fib_flag = 0;
|
||||
int skip_runas = 0;
|
||||
|
||||
frr_preinit(&bgpd_di, argc, argv);
|
||||
frr_opt_add("p:l:rne:", longopts,
|
||||
@ -371,6 +374,7 @@ main (int argc, char **argv)
|
||||
" -l, --listenon Listen on specified address (implies -n)\n"
|
||||
" -r, --retain When program terminates, retain added route by bgpd.\n"
|
||||
" -n, --no_kernel Do not install route to kernel.\n"
|
||||
" -S, --skip_runas Skip capabilities checks, and changing user and group IDs.\n"
|
||||
" -e, --ecmp Specify ECMP to use.\n");
|
||||
|
||||
/* Command line argument treatment. */
|
||||
@ -409,11 +413,16 @@ main (int argc, char **argv)
|
||||
case 'n':
|
||||
no_fib_flag = 1;
|
||||
break;
|
||||
case 'S':
|
||||
skip_runas = 1;
|
||||
break;
|
||||
default:
|
||||
frr_help_exit (1);
|
||||
break;
|
||||
}
|
||||
}
|
||||
if (skip_runas)
|
||||
memset (&bgpd_privs, 0, sizeof (bgpd_privs));
|
||||
|
||||
/* BGP master init. */
|
||||
bgp_master_init (frr_init ());
|
||||
|
Loading…
Reference in New Issue
Block a user