X-Git-Url: https://git.pld-linux.org/?a=blobdiff_plain;f=XFree86-Xwrapper.patch;h=f12ce2b703b8b831503730a73e0449f029c41d36;hb=1eaf2ae0bee48bf5270aff1de425cdecef42e1bd;hp=6d531b5a12bf2a512a24413d058c6e74ee92bc82;hpb=ed7f02912c197c3e0af0312421762a08dc45ad80;p=packages%2FX11.git diff --git a/XFree86-Xwrapper.patch b/XFree86-Xwrapper.patch index 6d531b5..f12ce2b 100644 --- a/XFree86-Xwrapper.patch +++ b/XFree86-Xwrapper.patch @@ -1,9 +1,9 @@ -diff -urN XFree86-4.0.1.orig/xc/config/cf/Server.tmpl XFree86-4.0.1/xc/config/cf/Server.tmpl ---- XFree86-4.0.1.orig/xc/config/cf/Server.tmpl Fri Feb 18 17:23:07 2000 -+++ XFree86-4.0.1/xc/config/cf/Server.tmpl Mon Jul 10 04:01:04 2000 -@@ -31,8 +31,14 @@ - #ifndef MakeDllModules - #define MakeDllModules NO +diff -urN xc.orig/config/cf/Server.tmpl xc/config/cf/Server.tmpl +--- xc.orig/config/cf/Server.tmpl Mon Dec 30 15:52:30 2002 ++++ xc/config/cf/Server.tmpl Mon Dec 30 17:31:51 2002 +@@ -25,8 +25,14 @@ + #ifndef DoThreadedServer + #define DoThreadedServer NO #endif +#ifndef XserverNeedsSetUID +#define XserverNeedsSetUID NO @@ -16,36 +16,36 @@ diff -urN XFree86-4.0.1.orig/xc/config/cf/Server.tmpl XFree86-4.0.1/xc/config/cf +#define InstallServerSetUID (XserverNeedsSetUID && !UseXserverWrapper) #endif - /* -diff -urN XFree86-4.0.1.orig/xc/config/cf/xf86site.def XFree86-4.0.1/xc/config/cf/xf86site.def ---- XFree86-4.0.1.orig/xc/config/cf/xf86site.def Mon Jul 10 03:59:05 2000 -+++ XFree86-4.0.1/xc/config/cf/xf86site.def Mon Jul 10 04:01:04 2000 -@@ -305,13 +305,15 @@ + #ifdef CrossCompileDir +diff -urN xc.orig/config/cf/xf86site.def xc/config/cf/xf86site.def +--- xc.orig/config/cf/xf86site.def Mon Dec 30 15:52:31 2002 ++++ xc/config/cf/xf86site.def Mon Dec 30 17:37:06 2002 +@@ -69,14 +69,15 @@ */ /* - * If you only run the X server under xdm the X servers don't need to be - * installed SetUID, and you may comment out the lines below. If you run - * the servers by hand (with xinit or startx), then they do need to be -- * installed SetUID on most OSs. -- * Consult your system administrator before making the X server setuid. +- * installed SetUID on most platforms. + * The X servers need to run as root on most OSs. We're now using a + * wrapper in that case, but we still need to make it known that the + * servers need SetUID. When only using xdm, this (and the wrapper) + * are not required. Disabling this automatically disables use of the + * wrapper. * --#define InstallXserverSetUID NO +- * Consult your system administrator before making the X server setuid. + * If you're only starting the Xservers with xdm set this to NO -+ * -+#define XserverNeedsSetUID NO + * +-#define InstallXserverSetUID NO ++#define XserverNeedsSetUID NO */ - /* -diff -urN XFree86-4.0.1.orig/xc/config/cf/xfree86.cf XFree86-4.0.1/xc/config/cf/xfree86.cf ---- XFree86-4.0.1.orig/xc/config/cf/xfree86.cf Mon Jul 10 03:59:05 2000 -+++ XFree86-4.0.1/xc/config/cf/xfree86.cf Mon Jul 10 04:01:04 2000 -@@ -550,12 +550,15 @@ + +diff -urN xc.orig/config/cf/xfree86.cf xc/config/cf/xfree86.cf +--- xc.orig/config/cf/xfree86.cf Mon Dec 30 15:52:31 2002 ++++ xc/config/cf/xfree86.cf Mon Dec 30 17:31:51 2002 +@@ -1104,12 +1104,15 @@ #endif /* @@ -65,12 +65,12 @@ diff -urN XFree86-4.0.1.orig/xc/config/cf/xfree86.cf XFree86-4.0.1/xc/config/cf/ # endif #endif -diff -urN XFree86-4.0.1.orig/xc/programs/Xserver/Imakefile XFree86-4.0.1/xc/programs/Xserver/Imakefile ---- XFree86-4.0.1.orig/xc/programs/Xserver/Imakefile Sat Jun 17 20:42:16 2000 -+++ XFree86-4.0.1/xc/programs/Xserver/Imakefile Mon Jul 10 04:01:33 2000 +diff -urN xc.orig/programs/Xserver/Imakefile xc/programs/Xserver/Imakefile +--- xc.orig/programs/Xserver/Imakefile Mon Dec 30 15:53:22 2002 ++++ xc/programs/Xserver/Imakefile Mon Dec 30 17:31:51 2002 @@ -4,11 +4,6 @@ */ - XCOMM $XFree86: xc/programs/Xserver/Imakefile,v 3.184 2000/06/17 00:03:10 martin Exp $ + XCOMM $XFree86: xc/programs/Xserver/Imakefile,v 3.275 2002/12/21 00:19:11 torrey Exp $ -#ifndef InstallXserverSetUID -#define InstallXserverSetUID NO @@ -80,30 +80,22 @@ diff -urN XFree86-4.0.1.orig/xc/programs/Xserver/Imakefile XFree86-4.0.1/xc/prog #include #ifdef XFree86Version -@@ -257,6 +252,7 @@ - SYSLIBS = $(ZLIB) MathLibrary Krb5Libraries DBMLibrary $(USB) \ - $(EXTRASYSLIBS) - #endif -+ PAMLIBS = -lpam -lpam_misc -ldl - CBRT = mi/LibraryTargetName(cbrt) - STDDIRS = include dix os mi $(XPDDXDIR) $(EXTDIRS) +@@ -1146,6 +1141,11 @@ + #endif /* XnestServer */ -@@ -1012,6 +1008,11 @@ - $(XVFBLIBS) $(LOADABLEEXTS) $(LIBCWRAPPER),$(XVFBSYSLIBS)) - #endif /* XVirtualFramebufferServer */ -+ +#if UseXserverWrapper +SetUIDProgramTarget(Xwrapper,os/wrapper.o,NullParameter,$(PAMLIBS),NullParameter) +InstallProgramWithFlags(Xwrapper,$(BINDIR),$(INSTUIDFLAGS)) +#endif - - CFBDIRS = $(CFB8DIR) $(CFB16DIR) $(CFB24DIR) $(CFB32DIR) - IPLANDIRS = $(IPLAN2P2DIR) $(IPLAN2P4DIR) $(IPLAN2P8DIR) -diff -urN XFree86-4.0.1.orig/xc/programs/Xserver/hw/xfree86/os-support/linux/lnx_init.c XFree86-4.0.1/xc/programs/Xserver/hw/xfree86/os-support/linux/lnx_init.c ---- XFree86-4.0.1.orig/xc/programs/Xserver/hw/xfree86/os-support/linux/lnx_init.c Fri Feb 25 19:28:11 2000 -+++ XFree86-4.0.1/xc/programs/Xserver/hw/xfree86/os-support/linux/lnx_init.c Mon Jul 10 04:01:04 2000 -@@ -65,7 +65,10 @@ ++ + #if defined(XnonServer) && XnonServer + XCOMM + XCOMM non server, just compile sources for build test +diff -urN xc.orig/programs/Xserver/hw/xfree86/os-support/linux/lnx_init.c xc/programs/Xserver/hw/xfree86/os-support/linux/lnx_init.c +--- xc.orig/programs/Xserver/hw/xfree86/os-support/linux/lnx_init.c Mon Dec 30 15:53:52 2002 ++++ xc/programs/Xserver/hw/xfree86/os-support/linux/lnx_init.c Mon Dec 30 17:31:51 2002 +@@ -66,7 +66,10 @@ /* check if we're run with euid==0 */ if (geteuid() != 0) { @@ -115,35 +107,27 @@ diff -urN XFree86-4.0.1.orig/xc/programs/Xserver/hw/xfree86/os-support/linux/lnx } /* -diff -urN XFree86-4.0.1.orig/xc/programs/Xserver/os/Imakefile XFree86-4.0.1/xc/programs/Xserver/os/Imakefile ---- XFree86-4.0.1.orig/xc/programs/Xserver/os/Imakefile Fri May 5 19:47:29 2000 -+++ XFree86-4.0.1/xc/programs/Xserver/os/Imakefile Mon Jul 10 04:01:33 2000 -@@ -110,6 +110,7 @@ - ERROR_DEFINES = ServerErrorDefines - DEFINES = -DXSERV_t -DTRANS_SERVER $(CONNECTION_FLAGS) $(MEM_DEFINES) $(XDMAUTHDEFS) $(RPCDEFS) $(SIGNAL_DEFINES) $(OS_DEFINES) $(KRB5_DEFINES) $(RGB_DEFINES) - INCLUDES = -I. -I../include -I$(XINCLUDESRC) -I$(EXTINCSRC) -I$(TOP)/lib/Xau -I../lbx Krb5Includes -+ EXTRA_DEFINES = -DUSE_PAM - DEPEND_DEFINES = $(DBM_DEFINES) $(XDMCP_DEFINES) $(EXT_DEFINES) $(TRANS_INCLUDES) $(CONNECTION_FLAGS) - LINTLIBS = ../dix/llib-ldix.ln - -@@ -153,6 +154,14 @@ - cc -c $(DBM_DEFINES) $(CDEBUGFLAGS) $(ALLDEFINES) $*.c - #else +diff -urN xc.orig/programs/Xserver/os/Imakefile xc/programs/Xserver/os/Imakefile +--- xc.orig/programs/Xserver/os/Imakefile Mon Dec 30 15:53:58 2002 ++++ xc/programs/Xserver/os/Imakefile Mon Dec 30 17:31:52 2002 +@@ -166,6 +167,14 @@ SpecialCObjectRule(oscolor,$(ICONFIGFILES),$(DBM_DEFINES)) -+#endif -+ + #endif + +#if UseXserverWrapper +AllTarget(wrapper.o) + + WRAPPER_DEFINES = -DXSERVER_PATH=\"/etc/X11/X\" + +SpecialCObjectRule(wrapper,NullParameter,$(WRAPPER_DEFINES)) - #endif - ++#endif ++ #if HasKrb5 -diff -urN XFree86-4.0.1.orig/xc/programs/Xserver/os/wrapper.c XFree86-4.0.1/xc/programs/Xserver/os/wrapper.c ---- XFree86-4.0.1.orig/xc/programs/Xserver/os/wrapper.c Thu Jan 1 01:00:00 1970 -+++ XFree86-4.0.1/xc/programs/Xserver/os/wrapper.c Mon Jul 10 04:01:33 2000 + LinkSourceFile(k5encode.c,$(XAUTHSRC)) + #endif +diff -urN xc.orig/programs/Xserver/os/wrapper.c xc/programs/Xserver/os/wrapper.c +--- xc.orig/programs/Xserver/os/wrapper.c Thu Jan 1 01:00:00 1970 ++++ xc/programs/Xserver/os/wrapper.c Mon Dec 30 17:31:52 2002 @@ -0,0 +1,304 @@ +/* + * X server wrapper. @@ -449,20 +433,32 @@ diff -urN XFree86-4.0.1.orig/xc/programs/Xserver/os/wrapper.c XFree86-4.0.1/xc/p + exit(1); +} + -diff -urN XFree86-4.0.1.orig/xc/programs/xinit/xinit.c XFree86-4.0.1/xc/programs/xinit/xinit.c ---- XFree86-4.0.1.orig/xc/programs/xinit/xinit.c Wed Apr 5 20:14:08 2000 -+++ XFree86-4.0.1/xc/programs/xinit/xinit.c Mon Jul 10 04:01:04 2000 -@@ -143,6 +143,7 @@ +diff -urN xc.orig/programs/xinit/startx.cpp xc/programs/xinit/startx.cpp +--- xc.orig/programs/xinit/startx.cpp Mon Dec 30 15:54:10 2002 ++++ xc/programs/xinit/startx.cpp Mon Dec 30 17:31:52 2002 +@@ -53,7 +53,7 @@ + sysclientrc=XINITDIR/xinitrc + sysserverrc=XINITDIR/xserverrc + defaultclient=BINDIR/xterm +-defaultserver=BINDIR/X ++defaultserver=BINDIR/Xwrapper + defaultclientargs="" + defaultserverargs="" + clientargs="" +diff -urN xc.orig/programs/xinit/xinit.c xc/programs/xinit/xinit.c +--- xc.orig/programs/xinit/xinit.c Mon Dec 30 15:54:10 2002 ++++ xc/programs/xinit/xinit.c Mon Dec 30 17:31:52 2002 +@@ -146,6 +146,7 @@ #define OK_EXIT 0 #define ERR_EXIT 1 +char *default_wrapper = BINDIR "/Xwrapper"; char *default_server = "X"; char *default_display = ":0"; /* choose most efficient */ - #ifndef __EMX__ -@@ -312,7 +313,10 @@ + char *default_client[] = {"xterm", "-geometry", "+1+1", "-n", "login", NULL}; +@@ -332,7 +333,10 @@ if (argc == 0 || - #ifndef __EMX__ + #ifndef __UNIXOS2__ (**argv != '/' && **argv != '.')) { - *sptr++ = default_server; + if (access(default_wrapper, X_OK) == 0) @@ -472,3 +468,4 @@ diff -urN XFree86-4.0.1.orig/xc/programs/xinit/xinit.c XFree86-4.0.1/xc/programs #else (**argv != '/' && **argv != '\\' && **argv != '.' && !(isalpha(**argv) && (*argv)[1]==':'))) { +