Index: src/main.c
===================================================================
RCS file: /cvsroot/squid/squid/src/main.c,v
retrieving revision 1.65
diff -u -r1.65 main.c
--- src/main.c	12 Jul 2006 07:51:40 -0000	1.65
+++ src/main.c	17 Jul 2006 08:18:33 -0000
@@ -34,10 +34,6 @@
  */
 
 #include "squid.h"
-#ifdef LINUX_TPROXY
-#include <sys/capability.h>
-#include <sys/prctl.h>
-#endif
 
 #if defined(USE_WIN32_SERVICE) && defined(_SQUID_WIN32_)
 #include <windows.h>
@@ -480,13 +476,7 @@
 static void
 setEffectiveUser(void)
 {
-#if LINUX_TPROXY
-    if (need_linux_tproxy) {
-	if (prctl(PR_SET_KEEPCAPS, 1, 0, 0, 0)) {
-	    debug(0, 1) ("Error - tproxy support requires capability setting which has failed.  Continuing without tproxy support\n");
-	}
-    }
-#endif
+    keepCapabilities();
     leave_suid();		/* Run as non privilegied user */
 #ifdef _SQUID_OS2_
     return;
Index: src/protos.h
===================================================================
RCS file: /cvsroot/squid/squid/src/protos.h,v
retrieving revision 1.114
diff -u -r1.114 protos.h
--- src/protos.h	5 Jul 2006 07:55:02 -0000	1.114
+++ src/protos.h	17 Jul 2006 08:18:36 -0000
@@ -1188,6 +1188,7 @@
 
 void setUmask(mode_t mask);
 int xusleep(unsigned int usec);
+void keepCapabilities();
 
 #if USE_HTCP
 extern void htcpInit(void);
Index: src/tools.c
===================================================================
RCS file: /cvsroot/squid/squid/src/tools.c,v
retrieving revision 1.44
diff -u -r1.44 tools.c
--- src/tools.c	30 Jun 2006 21:52:15 -0000	1.44
+++ src/tools.c	17 Jul 2006 08:18:37 -0000
@@ -1292,3 +1292,13 @@
     sl.tv_usec = usec % 1000000;
     return select(0, NULL, NULL, NULL, &sl);
 }
+
+void keepCapabilities() {
+#if LINUX_TPROXY
+    if (need_linux_tproxy) {
+	if (prctl(PR_SET_KEEPCAPS, 1, 0, 0, 0)) {
+            debug(1, 1) ("Error - tproxy support requires capability setting which has failed.  Continuing without tproxy support\n");
+	}
+    }
+#endif
+}