Opened 2 years ago

Closed 2 years ago

#13583 closed bug (fixed)

Attempting to su or login to another user (from Terminal) results in SIGKILL

Reported by: waddlesplash Owned by: nobody
Priority: normal Milestone: Unscheduled
Component: System Version: R1/Development
Keywords: Cc:
Blocked By: Blocking:
Has a Patch: no Platform: All

Description

Discovered while trying to write a new su implementation (and confimed present in the existing coreutils su and login.)

If you are in a Terminal session, and attempt to su or login to another (non-root) user, then the login process exits with "Killed (by death)" aka SIGKILL. I traced this to the execv call where it starts the shell (https://github.com/haiku/haiku/blob/master/src/bin/multiuser/login.cpp#L282).

This is hrev51234.

Change History (3)

comment:1 by waddlesplash, 2 years ago

Oh, sorry, forgot to mention: login/su to root (on root) works OK. login/su to another user (meaning, setuid/setgid are run) is what causes a problem here.

comment:2 by axeld, 2 years ago

I'd add a couple of dprintf() calls to exec_team(), and see where this leads to.

If the team is killed, it probably happens due to not being able to fully initialize the new executable/environment.

comment:3 by waddlesplash, 2 years ago

Resolution: fixed
Status: newclosed

Works now. Must've been caused by the bad umask.

Note: See TracTickets for help on using tickets.