Hello,
I have a question about this bug[1].
There are no changes at sysdeputil.c between vsftpd/3.0.2-14 and
vsftpd/3.0.2-15.
Have one a hint where I must search this problem?
Many thanks...
CU
Jörg
#### build error ####
gcc -c sysdeputil.c -g -O2 -fstack-protector --param=ssp-buffer-size=4 -Wformat -Werror=format-security -D_FORTIFY_SOURCE=2 -idirafter dummyinc
sysdeputil.c: In function 'do_checkcap':
sysdeputil.c:622:3: error: unknown type name 'cap_t'
cap_t current_caps = cap_get_proc();
^
sysdeputil.c:624:20: warning: comparison between pointer and integer
if (current_caps != NULL)
#### end of build error ####
#### sysdeputil.c ####
#if defined(__linux__) && !defined(__ia64__) && !defined(__s390__)
#define VSF_SYSDEP_TRY_LINUX_SETPROCTITLE_HACK
#include <linux/version.h>
#if defined(LINUX_VERSION_CODE) && defined(KERNEL_VERSION)
#if (LINUX_VERSION_CODE >= KERNEL_VERSION(2,2,0))
#define VSF_SYSDEP_HAVE_CAPABILITIES
#define VSF_SYSDEP_HAVE_LINUX_SENDFILE
#ifdef PR_SET_KEEPCAPS
#define VSF_SYSDEP_HAVE_SETKEEPCAPS
#endif
#ifdef PR_SET_PDEATHSIG
#define VSF_SYSDEP_HAVE_SETPDEATHSIG
#endif
#endif
#endif
#endif
[...]
/* Prefer libcap based capabilities over raw syscall capabilities */
#include <sys/capability.h>
#if defined(VSF_SYSDEP_HAVE_CAPABILITIES) && !
defined(VSF_SYSDEP_HAVE_LIBCAP)
#include <linux/unistd.h>
#include <linux/capability.h>
#include <errno.h>
#include <syscall.h>
int capset(cap_user_header_t header, const cap_user_data_t data)
{
return syscall(__NR_capset, header, data);
}
/* Gross HACK to avoid warnings - linux headers overlap glibc headers */
#undef __NFDBITS
#undef __FDMASK
#endif /* VSF_SYSDEP_HAVE_CAPABILITIES */
#### end of sysdeputil.c ####
[1] https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=756794
--
pgp Fingerprint: 7D13 3C60 0A10 DBE1 51F8 EBCB 422B 44B0 BE58 1B6E
pgp Key: BE581B6E
CAcert Key S/N: 0E:D4:56
Jörg Frings-Fürst
D-54526 Niederkail
Threema: SYR8SJXB
IRC: j_f-f@freenode.net
j_f-f@oftc.net
Attachment:
signature.asc
Description: This is a digitally signed message part