lightdm-gtk-greeter segv with unknown config options

Bug #1643276 reported by Michał Górny
6
This bug affects 1 person
Affects Status Importance Assigned to Milestone
Light Display Manager
Fix Released
Critical
Unassigned
lightdm (Ubuntu)
Fix Released
Critical
Unassigned

Bug Description

It seems that lightdm-gtk-greeter segfaults if you have an unknown option in your configuration file.

Core was generated by `/usr/sbin/lightdm-gtk-greeter'.
Program terminated with signal SIGSEGV, Segmentation fault.
#0 0x00007f0c4fd418a9 in config_load_from_file (config=0x2222100, path=0x23127d0 "/etc/lightdm/lightdm.conf", messages=0x0, error=0x7fff572556b0)
    at configuration.c:106
106 *messages = g_list_append (*messages, g_strdup_printf (" [%s] contains unknown option %s", group, keys[j]));
[Current thread is 1 (Thread 0x7f0c51b189c0 (LWP 28281))]
(gdb) p group
$1 = (gchar *) 0x2265c10 "LightDM"
(gdb) p keys[j]
$2 = (gchar *) 0x21ecd00 "display-setup-script"
(gdb) p messages
$3 = (GList **) 0x0
(gdb) bt
#0 0x00007f0c4fd418a9 in config_load_from_file (config=0x2222100, path=0x23127d0 "/etc/lightdm/lightdm.conf", messages=0x0, error=0x7fff572556b0)
    at configuration.c:106
#1 0x00007f0c4fd41fe6 in config_load_from_standard_locations (config=0x2222100, config_path=0x0, messages=0x0) at configuration.c:241
#2 0x00007f0c4fd3f029 in update_sessions () at session.c:234
#3 0x00007f0c4fd3f0f3 in lightdm_get_sessions () at session.c:269
#4 0x000000000040c972 in main ()

So it looks like a NULL message list arg is passed to config_load_from_file() while the function expects non-NULL.

Related branches

Changed in lightdm:
status: New → In Progress
importance: Undecided → Critical
Changed in lightdm (Ubuntu):
status: New → In Progress
importance: Undecided → Critical
Changed in lightdm:
status: In Progress → Fix Released
milestone: none → 1.21.1
Revision history for this message
Launchpad Janitor (janitor) wrote :

This bug was fixed in the package lightdm - 1.21.1-0ubuntu2

---------------
lightdm (1.21.1-0ubuntu2) zesty; urgency=medium

  Restore patch from 1.20.0-0ubuntu3:
  * Add debian/patches/terminate-session.patch: Terminate leftover processes
    in greeter session. It can happen that the greeter session does not
    properly clean up itself on logout. This causes leaked processes like
    settings-daemon which act on the user session as they share the same
    $DISPLAY. Ask logind to terminate remaining processes in the greeter
    session on closing, which is more robust than trying to fix every greeter.
    (LP: #1637758)

 -- Martin Pitt <email address hidden> Tue, 22 Nov 2016 09:43:39 +0100

Changed in lightdm (Ubuntu):
status: In Progress → Fix Released
To post a comment you must log in.
This report contains Public information  
Everyone can see this information.

Other bug subscribers

Remote bug watches

Bug watches keep track of this bug in other bug trackers.