Gaetan Nadon wrote: > AC_CHECK_FUNCS defines HAVE_SETUSERCONTEXT > > The replaced code made an incorrect assumption that it was only > availble on BSD-like systems. > > Signed-off-by: Gaetan Nadon <[email protected]> > --- > configure.ac | 11 +---------- > dm.h | 2 +- > session.c | 12 ++++++------ > 3 files changed, 8 insertions(+), 17 deletions(-) > > diff --git a/configure.ac b/configure.ac > index 127e53a..4c7f04e 100644 > --- a/configure.ac > +++ b/configure.ac > @@ -91,7 +91,7 @@ AC_TYPE_SIGNAL > # > # Required system libraries have been searched for and are listed in $LIBS > > #------------------------------------------------------------------------------ > -AC_CHECK_FUNCS([daemon sigaction openlog asprintf setproctitle]) > +AC_CHECK_FUNCS([daemon sigaction openlog asprintf setproctitle > setusercontext]) > > > #------------------------------------------------------------------------------ > > @@ -116,15 +116,6 @@ AC_CHECK_FUNC(getifaddrs, AC_DEFINE(HAS_GETIFADDRS,1, > AC_CHECK_FUNC(getspnam, AC_DEFINE(USESHADOW,1, > [Define to 1 if you have the shadow password functions.])) > > -# According to the old Imakefile, BSD/OS has this in libutil > -AC_CHECK_FUNC(setusercontext, [HAS_SETUSERCONTEXT="yes"], > - AC_CHECK_LIB(util, setusercontext, > - [HAS_SETUSERCONTEXT="yes" ; XDM_OS_LIBS="$XDM_OS_LIBS > -lutil"])) > -if test "x$HAS_SETUSERCONTEXT" = "xyes" ; then > - AC_DEFINE(HAS_SETUSERCONTEXT,1, > - [Define to 1 if you have the 'setusercontext' function.]) > -fi > - > XTRANS_CONNECTION_FLAGS > dnl Sets $SECURE_RPC to "yes" or "no" > XTRANS_SECURE_RPC_FLAGS > diff --git a/dm.h b/dm.h > index 502cbb9..6633248 100644 > --- a/dm.h > +++ b/dm.h > @@ -110,7 +110,7 @@ typedef union wait waitType; > > # ifdef CSRG_BASED > # include <sys/param.h> > -# ifdef HAS_SETUSERCONTEXT > +# ifdef HAVE_SETUSERCONTEXT > # include <login_cap.h> > # include <pwd.h> > # ifdef USE_BSDAUTH > diff --git a/session.c b/session.c > index ad216d3..e0ab4bc 100644 > --- a/session.c > +++ b/session.c > @@ -573,7 +573,7 @@ StartClient ( > char **f, *home; > char *failsafeArgv[2]; > pid_t pid; > -#ifdef HAS_SETUSERCONTEXT > +#ifdef HAVE_SETUSERCONTEXT > struct passwd* pwd; > #endif > #ifdef USE_PAM > @@ -641,7 +641,7 @@ StartClient ( > #endif > > #ifndef AIXV3 > -# ifndef HAS_SETUSERCONTEXT > +# ifndef HAVE_SETUSERCONTEXT > if (setgid (verify->gid) < 0) { > LogError ("setgid %d (user \"%s\") failed: %s\n", > verify->gid, name, _SysErrorMsg (errno)); > @@ -661,7 +661,7 @@ StartClient ( > return (0); > } > # endif /* QNX4 doesn't support multi-groups, no initgroups() */ > -# endif /* !HAS_SETUSERCONTEXT */ > +# endif /* !HAVE_SETUSERCONTEXT */ > > # ifdef USE_PAM > if (pamh) { > @@ -684,13 +684,13 @@ StartClient ( > } > # endif > > -# ifndef HAS_SETUSERCONTEXT > +# ifndef HAVE_SETUSERCONTEXT > if (setuid(verify->uid) < 0) { > LogError ("setuid %d (user \"%s\") failed: %s\n", > verify->uid, name, _SysErrorMsg (errno)); > return (0); > } > -# else /* HAS_SETUSERCONTEXT */ > +# else /* HAVE_SETUSERCONTEXT */ > /* > * Set the user's credentials: uid, gid, groups, > * environment variables, resource limits, and umask. > @@ -708,7 +708,7 @@ StartClient ( > name, _SysErrorMsg (errno)); > return (0); > } > -# endif /* HAS_SETUSERCONTEXT */ > +# endif /* HAVE_SETUSERCONTEXT */ > #else /* AIXV3 */ > /* > * Set the user's credentials: uid, gid, groups,
Reviewed-by: Alan Coopersmith <[email protected]> -- -Alan Coopersmith- [email protected] Oracle Solaris Platform Engineering: X Window System _______________________________________________ [email protected]: X.Org development Archives: http://lists.x.org/archives/xorg-devel Info: http://lists.x.org/mailman/listinfo/xorg-devel
