Bug 58077 - cannot login after pam upgrade to 0.75-19 (and 0.75-20)
Summary: cannot login after pam upgrade to 0.75-19 (and 0.75-20)
Keywords:
Status: CLOSED NOTABUG
Alias: None
Product: Red Hat Linux
Classification: Retired
Component: pam
Version: 7.2
Hardware: athlon
OS: Linux
high
medium
Target Milestone: ---
Assignee: Nalin Dahyabhai
QA Contact: Aaron Brown
URL:
Whiteboard:
Depends On:
Blocks:
TreeView+ depends on / blocked
 
Reported: 2002-01-07 23:20 UTC by pogosyan
Modified: 2007-03-27 03:50 UTC (History)
0 users

Fixed In Version:
Doc Type: Bug Fix
Doc Text:
Clone Of:
Environment:
Last Closed: 2002-01-08 03:00:10 UTC
Embargoed:


Attachments (Terms of Use)

Description pogosyan 2002-01-07 23:20:16 UTC
Description of Problem:
Cannot login via gdm, neither as root or as user.  gdm starts session
(any desktop) which exits immediately.  Can login on console,
 via xdm or startx.   However then unable to open any terminal in
desktop - terminal flashes on the screen and exits. Other applications
are working.

Sorry for openning this discussion again. 
 I have shadow, MD5 encrypted passwords, no NIS. 
 My password is 9 characters long, mixture of alphabethical and numerals and
'_'.

 I use 2.4.16-0.13 kernel and glibc-2.2.4-20 from rawhide
 on top of RH7.2 installation glibc

 My problem is that after I upgraded pam  (already with new kernel and
 glibc), I cannot login through gdm neither to root, nor to user account. My
user
 password is 8 characters, mixture of lower and upper case alphabethical.
 Session is getting setup and immediately exits. I run gdm with debug unabled
 - nothing suspicious - gdm sets cookie to .Xauthority,
 runs /etc/X11/gdm/Init/Default and session
 immediately exits after that (it does not matter what desktop I choose).

 It has to do with authentication, since I can run plain startx or xdm all right
 - I'm getting Gnome desktop. However, I'm unable to open any terminals
 then - any of them (gnome-terminal,rxvt, xterm) just blink on the screen
 and disappear.  I can however run Netscape and many other applications.

 Dowgrading pam back to RH7.2 or RH7.1 version did not help.  Neither did
 changing pam_unix to pam_pwdb   as was suggested in other bug
 discussion.  

I'm pretty certain system worked with RH7.2 + kernel 2.4.16-0.13 +
glibc-2.2.4-20 .
I'm fairly lost in what could go wrong.

I also have problem that su run as normal user does not switch to root.
Root password is accepted, but priveleges not granted.  su -l root
works fine.



Version-Release number of selected component (if applicable):
pam-0.75-19 from RH7.2 upgrade and pam-0.75-20 from rawhide

How Reproducible:
always

Steps to Reproduce:
1.  try to login
2. 
3. 

Actual Results:
session attempts to start and exists

Expected Results:


Additional Information:

Comment 1 pogosyan 2002-01-08 03:00:04 UTC
Hm, maybe it is not pam related.   Here is the (end of) 
strace of the xterm which opens and immediately disappers

