> It looks like you're tripping over perl's "dataflow security" code.
> This probably means there's a problem with the "wrapper" program.
Thanks, this was the problem.
> Is "wrapper" installed set-uid and set-gid as the Makefile shows?
> What OS and release are you running?
Silicon Graphics' IRIX 4.0.1
> If your system as "id" (it's "/usr/bin/id" under SunOS 4.x), symlink
> it into the W_BIN directory, and do "wrapper id" to see what it tells
> you. It should tell you that it's running with the uid defined as
> W_USER in the Makefile, and group W_GROUP. If it's not, then wrapper
> isn't working on your system; you may need to fiddle with the "setuid"
> and "setgid" stuff within it to get the desired effect.
setuid on IRIX seems "strange":
if euid is 0, then ruid and euid are set.
if euid is not 0, then euid is set *only* to ruid or to saved euid.
In otherwords, the setuid(geteuid()) call was failing, because setuid
doesn't allow this. I changed the code to setruid(geteuid) and it works fine.
I suspect this is the SYSV semantics of the setuid() call; I've replied to
the list because others may run into the same problem.
Thanks for the pointers; I had assumed (incorrectly) that wrapper was
Main's Law: For every | C. Harald Koch Alias Research, Inc. Toronto, ON
action, there is an equal | firstname.lastname@example.org (work-related mail)
and opposite goverment | email@example.com (permanent address)
program. | VE3TLA@VE3OY.#SCON.ON.CA.NA (AMPRNet)