lynx-dev
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: lynx-dev Lynx 2.8.3 with nmh problems


From: Michael Abraham Shulman
Subject: Re: lynx-dev Lynx 2.8.3 with nmh problems
Date: Sun, 07 May 2000 22:14:49 -0700

"Klaus" == Klaus Weide <address@hidden> writes:

Klaus> I expect that, with GLOBAL_MAILCAP set to /dev/null, lynx will
Klaus> start up fine, but then anything you do whithin lynx that
Klaus> requires a temp file will fail.

That it does.

Klaus> Is any of the involved programs setuid or setgid?  (mhnshow,
Klaus> metamail, lynx) They shouldn't of course.

Nope.

Klaus> What are the permissions/ownership on /tmp itself?

drwxrwxrwt   13 root     root         1024 May  7 15:11 tmp

Klaus> Are you trying all this as a normal user, or as root?

Normal user.

Klaus> As well as the processes (try ps, and especially "cat
Klaus> /proc/<pid>/status" - that should show all the uid/gid sets -
Klaus> and other stuff under /proc/<pid>).

/proc/... says everything is running as uid/gid 1000 (that's me).
Plus both straces have lines like
  getuid() = 1000
and
  geteuid() = 1000

Klaus> If the "GLOBAL_MAILCAP:/dev/null" acts as I expect (temp file
Klaus> creations still fail), you can bring up lynx in both ways
Klaus> (direct and via mhnshow), and then examine the directories at
Klaus> your leisure from another window or console.

Okay, here's a partial explanation.  When invoked through nmh, the
temporary directory's permissions appear to be not 700 but 600, even
though the strace clearly calls mkdir with mode 700.  Obviously this
prevents creation of the temporary file.

drw-------    2 mas      mas          1024 May  7 16:46 pN5pOH

I don't see anything in the strace that could be causing this, though.
When run directly, the mode is 700 as it should be.

Klaus> Also, under strace you would get longer traces to compare - a
Klaus> difference has to show up somewhere...

I did my best to eliminate differences between the two.  Started in
the same directory, viewing the same file name with same contents,
same null config file.  In both cases I started lynx (once through
mhshow, once directly), hit Backspace for history, then `q' and `y' to
end the session.  The only differences between the straces I can find
(with ediff) are:

* Filehandle numbers
* PIDs
* Times of day and execution times
* Name of Lynx's temporary directory and temporary file
* Pointer addresses
* When invoked directly, the "Are you sure you want to quit?" message
  has more console escapes in it:
    write(1, "\r\33[0;10m\33[1m\33[33m\33[44mAre you su"..., 57) = 57
  versus
    write(1, "\rAre you sure you want to quit? "..., 56) = 56
  and then later we have
    write(1, "\r\33[0;10m\33[30m\33[47m\33[K", 21) = 21
  versus
    write(1, "\r\33[K", 4)                  = 4
* When invoked directly, the history command works, and when invoked
  through mhshow, it doesn't!

I must admit to absolute cluelessness about what could be changing the
directory mode.  Any suggestions on how I could find out when it
happens or who does it?

Klaus> What happens if you create a temp directory somewhere (in the
Klaus> user's home space), with regular permissions for the user, and
Klaus> direct TMPDIR/ LYNX_TEMP_SPACE to that?

The same thing as when it's /tmp.  The new directory has mode 700 when
run directly, mode 600 when run by mhshow.

Thanks for the help.

\\// | R | T R | L B | /\ mailto:address@hidden
 \/ (Michael Shulman) //\\ http://kurukshetra.cjb.net/

A committee is a group that keeps minutes and loses hours.
        -- Milton Berle

; To UNSUBSCRIBE: Send "unsubscribe lynx-dev" to address@hidden

reply via email to

[Prev in Thread] Current Thread [Next in Thread]