gnunet-svn
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[GNUnet-SVN] r25007 - gnunet/src/transport


From: gnunet
Subject: [GNUnet-SVN] r25007 - gnunet/src/transport
Date: Fri, 16 Nov 2012 17:05:25 +0100

Author: grothoff
Date: 2012-11-16 17:05:25 +0100 (Fri, 16 Nov 2012)
New Revision: 25007

Modified:
   gnunet/src/transport/gnunet-helper-transport-wlan.c
Log:
-assert privs when needed

Modified: gnunet/src/transport/gnunet-helper-transport-wlan.c
===================================================================
--- gnunet/src/transport/gnunet-helper-transport-wlan.c 2012-11-16 15:37:03 UTC 
(rev 25006)
+++ gnunet/src/transport/gnunet-helper-transport-wlan.c 2012-11-16 16:05:25 UTC 
(rev 25007)
@@ -1867,6 +1867,22 @@
   struct MessageStreamTokenizer *stdin_mst;
   int raw_eno;
 
+  /* assert privs so we can modify the firewall rules! */
+  uid = getuid ();
+#ifdef HAVE_SETRESUID
+  if (0 != setresuid (uid, 0, 0))
+  {
+    fprintf (stderr, "Failed to setresuid to root: %s\n", strerror (errno));
+    return 254;
+  }
+#else
+  if (0 != seteuid (0)) 
+  {
+    fprintf (stderr, "Failed to seteuid back to root: %s\n", strerror (errno));
+    return 254;
+  }
+#endif
+
   /* make use of SGID capabilities on POSIX */
   memset (&dev, 0, sizeof (dev));
   dev.fd_raw = socket (PF_PACKET, SOCK_RAW, htons (ETH_P_ALL));




reply via email to

[Prev in Thread] Current Thread [Next in Thread]