summaryrefslogtreecommitdiff
path: root/src/attacher.c
diff options
context:
space:
mode:
authorAmadeusz Sławiński <amade@asmblr.net>2014-04-26 18:20:37 +0200
committerAmadeusz Sławiński <amade@asmblr.net>2014-04-26 18:20:37 +0200
commit15a7b5b667a06492cc6250a49fe8159f77937b3f (patch)
tree0552964629adbaaf0b77cecbfb74cb986ce74222 /src/attacher.c
parent12dd363fc5bd1d89bbf53f552c06e80ca0d39432 (diff)
downloadscreen-15a7b5b667a06492cc6250a49fe8159f77937b3f.tar.gz
Revert "fix-utf8-status-padding-bug"
This reverts commit e9e78d9b2b413337d9f783ad9a514c8accd25ac9.
Diffstat (limited to 'src/attacher.c')
-rw-r--r--src/attacher.c52
1 files changed, 14 insertions, 38 deletions
diff --git a/src/attacher.c b/src/attacher.c
index 8847d5d..7159c7f 100644
--- a/src/attacher.c
+++ b/src/attacher.c
@@ -185,8 +185,8 @@ int how;
if (ret == SIG_POWER_BYE)
{
int ppid;
- if (setgid(real_gid) || setuid(real_uid))
- Panic(errno, "setuid/gid");
+ setgid(real_gid);
+ setuid(real_uid);
if ((ppid = getppid()) > 1)
Kill(ppid, SIGHUP);
exit(0);
@@ -282,10 +282,7 @@ int how;
#ifdef MULTIUSER
if (!multiattach)
#endif
- {
- if (setuid(real_uid))
- Panic(errno, "setuid");
- }
+ setuid(real_uid);
#if defined(MULTIUSER) && defined(USE_SETEUID)
else
{
@@ -293,8 +290,7 @@ int how;
xseteuid(real_uid); /* multi_uid, allow backend to send signals */
}
#endif
- if (setgid(real_gid))
- Panic(errno, "setgid");
+ setgid(real_gid);
eff_uid = real_uid;
eff_gid = real_gid;
@@ -490,8 +486,7 @@ AttacherFinit SIGDEFARG
#ifdef MULTIUSER
if (tty_oldmode >= 0)
{
- if (setuid(own_uid))
- Panic(errno, "setuid");
+ setuid(own_uid);
chmod(attach_tty, tty_oldmode);
}
#endif
@@ -509,14 +504,11 @@ AttacherFinitBye SIGDEFARG
if (multiattach)
exit(SIG_POWER_BYE);
#endif
- if (setgid(real_gid))
- Panic(errno, "setgid");
+ setgid(real_gid);
#ifdef MULTIUSER
- if (setuid(own_uid))
- Panic(errno, "setuid");
+ setuid(own_uid);
#else
- if (setuid(real_uid))
- Panic(errno, "setuid");
+ setuid(real_uid);
#endif
/* we don't want to disturb init (even if we were root), eh? jw */
if ((ppid = getppid()) > 1)
@@ -687,14 +679,11 @@ static sigret_t
LockHup SIGDEFARG
{
int ppid = getppid();
- if (setgid(real_gid))
- Panic(errno, "setgid");
+ setgid(real_gid);
#ifdef MULTIUSER
- if (setuid(own_uid))
- Panic(errno, "setuid");
+ setuid(own_uid);
#else
- if (setuid(real_uid))
- Panic(errno, "setuid");
+ setuid(real_uid);
#endif
if (ppid > 1)
Kill(ppid, SIGHUP);
@@ -721,14 +710,11 @@ LockTerminal()
if ((pid = fork()) == 0)
{
/* Child */
- if (setgid(real_gid))
- Panic(errno, "setgid");
+ setgid(real_gid);
#ifdef MULTIUSER
- if (setuid(own_uid))
- Panic(errno, "setuid");
+ setuid(own_uid);
#else
- if (setuid(real_uid)) /* this should be done already */
- Panic(errno, "setuid");
+ setuid(real_uid); /* this should be done already */
#endif
closeallfiles(0); /* important: /etc/shadow may be open */
execl(prg, "SCREEN-LOCK", NULL);
@@ -861,7 +847,6 @@ screen_builtin_lck()
#ifdef USE_PAM
pam_handle_t *pamh = 0;
int pam_error;
- char *tty_name;
#endif
char *pass = 0, mypass[16 + 1], salt[3];
int using_pam = 1;
@@ -947,15 +932,6 @@ screen_builtin_lck()
pam_error = pam_start("screen", ppp->pw_name, &PAM_conversation, &pamh);
if (pam_error != PAM_SUCCESS)
AttacherFinit(SIGARG); /* goodbye */
-
- if (strncmp(attach_tty, "/dev/", 5) == 0)
- tty_name = attach_tty + 5;
- else
- tty_name = attach_tty;
- pam_error = pam_set_item(pamh, PAM_TTY, tty_name);
- if (pam_error != PAM_SUCCESS)
- AttacherFinit(SIGARG); /* goodbye */
-
pam_error = pam_authenticate(pamh, 0);
pam_end(pamh, pam_error);
PAM_conversation.appdata_ptr = 0;