|
|
@@ -1,73 +0,0 @@
|
|
|
-From 28bf40220840c277d70ed66f6d58729ebb975de8 Mon Sep 17 00:00:00 2001
|
|
|
-From: Vincent Bernat <[email protected]>
|
|
|
-Date: Thu, 12 Feb 2015 08:07:43 +0100
|
|
|
-Subject: [PATCH] priv: don't lookup for _lldpd when privsep is disabled
|
|
|
-
|
|
|
-Closes #95
|
|
|
----
|
|
|
- src/daemon/lldpd.c | 10 ++++++++++
|
|
|
- 1 file changed, 10 insertions(+)
|
|
|
-
|
|
|
-diff --git a/src/daemon/lldpd.c b/src/daemon/lldpd.c
|
|
|
-index f868fc7..6a3a160 100644
|
|
|
---- a/src/daemon/lldpd.c
|
|
|
-+++ b/src/daemon/lldpd.c
|
|
|
-@@ -1335,11 +1335,13 @@ lldpd_main(int argc, char *argv[], char *envp[])
|
|
|
- int receiveonly = 0;
|
|
|
- int ctl;
|
|
|
-
|
|
|
-+#ifdef ENABLE_PRIVSEP
|
|
|
- /* Non privileged user */
|
|
|
- struct passwd *user;
|
|
|
- struct group *group;
|
|
|
- uid_t uid;
|
|
|
- gid_t gid;
|
|
|
-+#endif
|
|
|
-
|
|
|
- saved_argv = argv;
|
|
|
-
|
|
|
-@@ -1493,12 +1495,14 @@ lldpd_main(int argc, char *argv[], char *envp[])
|
|
|
- log_debug("main", "lldpd starting...");
|
|
|
-
|
|
|
- /* Grab uid and gid to use for priv sep */
|
|
|
-+#ifdef ENABLE_PRIVSEP
|
|
|
- if ((user = getpwnam(PRIVSEP_USER)) == NULL)
|
|
|
- fatal("main", "no " PRIVSEP_USER " user for privilege separation");
|
|
|
- uid = user->pw_uid;
|
|
|
- if ((group = getgrnam(PRIVSEP_GROUP)) == NULL)
|
|
|
- fatal("main", "no " PRIVSEP_GROUP " group for privilege separation");
|
|
|
- gid = group->gr_gid;
|
|
|
-+#endif
|
|
|
-
|
|
|
- /* Create and setup socket */
|
|
|
- int retry = 1;
|
|
|
-@@ -1526,12 +1530,14 @@ lldpd_main(int argc, char *argv[], char *envp[])
|
|
|
- log_warn("main", "unable to create control socket");
|
|
|
- fatalx("giving up");
|
|
|
- }
|
|
|
-+#ifdef ENABLE_PRIVSEP
|
|
|
- if (chown(ctlname, uid, gid) == -1)
|
|
|
- log_warn("main", "unable to chown control socket");
|
|
|
- if (chmod(ctlname,
|
|
|
- S_IRUSR | S_IWUSR | S_IXUSR |
|
|
|
- S_IRGRP | S_IWGRP | S_IXGRP) == -1)
|
|
|
- log_warn("main", "unable to chmod control socket");
|
|
|
-+#endif
|
|
|
-
|
|
|
- /* Disable SIGPIPE */
|
|
|
- signal(SIGPIPE, SIG_IGN);
|
|
|
-@@ -1576,7 +1582,11 @@ lldpd_main(int argc, char *argv[], char *envp[])
|
|
|
- }
|
|
|
-
|
|
|
- log_debug("main", "initialize privilege separation");
|
|
|
-+#ifdef ENABLE_PRIVSEP
|
|
|
- priv_init(PRIVSEP_CHROOT, ctl, uid, gid);
|
|
|
-+#else
|
|
|
-+ priv_init(PRIVSEP_CHROOT, ctl, 0, 0);
|
|
|
-+#endif
|
|
|
-
|
|
|
- /* Initialization of global configuration */
|
|
|
- if ((cfg = (struct lldpd *)
|
|
|
---
|
|
|
-2.1.2
|
|
|
-
|