Message ID | 1355122786-29243-4-git-send-email-maillist-qemu@barfooze.de |
---|---|
State | New |
Headers | show |
Am 10.12.2012 07:59, schrieb John Spencer: > this declaration is wrong: > the correct prototype on linux is: > int setgroups(size_t size, const gid_t *list); > > since by default musl libc exposes this symbol in unistd.h > additionally to grp.h, the wrong declaration causes a build error. > > the proper fix is to simply include the correct header. > > Signed-off-by: John Spencer<maillist-qemu@barfooze.de> > > --- > linux-user/syscall.c | 2 +- > 1 files changed, 1 insertions(+), 1 deletions(-) > > diff --git a/linux-user/syscall.c b/linux-user/syscall.c > index fabbcd7..665316e 100644 > --- a/linux-user/syscall.c > +++ b/linux-user/syscall.c > @@ -28,6 +28,7 @@ > #include<fcntl.h> > #include<time.h> > #include<limits.h> > +#include<grp.h> > #include<sys/types.h> > #include<sys/ipc.h> > #include<sys/msg.h> > @@ -585,7 +586,6 @@ extern int personality(int); > extern int flock(int, int); > extern int setfsuid(int); > extern int setfsgid(int); > -extern int setgroups(int, gid_t *); > > /* ARM EABI and MIPS expect 64bit types aligned even on pairs or registers */ > #ifdef TARGET_ARM > Reviewed-by: Stefan Weil <sw@weilnetz.de>
On Mon, Dec 10, 2012 at 07:59:46AM +0100, John Spencer wrote: > this declaration is wrong: > the correct prototype on linux is: > int setgroups(size_t size, const gid_t *list); > > since by default musl libc exposes this symbol in unistd.h > additionally to grp.h, the wrong declaration causes a build error. > > the proper fix is to simply include the correct header. > > Signed-off-by: John Spencer <maillist-qemu@barfooze.de> > > --- > linux-user/syscall.c | 2 +- > 1 files changed, 1 insertions(+), 1 deletions(-) Thanks, applied Patch 4 to the trivial patches tree: https://github.com/stefanha/qemu/commits/trivial-patches Stefan
diff --git a/linux-user/syscall.c b/linux-user/syscall.c index fabbcd7..665316e 100644 --- a/linux-user/syscall.c +++ b/linux-user/syscall.c @@ -28,6 +28,7 @@ #include <fcntl.h> #include <time.h> #include <limits.h> +#include <grp.h> #include <sys/types.h> #include <sys/ipc.h> #include <sys/msg.h> @@ -585,7 +586,6 @@ extern int personality(int); extern int flock(int, int); extern int setfsuid(int); extern int setfsgid(int); -extern int setgroups(int, gid_t *); /* ARM EABI and MIPS expect 64bit types aligned even on pairs or registers */ #ifdef TARGET_ARM
this declaration is wrong: the correct prototype on linux is: int setgroups(size_t size, const gid_t *list); since by default musl libc exposes this symbol in unistd.h additionally to grp.h, the wrong declaration causes a build error. the proper fix is to simply include the correct header. Signed-off-by: John Spencer <maillist-qemu@barfooze.de> --- linux-user/syscall.c | 2 +- 1 files changed, 1 insertions(+), 1 deletions(-)