Interesting process tracing glitch

Colin Plumb (colin@nyx.net)
Wed, 11 Mar 1998 23:27:20 -0700 (MST)


I was trying to debug Samba printing, so I attached an strace -f
to the smbd server. This causes execve("/usr/bin/lpr") to fail with
EPERM, which makes firther debugging difficult.

It's casued by the check in fs/exec.c that we can't start
a suid process if we're traced and not root. Samba changes
uid to the user doing the printing before firing off lpr,
which catches the problem.

Two questions:
- Would it be better to just turn off tracing in such a situation
rather than alter program behaviour?
- Shouldn't the test be against the permissions of the tracing
process, not the process being traced?

Anyway, it led me on a wild goose chase for a while, and I'm not sure
if the current behaviout is a Good Thing. Comments?

-- 
	-Colin

- To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to majordomo@vger.rutgers.edu