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