Zsh Mailing List Archive
Messages sorted by: Reverse Date, Date, Thread, Author

question about setting UIDs



In zsh, I can overwrite the UID, EUID varaibles to change the user
ids under which the script runs.  From the man page it is not
clear under which circumstances the saved uid is adjusted.  I.e.
can the script switch back return to the original UID/EUID?

When I run a shell or script as root (ruid = euid = svuid = 0),
setting the EUID allows me to switch back:

  $ echo $UID $EUID
  0 0
  $ EUID=1000; echo $UID $EUID
  0 1000
  $ EUID=0; echo $UID $EUID
  0 0

but settig UID does not:

  $ echo $UID $EUID
  0 0
  $ UID=1000; echo $UID $EUID
  1000 1000
  $ UID=0; echo $UID $EUID
  1000 1000

(All on linux-2.6).

Are there any guarantees that

 1) Setting EUID is reversible (at least on systems that have the
    seteuid() system call)?
 2) Setting UID is not reversible (on what kinds of system)?
 
Ciao

Dominik ^_^  ^_^

 --
Dominik Vogt, dominik.vogt@xxxxxx

Attachment: pgpZmV3DtRHxh.pgp
Description: PGP signature



Messages sorted by: Reverse Date, Date, Thread, Author