vsftpd was Re: Upgrade to Linux-2.6.18

Dan Nicholson dbn.lists at gmail.com
Thu Oct 19 23:28:46 PDT 2006


On 10/19/06, Dan Nicholson <dbn.lists at gmail.com> wrote:
> On 9/28/06, Jim Gifford <lfs at jg555.com> wrote:
> > Found the second on besides Dan's util-linux one. Vsftpd, caused by the
> > syscalls being removed from unistd.h, anyone got any ideas.
> > gcc  -m64 -c sysdeputil.c -O2 -Wall -W -Wshadow  -idirafter dummyinc
> > sysdeputil.c:162: error: expected declaration specifiers or '...' before
> > 'capset'
>
> Hey Jim. I don't know if you ever figured this one out. I'm not nearly
> cool enough to solve this the real way, but I looked at sysdeputil.c.
> I think one "solution" is to install libcap, which provides
> sys/capability.h. Then it will skip the whole _syscall2() call. libcap
> is here:
>
> http://www.kernel.org/pub/linux/libs/security/linux-privs/kernel-2.4/
>
> I haven't tested it, but it looks like it would do what you needed.
> The comments there suggest the same.

As a quick follow up to this "solution", I figured out why I didn't
see a solution in Fedora where I expected to see all these header
solutions. They link to libcap unconditionally, which skips the whole
syscall. They've been doing it for a long time. Part of the reason is
the using _syscall* directly can't result in PIC code on x86. I need
to get the Optional Dependency on libcap into BLFS.

--
Dan



More information about the lfs-dev mailing list