summaryrefslogtreecommitdiff
blob: 991375c636cdf224eb56ffadbf2320426ff33e2c (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
diff -Naurb samba-3.0.28.orig/source/configure.in samba-3.0.28/source/configure.in
--- samba-3.0.28.orig/source/configure.in	2007-11-21 04:58:01.000000000 +0100
+++ samba-3.0.28/source/configure.in	2008-02-20 14:31:05.167709211 +0100
@@ -2663,6 +2663,7 @@
 if test x"$samba_cv_HAVE_POSIX_CAPABILITIES" = x"yes"; then
     AC_DEFINE(HAVE_POSIX_CAPABILITIES, 1,
 	    [Whether POSIX capabilities are available])
+    AC_CHECK_DECLS([capget], , , [#include <sys/capability.h>])
 else
     LIBS=$ac_save_LIBS
 fi
diff -Naurb samba-3.0.28.orig/source/include/config.h.in samba-3.0.28/source/include/config.h.in
--- samba-3.0.28.orig/source/include/config.h.in	2007-12-10 17:04:29.000000000 +0100
+++ samba-3.0.28/source/include/config.h.in	2008-02-20 14:32:41.246837408 +0100
@@ -1211,6 +1211,9 @@
 /* Whether POSIX capabilities are available */
 #undef HAVE_POSIX_CAPABILITIES
 
+/* Whether the capget (and capset) function is available (libcap-2.x has it) */
+#undef HAVE_DECL_CAPGET
+
 /* Whether posix_fadvise is available */
 #undef HAVE_POSIX_FADVISE
 
diff -Naurb samba-3.0.28.orig/source/smbd/oplock_linux.c samba-3.0.28/source/smbd/oplock_linux.c
--- samba-3.0.28.orig/source/smbd/oplock_linux.c	2007-11-15 04:15:04.000000000 +0100
+++ samba-3.0.28/source/smbd/oplock_linux.c	2008-02-20 14:31:48.327720338 +0100
@@ -34,10 +34,12 @@
 	uint32 inheritable;
 } data;
 
+#if defined HAVE_DECL_CAPGET && !HAVE_DECL_CAPGET
 extern int capget(struct cap_user_header * hdrp,
 		  struct cap_user_data * datap);
 extern int capset(struct cap_user_header * hdrp,
 		  const struct cap_user_data * datap);
+#endif
 
 static SIG_ATOMIC_T signals_received;
 #define FD_PENDING_SIZE 100