------------
ioctl(1, 0x5401, {B38400 opost isig icanon echo ...}) = 0
ioctl(1, 0x5401, {B38400 opost isig icanon echo ...}) = 0
ioctl(1, 0x5413, {ws_row=24, ws_col=80, ws_xpixel=720, ws_ypixel=384}) = 0
rt_sigaction(SIGCHLD, {SIG_IGN}, {SIG_DFL}, 8) = 0
fork()                                  = 6284
--- SIGCHLD (Child exited) ---
wait4(6284, 0xbfffe6fc, 0, NULL)        = -1 ECHILD (No child processes)
rt_sigaction(SIGCHLD, {SIG_DFL}, {SIG_IGN}, 8) = 0
fork()                                  = 6285
rt_sigaction(SIGHUP, {SIG_IGN}, {SIG_DFL}, 8) = 0
rt_sigaction(SIGINT, {0x806df80, [INT], SA_RESTART|0x4000000}, {SIG_DFL}, 8) =
0rt_sigaction(SIGQUIT, {0x806df80, [QUIT], SA_RESTART|0x4000000}, {SIG_DFL}, 8)
= 0
rt_sigaction(SIGTERM, {0x806df80, [TERM], SA_RESTART|0x4000000}, {SIG_DFL}, 8) =
0
rt_sigaction(SIGPIPE, {0x806df80, [PIPE], SA_RESTART|0x4000000}, {SIG_DFL}, 8) =
0
rt_sigaction(SIGCHLD, {0x806e190, [CHLD], SA_RESTART|0x4000000}, {SIG_DFL}, 8) =
0
fcntl64(0x4, 0x3, 0, 0x4)               = 2
fcntl64(0x4, 0x4, 0x802, 0x4)           = 0
write(3, "\22\0\7\0\16\0\300\3\301\0\0\0\4\0\0\0 \0\0\0\1\0\0\0\277"..., 116) =
116
select(4, [3], [], [], {0, 0})          = 0 (Timeout)
select(5, [3 4], [], NULL, {0, 0})      = 0 (Timeout)
select(4, [3], [], [], {0, 0})          = 0 (Timeout)
select(4, [3], [], [], {0, 0})          = 0 (Timeout)
select(4, [3], [], [], {0, 0})          = 0 (Timeout)
ioctl(3, 0x541b, [0])                   = 0
write(3, "\2\0\4\0\16\0\300\3\0\10\0\0001\0b\0\34\1\6\0\25\0\300"..., 320) =
320ioctl(3, 0x541b, [0])                   = 0
select(4, [3], [], [], {0, 0})          = 0 (Timeout)
ioctl(3, 0x541b, [0])                   = 0
ioctl(3, 0x541b, [0])                   = 0
select(4, [3], [], [], {0, 0})          = 0 (Timeout)
select(5, [3 4], [], NULL, NULL)        = 1 (in [4])
--- SIGCHLD (Child exited) ---
wait4(-1, NULL, 0, NULL)                = 6285
rt_sigaction(SIGCHLD, {0x806e190, [CHLD], SA_RESTART|0x4000000}, {0x806e190,
[CHLD], SA_RESTART|0x4000000}, 8) = 0
kill(-6285, SIGHUP)                     = -1 ESRCH (No such process)
rt_sigaction(SIGCHLD, {SIG_IGN}, {0x806e190, [CHLD], SA_RESTART|0x4000000}, 8) =
0
fork()                                  = 6305
wait4(6305, NULL, 0, NULL)              = 6305
rt_sigaction(SIGCHLD, {0x806e190, [CHLD], SA_RESTART|0x4000000}, {SIG_IGN}, 8) =
0
close(4)                                = 0
chown32(0x8086698, 0, 0)                = -1 ENOENT (No such file or directory)
chmod("/dev/pts/2", 0666)               = -1 ENOENT (No such file or directory)
_exit(0)                                = ?
----------------------------



as opposite to succesful launch

--------------------------

ioctl(1, TCGETS, {B38400 opost isig icanon echo ...}) = 0
ioctl(1, TCGETS, {B38400 opost isig icanon echo ...}) = 0
ioctl(1, TIOCGWINSZ, {ws_row=24, ws_col=80, ws_xpixel=720, ws_ypixel=384}) = 0
rt_sigaction(SIGCHLD, {SIG_IGN}, {SIG_DFL}, 8) = 0
fork()                                  = 29925
wait4(29925, [WIFEXITED(s) && WEXITSTATUS(s) == 0], 0, NULL) = 29925
--- SIGCHLD (Child exited) ---
rt_sigaction(SIGCHLD, {SIG_DFL}, {SIG_IGN}, 8) = 0
fork()                                  = 29926
rt_sigaction(SIGHUP, {SIG_IGN}, {SIG_DFL}, 8) = 0
rt_sigaction(SIGINT, {0x806d4a0, [INT], SA_RESTART|0x4000000}, {SIG_DFL}, 8) =
0rt_sigaction(SIGQUIT, {0x806d4a0, [QUIT], SA_RESTART|0x4000000}, {SIG_DFL}, 8)
= 0
rt_sigaction(SIGTERM, {0x806d4a0, [TERM], SA_RESTART|0x4000000}, {SIG_DFL}, 8) =
0
rt_sigaction(SIGPIPE, {0x806d4a0, [PIPE], SA_RESTART|0x4000000}, {SIG_DFL}, 8) =
0
rt_sigaction(SIGCHLD, {0x806d6b0, [CHLD], SA_RESTART|0x4000000}, {SIG_DFL}, 8) =
0
fcntl64(4, F_GETFL)                     = 0x2 (flags O_RDWR)
fcntl64(4, F_SETFL, O_RDWR|O_NONBLOCK)  = 0
write(3, "\22\0\7\0\16\0\300\3\301\0\0\0\4\0\0\0 \0\0\0\1\0\0\0\277"..., 116) =
116
select(4, [3], [], [], {0, 0})          = 1 (in [3], left {0, 0})
select(5, [3 4], [], NULL, {0, 0})      = 1 (in [3], left {0, 0})
select(4, [3], [], [], {0, 0})          = 1 (in [3], left {0, 0})
select(4, [3], [], [], {0, 0})          = 1 (in [3], left {0, 0})
select(4, [3], [], [], {0, 0})          = 1 (in [3], left {0, 0})
ioctl(3, FIONREAD, [64])                = 0
read(3, "\34\0`\0\16\0\300\3\301\0\0\0o\351\367C\0\0\0\0\0\0\0\0"..., 64) = 64
 
and further on

-----------------------------

Why did selcts timed out ???   adn why wait4 are in wrong order ?
Actaully xterm does not exit cleanly - it leave X connection open.

Comment 2 pogosyan 2002-01-10 08:43:24 UTC
Sorry, I solved my problem.
One custom script in /etc/profile.d   had 'exit' statement,
which, with the script having executable permission, was
actually closing the program  which  was sourcing it.


Changing 'exit' to 'return' solved all the problems.


Note You need to log in before you can comment on or make changes to this bug.