Version: (using KDE KDE 3.0.99) Installed from: Gentoo Packages Compiler: gcc 3.1 OS: Linux Select Settings / Control Center Select System Administration / Login Manager. It loads, all greyed out, as expected. Select Administrator Mode, it asks for root password, click ok. Get a sig 11. (no debugging symbols found)...(no debugging symbols found)... 0x41174b59 in wait4 () from /lib/libc.so.6 #0 0x41174b59 in wait4 () from /lib/libc.so.6 #1 0x411f14ac in __DTOR_END__ () from /lib/libc.so.6 #2 0x40f699c3 in waitpid () from /lib/libpthread.so.0 #3 0x406944ae in KCrash::defaultCrashHandler(int) () from /usr/kde/3.1/lib/libkdecore.so.4 #4 <signal handler called> #5 0x40adeb57 in QListBox::count() const () from /usr/qt/3/lib/libqt-mt.so.3 #6 0x4151cd04 in KDMUsersWidget::slotAddUsers(QMap<QString, int> const&) () from /usr/kde/3.1/lib/kde3/kcm_kdm.so #7 0x4151dca2 in KDMUsersWidget::qt_invoke(int, QUObject*) () from /usr/kde/3.1/lib/kde3/kcm_kdm.so #8 0x40a25230 in QObject::activate_signal(QConnectionList*, QUObject*) () from /usr/qt/3/lib/libqt-mt.so.3 #9 0x41526f2c in KDModule::addUsers(QMap<QString, int> const&) () from /usr/kde/3.1/lib/kde3/kcm_kdm.so #10 0x4152658c in KDModule::propagateUsers() () from /usr/kde/3.1/lib/kde3/kcm_kdm.so #11 0x41525d29 in KDModule::KDModule(QWidget*, char const*, QStringList const&) () from /usr/kde/3.1/lib/kde3/kcm_kdm.so #12 0x41527f1d in KGenericFactory<KDModule, QWidget>::createObject(QObject*, char const*, char const*, QStringList const&) () from /usr/kde/3.1/lib/kde3/kcm_kdm.so #13 0x406ae9c1 in KLibFactory::create(QObject*, char const*, char const*, QStringList const&) () from /usr/kde/3.1/lib/libkdecore.so.4 #14 0x40027f87 in load(ModuleInfo const&, QString const&, KLibLoader*) () from /usr/kde/3.1/lib/kcmshell.so #15 0x400277d7 in ModuleLoader::loadModule(ModuleInfo const&, bool) () from /usr/kde/3.1/lib/kcmshell.so #16 0x400245f5 in main () from /usr/kde/3.1/lib/kcmshell.so #17 0x410dde44 in __libc_start_main () from /lib/libc.so.6 All the settings look reasonable when viewed in non-administrative mode. /usr/kde/3.1/share/config/kdm/kdmrc # KDM configuration example. # Note, that all comments will be lost if you change this file with # the kcontrol frontend. # # Definition: the greeter is the login dialog, i.e., the part of KDM # which the user sees. # # You can configure every X-display individually. # Every display has a display name, which consists of a host name # (which is empty for local displays specified in the Xservers file), # a colon and a display number. Additionally, a display belongs to a # display class (which can be ignored in most cases; the control center # does not support this feature at all). # Sections with display-specific settings have the formal syntax # "[X-" host [":" number [ "_" class ]] "-" sub-section "]" # You can use the "*" wildcard for host, number and class. You may omit # trailing components; they are assumed to be "*" then. # The host part may be a domain specification like ".inf.tu-dresden.de". # From which section a setting is actually taken is determined by these # rules: # - an exact match takes precedence over a partial match (for the host part), # which in turn takes precedence over a wildcard # - precedence decreases from left to right for equally exact matches # Example: display name "myhost:0", class "dpy". # [X-myhost:0_dpy] precedes # [X-myhost:0_*] (same as [X-myhost:0]) precedes # [X-myhost:*_dpy] precedes # [X-myhost:*_*] (same as [X-myhost]) precedes # [X-*:0_dpy] precedes # [X-*:0_*] (same as [X-*:0]) precedes # [X-*:*_*] (same as [X-*]) # These sections do NOT match this display: # [X-hishost], [X-myhost:0_dec], [X-*:1], [X-:*] # If a setting is not found in any matching section, the default is used. # # Every comment applies to the following section or key. # The defaults refer to KDM's built-in values, not anything set in this file. # [General] # This option exists solely for the purpose of a clean automatic upgrade. # Don't even think about changing it! ConfigVersion=2.0 # If "false", KDM won't daemonize after startup. Note, that you needn't to # use this if you start KDM from inittab, as KDM won't daemonize in this case # automatically. Default is true. #DaemonMode=false # If the value starts with a slash (/), it specifies the file, where X-servers # to be used by KDM are listed; the file is in the usual XDM-Xservers format. # Otherwise it's interpreted like one line of the Xservers file, i.e., it # specifies exactly one X-server. # Default is ":0 local@tty1 /usr/X11R6/bin/X vt7" # XXX i'm planning to absorb this file into kdmrc, but i'm not sure how to # do this best. Xservers=/etc/X11/xdm/Xservers # Where KDM should store its PID. Default is "" (don't store) PidFile=/var/run/xdm-pid # Whether KDM should lock the pid file to prevent having multiple KDM # instances running at once. Leave it "true", unless you're brave. #LockPidFile=false # Where to store authorization files. Default is /var/run/xauth #AuthDir=/tmp # Whether KDM should automatically re-read configuration files, if it # finds them having changed. Just keep it "true". #AutoRescan=false # Additional environment variables KDM should pass on to kdm_config, kdm_greet, # Xsetup, Xstartup, Xsession, and Xreset. LD_LIBRARY_PATH is a good candidate; # otherwise it shouldn't be necessary very often. #ExportList=SOME_VAR,ANOTHER_IMPORTANT_VAR # Where the command FiFos should be created. Make it empty to disable # the FiFos. Default is /var/run/xdmctl #FifoDir=/tmp # To which group the command FiFos should belong. # Default is -1 (effectively root) #FifoGroup=xdmctl [Xdmcp] # Whether KDM should listen to XDMCP requests. Default is true. Enable=false # The UDP port KDM should listen on for XDMCP requests. Don't change the 177. #Port=177 # File with the private keys of X-terminals. Required for XDM authentication. # Default is "" #KeyFile=/usr/kde/3.1/share/config/kdm/kdmkeys # XDMCP access control file in the usual XDM-Xaccess format. # Default is /usr/kde/3.1/share/config/kdm/Xaccess # XXX i'm planning to absorb this file into kdmrc, but i'm not sure how to # do this best. Xaccess=/etc/X11/xdm/Xaccess # Number of seconds to wait for display to respond after the user has # selected a host from the chooser. Default is 15. #ChoiceTimeout=10 # Strip domain name from remote display names if it is equal to the local # domain. Default is true #RemoveDomainname=false # Use the numeric IP address of the incoming connection instead of the # host name. Use this on multihomed hosts. Default is false #SourceAddress=true # The program which is invoked to dynamically generate replies to XDMCP # BroadcastQuery requests. # By default no program is invoked and "Willing to manage" is sent. Willing=/etc/X11/xdm/Xwilling [Shutdown] # The command to run to halt the system. Default is /sbin/halt #HaltCmd= # The command to run to reboot the system. Default is /sbin/reboot #RebootCmd= # Whether one can shut down the system via the global command FiFo. # Default is false #AllowFifo=true # Whether one can abort still running sessions when shutting down the system # via the global command FiFo. Default is true #AllowFifoNow=false # Offer LiLo boot options in shutdown dialog. Default is false #UseLilo=true # The location of the LiLo binary. Default is /sbin/lilo #LiloCmd= # The location of the LiLo map file. Default is /boot/map #LiloMap= # Rough estimations about how many seconds KDM will spend at most on # - opening a connection to the X-server (OpenTime): # OpenRepeat * (OpenTimeout + OpenDelay) # - starting a local X-server (ServerTime): ServerAttempts * ServerTimeout # - starting a display: # - local display: StartAttempts * (ServerTime + OpenTime) # - remote/foreign display: StartAttempts * OpenTime # Core config for all displays [X-*-Core] # How long to wait before retrying to start the display after various # errors. Default is 15 #OpenDelay= # How long to wait before timing out XOpenDisplay. Default is 120 #OpenTimeout= # How often to try the XOpenDisplay. Default is 5 #OpenRepeat= # Try at most that many times to start a display. If this fails, the display # is disabled. Default is 4 #StartAttempts= # The StartAttempt counter is reset after that many seconds. Default is 30 #StartInterval= # Ping remote display every that many minutes. Default is 5 #PingInterval= # Wait for a Pong that many minutes. Default is 5 #PingTimeout= # Restart instead of resetting the local X-server after session exit. # Use it if the server leaks memory, etc. Default is false #TerminateServer=true # The signal needed to reset the local X-server. Default is 1 (SIGHUP) #ResetSignal= # The signal needed to terminate the local X-server. Default is 15 (SIGTERM) #TermSignal= # Need to reset the X-server to make it read initial Xauth file. # Default is false #ResetForAuth=true # Create X-authorizations for local displays. Default is true #Authorize=false # Which X-authorization mechanisms should be used. # Default is MIT-MAGIC-COOKIE-1 #AuthNames= # The name of this X-server's Xauth file. Default is "", which means, that # a random name in the AuthDir directory will be used. #AuthFile= # Specify a file with X-resources for the greeter, chooser and background. # The KDE frontend doesn't care for this, so you don't need it unless you # use an alternative chooser or another background generator than kdmdesktop. # Default is "" Resources=/etc/X11/xdm/Xresources # The xrdb program to use to read the above specified recources. # Default is /usr/X11R6/bin/xrdb #Xrdb= # A program to run before the greeter is shown. You should start kdmdesktop # there. Also, xconsole can be started by this script. # Default is "" Setup=/etc/X11/xdm/Xsetup_0 # A program to run before a user session starts. You should invoke sessreg # there and optionally change the ownership of the console, etc. # Default is "" Startup=/usr/kde/3.1/share/config/kdm/Xstartup # A program to run after a user session exits. You should invoke sessreg # there and optionally change the ownership of the console, etc. # Default is "" Reset=/usr/kde/3.1/share/config/kdm/Xreset # The program which is run as the user which logs in. It is supposed to # interpret the session argument (see SessionTypes) and start an appropriate # session according to it. # Default is /usr/X11R6/bin/xterm -ls -T Session=/etc/X11/xdm/Xsession # The program to run if Session fails. # Default is /usr/X11R6/bin/xterm #FailsafeClient= # The PATH for the Session program. Default is # /bin:/usr/bin:/usr/X11R6/bin:/usr/local/bin #UserPath=/usr/kde/3.1/bin:/bin:/usr/bin:/usr/X11R6/bin:/usr/local/bin # The PATH for Setup, Startup and Reset, etc. Default is # /sbin:/usr/sbin:/bin:/usr/bin:/usr/X11R6/bin:/usr/local/bin #SystemPath=/usr/kde/3.1/bin:/sbin:/usr/sbin:/bin:/usr/bin:/usr/X11R6/bin:/usr/local/bin # The default system shell. Default is /bin/sh #SystemShell=/bin/bash # Where to put the user's X-server authorization file if ~/.Xauthority # cannot be created. Default is /tmp #UserAuthDir= # The host chooser program to use. # Default is /usr/kde/3.1/bin/chooser # XXX this is going to be integrated into the greeter (probably). #Chooser= # If "true", KDM will automatically restart a session after an X-server # crash (or if it is killed by Alt-Ctrl-BackSpace). Note, that enabling # this opens a security hole: a secured display lock can be circumvented # (unless you use KDE's built-in screen lock). Default is false #AutoReLogin=true # Allow root logins? Default is true AllowRootLogin=false # Allow to log in, when user has set an empty password? Default is true AllowNullPasswd=false # Who is allowed to shut down the system. This applies both to the # greeter and to the command FiFo. Default is All # "None" - no "Shutdown..." button is shown at all # "Root" - the root password must be entered to shut down # "All" - everybody can shut down the machine (Default) AllowShutdown=Root # Who is allowed to abort all still running sessions when shutting down. # Same options as for AllowShutdown. Default is All #AllowSdForceNow=Root # The default choice for the shutdown condition/timing. # "Schedule" - shutdown after all sessions exit (possibly at once) (Default) # "TryNow" - shutdown, if no sessions are open, otherwise do nothing # "ForceNow" - shutdown unconditionally #DefaultSdMode=ForceNow # If this is false the user must select the shutdown condition/timing already # in the shutdown dialog. If this is true he won't be bothered with the options, # but will be asked what to do if sessions are actually open. Default is true # NOTE: the interaction is currently not implemented. If this is set to true, # a normal forced shutdown will happen (without caring for the AllowSdForceNow # option!), i.e., KDM will behave exactly as before KDE 3.0. #InteractiveSd=false # Where (relatively to the user's home directory) to store the last # selected session. Default is .wmrc #SessSaveFile= # Greeter config for all displays [X-*-Greeter] # Session types the users can select. It is advisable to have "default" and # "failsafe" listed herein, which is also the default. # Note, that the meaning of this value is entirely up to your Session program. SessionTypes=Gnome,Xsession,kde-3.0.4,kde-3.1_beta2,kde-3.1_rc1,kde-3.1_rc2,kde-3.1_rc3,kde-3.1_rc5, # Widget Style of the greeter: # Default, Windows, Platinum, Motif, MotifPlus, CDE, SGI, and any styles you # may have installed, e.g., HighColor; Default is "Default" GUIStyle=Keramik # Widget Colors of the greeter: # Default, and any color schemes you may have installed. Default is "Default" #ColorScheme=Pumpkin # What should be shown righthand of the input lines: # "Logo" - the image specified by LogoPixmap (Default) # "Clock" - a neat analog clock # "None" - nothing LogoArea=None # The image to show when LogoArea=Logo. Default is kdelogo.png LogoPixmap= # Normally, the greeter is centered on the screen. Use this, if you want # it to appear elsewhere on the screen. Default is false #GreeterPosFixed=true #GreeterPosX=200 #GreeterPosY=100 # The headline in the greeter. # The following character pairs are replaced: # - %d -> current display # - %h -> host name, possibly with domain name # - %n -> node name, most probably the host name without domain name # - %s -> the operating system # - %r -> the operating system's version # - %m -> the machine (hardware) type # - %% -> a single % # Default is "Welcome to %s at %n" #GreetString=K Desktop Environment (%n) # The font for the headline. Default is charter,24,bold GreetFont=verdana,24,5,0,50,0 # The normal font used in the greeter. Default is helvetica,12 StdFont=verdana,12,5,0,50,0 # The font used for the "Login Failed" message. Default is helvetica,12,bold FailFont=verdana,12,5,0,75,0 # Whether the fonts shown in the greeter should be antialiased. Default is false AntiAliasing=true # What to do with the Num Lock modifier for the time the greeter is running: # "On" -> - turn on # "Off" -> - turn off # "Keep" -> - don't change the state (Default) #NumLock=Off # Language to use in the greeter. Default is en_US #Language=de_DE # Specify, which user names (along with pictures) should be shown in the # greeter. # "NotHidden" - all users except those listed in HiddenUsers (Default) # "Selected" - only the users listed in SelectedUsers # "None" - no user list will be shown at all #ShowUsers=None # For ShowUsers=Selected. Default is "" #SelectedUsers=root,johndoe # For ShowUsers=NotHidden. Default is "" #HiddenUsers=root # Special case of HiddenUsers: users with a UID less than this number # (except root) will not be shown as well. Default is 0 MinShowUID=1000 # Complement to MinShowUID: users with a UID greater than this number will # not be shown as well. Default is 65535 MaxShowUID=65000 # If false, the users are listed in the order they appear in /etc/passwd. # If true, they are sorted alphabetically. Default is true #SortUsers=false # Specify, where the users' pictures should be taken from. # "AdminOnly" - from $KDEDIR/share/apps/kdm/pics/users/$USER.png (Default) # "UserOnly" - from the user's $HOME/.face # "PreferAdmin" - prefer $USER.png; fallback on $HOME/.face # "PreferUser" - ... and the other way round FaceSource=PreferUser # Specify, if/which user should be preselected for log in. # Note, that enabling this feature can be considered a security hole, # as it presents a valid login name to a potential attacker, so he "only" # needs to guess the password. # "None" - don't preselect any user (Default) # "Previous" - the user which successfully logged in last time # "Default" - the user specified in the DefaultUser field #PreselectUser=Previous # The user to preselect if PreselectUser=Default #DefaultUser=ethel # If this is true, the password input line is focused automatically if # a user is preselected. Default is false #FocusPasswd=true # The password input fields cloak the typed in text. Specify, how to do it: # "NoEcho" - nothing is shown at all, the cursor doesn't move # "OneStar" - "*" is shown for every typed letter (Default) # "ThreeStars" - "***" is shown for every typed letter #EchoMode=NoEcho # If true, krootimage will be automatically started by KDM. Otherwise, the # Setup script should be used to setup the background. Default is true #UseBackground=false # The configuration file to be used by krootimage. # Default is /usr/kde/3.1/share/config/kdm/backgroundrc #BackgroundCfg= # Hold the X-server grabbed the whole time the greeter is visible. This # may be more secure, but it will disable any background and other # X-clients started from the Setup script. Default is false #GrabServer=true # How many seconds to wait for grab to succeed. Default is 3 #GrabTimeout= # Warn, if local X-authorization cannot be created. Default is true # XXX this is a dummy currently AuthComplain=true # Core config for local displays [X-:*-Core] # How often to try to run the X-server. Running includes executing it and # waiting for it to come up. Default is 1 #ServerAttempts= # How long to wait for a local X-server to come up. Default is 15 #ServerTimeout= # See above AllowShutdown=All # See above AllowRootLogin=true # See above AllowNullPasswd=true # Enable password-less logins on this display. USE WITH EXTREME CARE! # Default is false #NoPassEnable=true # The users that don't need to provide a password to log in. NEVER list root! #NoPassUsers=fred,ethel # Greeter config for local displays [X-:*-Greeter] # See above #AuthComplain=false # The screen the greeter should be displayed on in multi-headed setups. # The numbering starts with 0 and corresponds to the listing order in the # active ServerLayout section of XF86Config. -1 means to use the upper-left # screen, -2 means to use the upper-right screen. Default is 0 #GreeterScreen=-1 # Core config for 1st local display [X-:0-Core] # Enable automatic login on this display. USE WITH EXTREME CARE! # Default is false #AutoLoginEnable=true # The user to log in automatically. NEVER specify root! #AutoLoginUser=fred # The password for the user to log in automatically. This is NOT required # unless the user is to be logged into a NIS or Kerberos domain. If you use # it, you should "chmod 600 kdmrc" for obvious reasons. #AutoLoginPass=secret! # The session for the user to log in automatically. This becomes useless after # the user's first login, as the last used session will take precedence. #AutoLoginSession=kde # If "true", the auto-login is truly automatic, i.e., the user is logged in # when KDM comes up. If "false", the auto-login must be initiated by crashing # the X-server with Alt-Ctrl-BackSpace. Default is true #AutoLogin1st=false # See above Authorize=true # Greeter config for 1st local display [X-:0-Greeter] # See above #PreselectUser=Default # See above #DefaultUser=johndoe [X-:1-Core] # See above Authorize=true
i cannot claim that i would understand what is going on ... can you attach gdb manually and use "where full" instead of "bt"?
does the following patch help: Index: kdm-users.cpp =================================================================== RCS file: /home/kde/kdebase/kcontrol/kdm/kdm-users.cpp,v retrieving revision 1.66 diff -u -3 -d -p -r1.66 kdm-users.cpp --- kdm-users.cpp 27 Dec 2002 18:32:21 -0000 1.66 +++ kdm-users.cpp 28 Dec 2002 02:07:58 -0000 @@ -410,7 +410,8 @@ void KDMUsersWidget::slotAddUsers(const } optinlv->sort(); optoutlv->sort(); - usercombo->listBox()->sort(); + if (userCombo->listBox()) + usercombo->listBox()->sort(); } void KDMUsersWidget::slotDelUsers(const QMap<QString,int> &users)
Subject: Re: kcmshell signal 11 on login manager load Sorry for the delay. No difference. I also added a check on line 410... if (usercombo) usercombo->insertItem(*name); and no difference. Odd thing, if it isn't root, it loads, and the user list seems ok, although disabled. With root privileges, it crashes. Derek On December 27, 2002 06:08 pm, you wrote: > ------- You are receiving this mail because: ------- > You reported the bug, or are watching the reporter. > > http://bugs.kde.org/show_bug.cgi?id=51745 > > > > > ------- Additional Comments From aseigo@olympusproject.org 2002-12-28 > 03:08 ------- does the following patch help: > > Index: kdm-users.cpp > =================================================================== > RCS file: /home/kde/kdebase/kcontrol/kdm/kdm-users.cpp,v > retrieving revision 1.66 > diff -u -3 -d -p -r1.66 kdm-users.cpp > --- kdm-users.cpp 27 Dec 2002 18:32:21 -0000 1.66 > +++ kdm-users.cpp 28 Dec 2002 02:07:58 -0000 > @@ -410,7 +410,8 @@ void KDMUsersWidget::slotAddUsers(const > } > optinlv->sort(); > optoutlv->sort(); > - usercombo->listBox()->sort(); > + if (userCombo->listBox()) > + usercombo->listBox()->sort(); > } > > void KDMUsersWidget::slotDelUsers(const QMap<QString,int> &users)
Subject: Re: kcmshell signal 11 on login manager load Ha. In kdm-conv.cpp add if (userlb->listBox()) on line 312. It doesn't crash. Hmm. Another odd thing is the window holding the whole 'kcmshell System/kdm' is way too wide. This is root. User privileges, things look normal. Is there a configuration file somewhere that it is reading, and messing things up? Derek On December 27, 2002 06:08 pm, you wrote: > ------- You are receiving this mail because: ------- > You reported the bug, or are watching the reporter. > > http://bugs.kde.org/show_bug.cgi?id=51745 > > > > > ------- Additional Comments From aseigo@olympusproject.org 2002-12-28 > 03:08 ------- does the following patch help: > > Index: kdm-users.cpp > =================================================================== > RCS file: /home/kde/kdebase/kcontrol/kdm/kdm-users.cpp,v > retrieving revision 1.66 > diff -u -3 -d -p -r1.66 kdm-users.cpp > --- kdm-users.cpp 27 Dec 2002 18:32:21 -0000 1.66 > +++ kdm-users.cpp 28 Dec 2002 02:07:58 -0000 > @@ -410,7 +410,8 @@ void KDMUsersWidget::slotAddUsers(const > } > optinlv->sort(); > optoutlv->sort(); > - usercombo->listBox()->sort(); > + if (userCombo->listBox()) > + usercombo->listBox()->sort(); > } > > void KDMUsersWidget::slotDelUsers(const QMap<QString,int> &users)
yes, i caught that after i posted the patch to this bug (and then forgot to add that to bug.. bad Aaron!) it's committed now to HEAD and will be backporting to the 3.1 branch shortly