drapeau@jessica.Stanford.EDU (George D. Drapeau) (01/06/90)
Sorry to bog the network with this question; I'm sure there's a simple answer but I'm too frazzled to figure it out. Here's my setup: sparcstation1, SunOS4.0.3, installed X11R4 differently than prescribed. Here are the changes in my site.def file: #ifndef DestDir #define DestDir /usr/local/X11R4 #endif #ifndef UsrLibDir #define UsrLibDir $(DESTDIR)/lib #endif #ifndef BinDir #define BinDir $(DESTDIR)/bin #endif #ifndef IncRoot #define IncRoot $(DESTDIR)/include #endif #ifndef LibDir #define LibDir $(DESTDIR)/lib #endif The result is that binaries are in /usr/local/X11R4/bin, libraries in /usr/local/X11R4/lib. I have LD_LIBRARY_PATH set to "/usr/local/X11R4/lib:/usr/lib" Okay, the problem is this: the server (Xsun) starts fine. However, when I try to run xterm, I get the following message: ld.so: libXaw.so.4: not found So I did the following: cd /usr/local/X11R4/bin ldd xterm I get nothing as a response, when I expect to see something like this: -lXaw.4 => /usr/local/X11R4/lib/libXaw.so.4.0 -lXmu.4 => /usr/local/X11R4/lib/libXmu.so.4.0 -lXt.4 => /usr/local/X11R4/lib/libXt.so.4.0 -lX11.4 => /usr/local/X11R4/lib/libX11.so.4.2 -lc.1 => /usr/lib/libc.so.1.3 However, if as root I unset the setuid bit for xterm (i.e., if I do "chmod u-s /usr/local/X11R4/bin/xterm"), then ldd shows me the shared libraries as I'd expect. One more thing: if I am root, then ldd returns what I'd expect whether or not the setuid bit on xterm is set. What did I do wrong? What's happening? Why does the setuid bit make a difference? Did I install something wrong? Any help whatsoever would be appreciated. Thanks in advance and I apologize in advance if this turns out to be a really bonehead question. ______________________________________________________________________________ George D. Drapeau Internet: drapeau@jessica.stanford.edu Academic Information Resources Stanford University
) (01/06/90)
In article <8023@portia.Stanford.EDU> drapeau@jessica.Stanford.EDU (George D. Drapeau) writes: >I have LD_LIBRARY_PATH set to "/usr/local/X11R4/lib:/usr/lib" ... >However, if as root I unset the setuid bit for xterm (i.e., if I do >"chmod u-s /usr/local/X11R4/bin/xterm"), then ldd shows me the shared >libraries as I'd expect. > >One more thing: if I am root, then ldd returns what I'd expect >whether or not the setuid bit on xterm is set. LD_LIBRARY_PATH is not honored for setuid programs (it would be a security hole). -- David DiGiacomo, Sun Microsystems, Mt. View, CA sun!david david@eng.sun.com