Bug 509931 - /usr/libexec/ck-get-x11-display-device segfaults
Summary: /usr/libexec/ck-get-x11-display-device segfaults
Keywords:
Status: CLOSED RAWHIDE
Alias: None
Product: Fedora
Classification: Fedora
Component: ConsoleKit
Version: rawhide
Hardware: All
OS: Linux
low
medium
Target Milestone: ---
Assignee: jmccann
QA Contact: Fedora Extras Quality Assurance
URL:
Whiteboard:
Depends On:
Blocks:
TreeView+ depends on / blocked
 
Reported: 2009-07-06 22:54 UTC by darrell pfeifer
Modified: 2015-01-14 23:23 UTC (History)
2 users (show)

Fixed In Version:
Doc Type: Bug Fix
Doc Text:
Clone Of:
Environment:
Last Closed: 2009-09-24 02:49:58 UTC
Type: ---
Embargoed:


Attachments (Terms of Use)

Description darrell pfeifer 2009-07-06 22:54:02 UTC
Description of problem:

/usr/libexec/ck-get-x11-display-device segfaults

Version-Release number of selected component (if applicable):

ConsoleKit-0.3.0-10.fc12.i586

How reproducible:

Happens every time at login. 


Steps to Reproduce:
1.
2.
3.
  
Actual results:


Expected results:


Additional info:

[darrell@localhost ~]$ ck-list-sessions
Session4:
	unix-user = '500'
	realname = 'darrell pfeifer'
	seat = 'Seat5'
	session-type = ''
	active = FALSE
	x11-display = ':0'
	x11-display-device = ''
	display-device = ''
	remote-host-name = ''
	is-local = TRUE
	on-since = '2009-07-06T15:56:08.908744Z'
	login-session-id = ''

I think this causes my active session to be false, which in turn causes polkit-gnome-* to fail.

[root@localhost gdm]# more :0-slave.log
*** buffer overflow detected ***: /usr/libexec/ck-get-x11-display-device terminated
======= Backtrace: =========
/lib/libc.so.6(__fortify_fail+0x4d)[0xb8419d]
/lib/libc.so.6[0xb8226a]
/lib/libc.so.6(__strncpy_chk+0x176)[0xb81856]
/usr/libexec/ck-get-x11-display-device[0x804a6d0]
/usr/libexec/ck-get-x11-display-device[0x804aad5]
/usr/libexec/ck-get-x11-display-device[0x8049151]
/lib/libc.so.6(__libc_start_main+0xe6)[0xaa2b26]
/usr/libexec/ck-get-x11-display-device[0x8048fc1]
======= Memory map: ========
00101000-0011c000 r-xp 00000000 fd:00 7684642    /usr/lib/libxcb.so.1.1.0
0011c000-0011d000 rw-p 0001b000 fd:00 7684642    /usr/lib/libxcb.so.1.1.0
0011f000-0024b000 r-xp 00000000 fd:00 7684765    /usr/lib/libX11.so.6.2.0
0024b000-0024f000 rw-p 0012b000 fd:00 7684765    /usr/lib/libX11.so.6.2.0
0024f000-00337000 r-xp 00000000 fd:00 165298     /lib/libglib-2.0.so.0.2103.0
00337000-00338000 rw-p 000e7000 fd:00 165298     /lib/libglib-2.0.so.0.2103.0
00409000-00433000 r-xp 00000000 fd:00 165006     /lib/libgcc_s-4.4.0-20090623.so.1
00433000-00434000 rw-p 0002a000 fd:00 165006     /lib/libgcc_s-4.4.0-20090623.so.1
007bd000-007be000 r-xp 00000000 00:00 0          [vdso]
00a68000-00a88000 r-xp 00000000 fd:00 164761     /lib/ld-2.10.90.so
00a88000-00a89000 r--p 0001f000 fd:00 164761     /lib/ld-2.10.90.so
00a89000-00a8a000 rw-p 00020000 fd:00 164761     /lib/ld-2.10.90.so
00a8c000-00c01000 r-xp 00000000 fd:00 164948     /lib/libc-2.10.90.so
00c01000-00c02000 ---p 00175000 fd:00 164948     /lib/libc-2.10.90.so
00c02000-00c04000 r--p 00175000 fd:00 164948     /lib/libc-2.10.90.so
00c04000-00c05000 rw-p 00177000 fd:00 164948     /lib/libc-2.10.90.so
00c05000-00c08000 rw-p 00000000 00:00 0 
00c36000-00c39000 r-xp 00000000 fd:00 164959     /lib/libdl-2.10.90.so
00c39000-00c3a000 r--p 00002000 fd:00 164959     /lib/libdl-2.10.90.so
00c3a000-00c3b000 rw-p 00003000 fd:00 164959     /lib/libdl-2.10.90.so
00de9000-00deb000 r-xp 00000000 fd:00 7684640    /usr/lib/libXau.so.6.0.0
00deb000-00dec000 rw-p 00001000 fd:00 7684640    /usr/lib/libXau.so.6.0.0
08048000-0804c000 r-xp 00000000 fd:00 14462035   /usr/libexec/ck-get-x11-display-de
vice
0804c000-0804d000 rw-p 00003000 fd:00 14462035   /usr/libexec/ck-get-x11-display-de
vice
09a2f000-09a50000 rw-p 00000000 00:00 0          [heap]
b8021000-b8024000 rw-p 00000000 00:00 0 
b803a000-b8041000 r--s 00000000 fd:00 14484681   /usr/lib/gconv/gconv-modules.cache
bff02000-bff17000 rw-p 00000000 00:00 0          [stack]
pam: gdm-password[7299]: pam_unix(gdm-password:session): session opened for user da
rrell by (uid=0)

Comment 1 darrell pfeifer 2009-07-07 04:41:50 UTC
Downloaded and recompiled from source. The program doesn't crash any more and gives the correct output. (My polkit-gnome problem hasn't gone away, but that appears to be a different problem)

Comment 2 darrell pfeifer 2009-07-24 14:17:25 UTC
The current version in rawhide no longer segfaults, but it doesn't report the correct tty

/usr/libexec/ck-get-x11-display-device
/dev/tty7

This appears to lead to

ck-list-sessions
Session1:
	unix-user = '500'
	realname = 'darrell pfeifer'
	seat = 'Seat1'
	session-type = ''
	active = FALSE
	x11-display = ''
	x11-display-device = ''
	display-device = '/dev/tty1'
	remote-host-name = ''
	is-local = TRUE
	on-since = '2009-07-24T03:39:46.837083Z'
	login-session-id = '1'
	idle-since-hint = '2009-07-24T13:13:59.003539Z'
Session4:
	unix-user = '500'
	realname = 'darrell pfeifer'
	seat = 'Seat1'
	session-type = ''
	active = TRUE
	x11-display = ':0'
	x11-display-device = '/dev/tty7'
	display-device = ''
	remote-host-name = ''
	is-local = TRUE
	on-since = '2009-07-24T13:13:31.573778Z'
	login-session-id = '1'

I don't have sessions on tty7 any more. These should all be on tty1

Comment 3 jmccann 2009-09-24 02:49:58 UTC
I seem to recall the segfault was due to a compiler bug in rawhide.  I think this was fixed for a while.  Can you please report the second problem upstream in bugzilla.freedesktop.org?  Thanks.


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