summaryrefslogtreecommitdiff
path: root/daemon/verify-shadow.c
Commit message (Collapse)AuthorAgeFilesLines
* when more then 50 users don't put them all in the combo boxes, this is aGeorge Lebl2003-05-131-4/+13
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Tue May 13 12:22:45 2003 George Lebl <jirka@5z.com> * gui/gdmsetup.c: when more then 50 users don't put them all in the combo boxes, this is a semi-solution to #111830 * daemon/verify-shadow.c: Apply patch from cschelcher@free.fr to fall back to standard password when shadow is not available. Apparently fixes NIS stuff, but I really think people should be using pam, but I digress. Fixes #109765 * daemon/auth.c, daemon/misc.c, daemon/server.c, daemon/slave.c: use strerror instead of g_strerror as that returns always UTF-8 and we want current locale. We already assume strerror is on the system so this is not a portability issue anyway. Fixes #106655 * utils/gdmopen.c: apply patch from Owen Taylor to fix #106656 by not deallocating the vt after we are done as apparently this is what open does and the kernel has a fit otherwise anyway. It's braindead, but oh well, this is the way it apparently works right. * daemon/gdm.c: apply patch from Owen Taylor to fix #106656 by setting TEXTDOMAIN to GETTEXT_PACKAGE rather then PACKAGE before running scripts * utils/gdmopen.c, daemon/misc.c: Apply patch from Owen Taylor to fix #106658, but fix it portably by adding the -l option to gdmopen as suggested by Owen. So all gdmopens we do are now using login shells which makes me wonder if we should just build that into gdmopen, since it's a special purpose utility anyhow.
* Fix typo in comment. Same.Kjartan Maraas2003-02-161-2/+2
| | | | | | | 2003-02-16 Kjartan Maraas <kmaraas@gnome.org> * daemon/verify-crypt.c: Fix typo in comment. * daemon/verify-pam.c: Same.
* The Shutdown/Halt/Suspend keys can now be a list of commands. If this isGeorge Lebl2002-08-131-1/+2
| | | | | | | | | | | | | | | | | | | Tue Aug 13 16:15:08 2002 George Lebl <jirka@5z.com> * daemon/gdm.[ch], gui/gdmlogin.c, gui/greeter/greeter_system.c, config/gdm.conf.in: The Shutdown/Halt/Suspend keys can now be a list of commands. If this is the case, the first working one will be used. This way we can find the most appropriate command to use and distros will not have to redo the config as much. * daemon/gdm.[ch], daemon/misc.[ch], daemon/verify-*.c, config/gdm.conf.in: Add a long standing feature request of no password logins for certain users on the local console. Just set LocalNoPasswordUsers to a list of such users. Fixes #51908 * daemon/server.c: on reinit of server do a sleep(1) after the kill (pid, SIGHUP) as an incredible hack to avoid a race. Fun fun fun with the X server.
* add a SOFT_RESTART_SERVERS fifo command to force a restart of X serversGeorge Lebl2002-08-071-0/+1
| | | | | | | | | Wed Aug 07 12:01:06 2002 George Lebl <jirka@5z.com> * daemon/gdm.[ch], daemon/slave.c: add a SOFT_RESTART_SERVERS fifo command to force a restart of X servers that no one is logged in on right away, unlike the DIRTY_SERVERS which just marks servers as dirty and to be restarted
* Change the interruption stuff, to remove some races and the restart ofGeorge Lebl2002-05-121-2/+2
| | | | | | | | | | | | | | | | | Sat May 11 23:38:02 2002 George Lebl <jirka@5z.com> * daemon/gdm.h, daemon/slave.[ch], daemon/verify-(pam|crypt|shadow).c, gui/gdmlogin.c, gui/greeter/greeter.c: Change the interruption stuff, to remove some races and the restart of greeters is done by return code * gui/gdmsetup.c, gui/gdmwm.[ch], gui/gdmlogin.c, gui/greeter/greeter.c: Add a property on the setup windows so that we can raise the setup windows after a restart of the greeter, this doesn't really work yet well. * gui/gdmsetup.c: add some more error checking and change the owenership/permissions correctly on installed themes
* Slight modification of string in verify-shadow.cKwok-Koon Cheung2002-02-091-2/+2
|
* Fix loads of typos and inconsistencies in strings.Kjartan Maraas2002-01-121-8/+8
|
* don't link libgnomeui and libglade to the daemon any moreGeorge Lebl2001-12-281-1/+3
| | | | | | | | | | | | | | | | | | | | | | | | | Thu Dec 27 16:43:21 2001 George Lebl <jirka@5z.com> * configure.in: don't link libgnomeui and libglade to the daemon any more * daemon/errorgui.[ch], daemon/gdm.c, daemon/slave.c, daemon/verify-*.c: Whack the exec hack for failsafe dialogs, we now yet again do this all just by fork and gtk_init. This seems to work and is truly failsafe * daemon/gdm-net.c: fix hanging caused by some new crack in giochannel, we just do a libc 'read' and that works * daemon/server.c, daemon/gdm.[ch]: again some new crack in glib's mainloop was causing g_main_loop_quit to not work right if called from a signal handler (sometimes). So I just switched to using a simple select call and a dummy pipe. * daemon/Makefile.am, daemon/auth.c, daemon/errorgui.c, daemon/gdm-net.c, daemon/gdm.c, daemon/server.c, daemon/slave.c, daemon/verify-crypt.c, daemon/verify-pam.c, daemon/verify-shadow.c, daemon/xdmcp.c: Compile without any deprecated stuff from glib up
* remove gdmchooser.hGeorge Lebl2001-12-271-0/+1
| | | | | | | | | | | | | Thu Dec 27 14:04:27 2001 George Lebl <jirka@5z.com> * gui/Makefile.am: remove gdmchooser.h * Merge from stable up to 2.2.5.3 release tag Wed Dec 26 17:20:28 2001 George Lebl <jirka@5z.com> * daemon/veriyfy-crypt.c, daemon/verify-shadow.c: include errorgui.h
* Merge from stable up to 2.2.5.2 release tagGeorge Lebl2001-12-211-2/+39
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Thu Dec 20 16:49:52 2001 George Lebl <jirka@5z.com> * Merge from stable up to 2.2.5.2 release tag Thu Dec 20 16:27:40 2001 George Lebl <jirka@5z.com> * daemon/verify-pam.c: apparently the actually correct order (Which actually makes sense) is setcred/open_session. This is apparently the 'offical' word from the linux-pam people. Though not everybody agrees. Well screw this, this makes sense, so this is the way it will be damnit :) * gui/gdmconfig.c: fix saving of server definitions * gui/gdmlogin.c: add ability to have newlines in the welcome string by just adding \n into the strings Thu Dec 06 22:09:11 2001 George Lebl <jirka@5z.com> * daemon/slave.c: Fix TimedLogin I broke on last commit * daemon/verify-pam.c: For autologin, still call authenticate, but use the service gdm-autologin. Also a bit of cleanup. * config/gdm-autologin, config/Makefile.am: A promiscuous service. This will let anyone in, gdm uses this for autologin or timed login when we want to let a user in without a password, this way we can follow all the proper pam doodaah with pam_authenticate and all that so we can safely call setcred Tue Dec 04 20:46:57 2001 George Lebl <jirka@5z.com> * daemon/gdm.c, daemon/misc.[ch], daemon/display.c: On events where we fail due to bad configuration, run the text message dialog. Also if we hit the loop of death outside of XFAILED on a local display, run a text message telling the user so instead of just putting this into the syslog. We need more interaction here I think. But this is better then nothing. Tue Dec 04 18:44:10 2001 George Lebl <jirka@5z.com> * daemon/Makefile.am, daemon/verify-pam.c, daemon/verify-crypt.c, daemon/verify-shadow.c, daemon/verify.h, daemon/misc.[ch], daemon/slave.c: revamp the PAM support based on a patch from Karsten Petersen <karsten.petersen@informatik.tu-chemnitz.de>. Move the open session and setcred back to verify, implement account checking more properly, especially for auto logins. We assume the pamh existing when needed. And don't do the weird ensure hack. Also setgid and initgroups in the verify/setup function. rename the open_session function to setup_env, since that's what it does. Also implement more checking of errors during login process. * daemon/gdm.c, daemon/errorgui.c: make sure that we're not 'setuid' looking in the failsafes. Also correctly setup "PATH" from stored path. * daemon/slave.c: fix race where USR2 was expected from a non-existant parent. This can happen when you do 'killall gdm'
* some build fixesGregory Leblanc2001-11-161-3/+0
| | | | | | | | | | | | | | | | | | | | | | | | | | | Thu Nov 15 23:25:41 2001 George Lebl <jirka@5z.com> * configure.in: some build fixes * **/*.c: remove RCSid's as they are un-fun for merging * Merge from gdm-2-2: Thu Nov 15 21:18:48 2001 George Lebl <jirka@5z.com> * daemon/gdm.[ch], daemon/slave.[ch], daemon/server.c, gui/gdmlogin.c: clean up a bit of the constants mess (though it's still an utter mess). Implement a new SUP opcode so that the daemon knows when the server was started so that it can start local servers in order, so that things like complete machine lockups don't occur (I got one just testing this). Also add a 3 second 'padding' between server starts to really be sure. * config/gdm.conf.in: add some comments, mostly for distributions 2001-11-06 Gregory Leblanc <gleblanc@linuxweasel.com> * gdm.spec.in: more minor updates, just to piss George off. :-) There's a ChangeLog in the file, if you care that much.
* Begin GNOME 2.0 porting. Not complete yet, daemon may 'compile', guiGeorge Lebl2001-11-061-1/+1
| | | | | | | | Mon Nov 05 21:28:43 2001 George Lebl <jirka@5z.com> * configure.in, **/Makefile.am, daemon/*.[ch], utils/*.[ch], gui/*.[ch]: Begin GNOME 2.0 porting. Not complete yet, daemon may 'compile', gui doesn't compile yet
* put the sleep day in the verify code, and in pam verification use the pamGeorge Lebl2001-10-281-0/+4
| | | | | | | | | | | Sat Oct 27 21:44:20 2001 George Lebl <jirka@5z.com> * daemon/slave.c, daemon/verify-*.c: put the sleep day in the verify code, and in pam verification use the pam sleep to do the same if available. This means that the error will come after the sleep but that the sleep will be 1) random 2) not doubled with both the gdm and the pam sleep. Second always print the "Please enter your username" message on the verify not just the first time.
* Make pam errors and such pop up in a dialog box to make sure the userGeorge Lebl2001-10-271-2/+2
| | | | | | | | | | | | | Sat Oct 27 13:22:48 2001 George Lebl <jirka@5z.com> * daemon/verify-*.c, daemon/slave.c, daemon/gdm.h, gui/gdmlogin.c: Make pam errors and such pop up in a dialog box to make sure the user notices them. If the login gets a QUIT and it had some informative messages to tell the user but there was no prompt in between (that is, the user hasn't read them), display it in a dialog. * daemon/gdmlogin.c: fix focus after uniconify
* Remove the VerboseAuth conf variable, it provided absolutely zero extraGeorge Lebl2001-10-241-45/+32
| | | | | | | | | | | | Wed Oct 24 01:26:47 2001 George Lebl <jirka@5z.com> * bin/gdm.[ch], bin/verify-*.c, config/gdm.conf.in, gui/gdmconfig.(c|glade): Remove the VerboseAuth conf variable, it provided absolutely zero extra security (since it didn't divulge any info the user cannot get by other means, and making it false just made the whole thing less usable and more confusing) * bin/gdm.c: include locale.h
* Add a failsafe question dialog similar in operation to the failsafe errorGeorge Lebl2001-09-271-5/+5
| | | | | | | | | | | | | | | | | | | Wed Sep 26 21:01:38 2001 George Lebl <jirka@5z.com> * daemon/verify.h, daemon/verify-*.c, daemon/slave.c, daemon/errorgui.[ch], daemon/gdm.c: Add a failsafe question dialog similar in operation to the failsafe error box, and use it in the standalone pam conv function. Kill all instances of PAM_SILENT since we can now always converse with the user. * daemon/verify-pam.c: use a global pamh again but this time a bit smarter. Make sure if we use a global one that it has all the right things set. Also set PAM_RHOST to "localhost" or the remote host if not a "console" login. Set PAM_RUSER to "gdm" (or whatever the gdm user is). I'm sure I'm fucking something up again but I can't find enough docs to verify that what I'm doing is 100% correct. Not to mention that there seem to be some braindead modules out there to begin with.
* Add two new small sbin utils. gdmopen is like open (based on it) butGeorge Lebl2001-08-221-1/+2
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Wed Aug 22 23:01:59 2001 George Lebl <jirka@5z.com> * configure.in, Makefile.am, utils/gdmopen.c, utils/gdmaskpass.c: Add two new small sbin utils. gdmopen is like open (based on it) but better suited for gdm. Exitcode is returned so no temp files are needed. Process is cleaned up on a signal, the new vt is deallocated after use. And unlike openvt this thing actually waits for the child. Gdmaskpass just asks for the root password, for use in the XKeepsCrashing script. Both of these things will only run as root as I'm too paranoid and it doesn't make sense for them to run otherwise for gdm anyway. * configure.in: Fix sbin expansion. * daemon/gdm.c, daemon/misc.[ch], daemon/slave.c, daemon/server.c: Use gdmopen to run dialog and add helper functions for doing this. * daemon/gdm.h, daemon/slave.c, daemon/server.[ch]: When a server is busy, ask the user if we want to run it on a new display number or retry. * daemon/gdm.c, daemon/misc.c, daemon/slave.c: Make sure to whack any extra helper processes we launch when we are killed so that we don't leave things like 'dialog' processes around * daemon/gdm.c, config/XKeepsCrashing: Use gdmaskpass, ask if the user wants to view X logs if X is crashing. And use gdmopen in the script and correctly abort with exit 32. Also make it not use the ugly tempfile stuff (Though a tempfile is still given to the script for now) * gdm.spec.in: raise epoch to 1, people abuse this field, and if they do abuse it again and raise it beyond 1, I'll just max it out since it makes package upgrading not work. * daemon/slave.c, daemon/verify-(pam|crypt|shadow).c: add /sbin/nologin as a thing to test for for disabled logins in addition to /bin/false and /bin/true (it worked, but this adds a nicer message) * daemon/xdmcp.c: fix a warning. * gui/gdmflexiserver.desktop.in: kill TryExec here
* add some code for choosable servers (not implemented yetGeorge Lebl2001-08-191-3/+5
| | | | | | | | | | | | | | | | | | | | | | | | | Sat Aug 18 18:17:44 2001 George Lebl <jirka@5z.com> * daemon/gdm.[ch]: add some code for choosable servers (not implemented yet * daemon/misc.c: search our own displays for used numbers first * daemon/gdm.c, daemon/server.c, daemon/slave.c: Finish implementing choosing of flexi servers * daemon/slave.c, daemon/verify{,-pam,-crypt,-shadow}.[ch]: Correctly implement credential setting and some pam related fixes * gui/gdmconfig.(c|h|glade): Start on making configuration for all the new stuff including the server definitions, not finished yet. * gui/gdmflexiserver.c: if there are multiple flexible servers, give the user a choice * gui/gdmflexiserver-xnest.desktop.in: only show if Xnest exists
* Apply the following patch and massage it a bit to be more saneGeorge Lebl2001-08-101-13/+44
| | | | | | | | | | | | | | | | | | Fri Aug 10 11:51:20 2001 George Lebl <jirka@5z.com> * Apply the following patch and massage it a bit to be more sane Mon Jul 30 14:29:00 2001 Heeten Choxi <azari.geo@yahoo.com> * daemon/gdm.h, gui/gdmlogin.c: created new Opcode for communication between daemon and greeter called GDM_ERRBOX. * daemon/verify-pam.c, daemon/verify-crypt.c, daemon/verify-shadow.c: Use GDM_ERRBOX to send error feedback to greeter when logins fail. (As suggested in GNOME Usability Study Report :: Logging In) * gui/gdmlogin.c: Added an "Ok" button that can be pushed to continue with login. (As suggested in GNOME Usability Report)
* fix formatHavoc Pennington2001-08-021-1/+1
| | | | | | | | | | | | | | | | | | | | 2001-08-02 Havoc Pennington <hp@redhat.com> * daemon/gdm.c (gdm_config_parse): fix format * daemon/server.c (display_busy): fix format * daemon/verify-crypt.c (gdm_verify_user): don't put login in syslog, because people accidentally type their password in this field. * daemon/verify-shadow.c (gdm_verify_user): same * daemon/verify-pam.c (gdm_verify_user): same * daemon/misc.c: syslog takes a format string, don't pass it data we got from the user. Reported by Cyril Diakhate <diakhate@easynet.fr>
* when user doesn't exist ask for a password anyway. Also some sanity fixingGeorge Lebl2001-07-111-5/+11
| | | | | | | Wed Jul 11 12:55:36 2001 George Lebl <jirka@5z.com> * daemon/verify-pam.c, daemon/verify-crypt.c: when user doesn't exist ask for a password anyway. Also some sanity fixing all around.
* Use vicious-extensions module rather then local routinesGeorge Lebl2001-07-091-1/+3
| | | | | | | | | | | | | | Mon Jul 09 00:14:02 2001 George Lebl <jirka@5z.com> * Makefile.am, autogen.sh, configure.in, daemon/Makefile.am, daemon/auth.c, daemon/gdm.c, daemon/gdm.h, daemon/misc.c, daemon/server.c, daemon/slave.c, daemon/verify-crypt.c, daemon/verify-pam.c, daemon/verify-shadow.c, daemon/xdmcp.c, gui/Makefile.am, gui/gdmchooser.c, gui/gdmconfig.c, gui/gdmlogin.c, gui/gdmphotosetup.c, gui/misc.[ch], po/POTFILES.in: Use vicious-extensions module rather then local routines * gui/icon-entry-hack.[ch]: remove, in vicious-extensions now
* add configuration summary, fix libwrap detection and add configurationGeorge Lebl2001-05-131-14/+29
| | | | | | | | | | | | | | | | Sat May 12 23:44:38 2001 George Lebl <jirka@5z.com> * configure.in: add configuration summary, fix libwrap detection and add configuration options to enable/disable xinerama tcpwrappers and choose the authentication scheme * daemon/verify-crypt.c, daemon/verify-shadow.c: don't ask for passwords on passwordless logins, fix a leak, and make crypt support actually compile. Also check password before testing if the account is disabled. * daemon/slave.c: Focus first X window with res_name "xterm" when running the failsafe xterm session
* Add an option to toggle logging in of root remotely. So one can allowGeorge Lebl2001-04-301-1/+3
| | | | | | | | | | | Mon Apr 30 16:48:42 2001 George Lebl <jirka@5z.com> * gdm/gdm.[ch], gdm/verify-(pam|crypt|shadow).c, gui/gdmconfig.(c|glade): Add an option to toggle logging in of root remotely. So one can allow local root login but disallow remote root logins. * daemon/slave.c: add nicer error messages to all the exec failiures
* Revert stupid changes, now we rely on a new enough gnome-core where gsmGeorge Lebl2001-04-301-1/+1
| | | | | | | | | | | | | | Sun Apr 29 23:54:34 2001 George Lebl <jirka@5z.com> * config/Gnome.in, config/gnomerc, config/Makefile.am: Revert stupid changes, now we rely on a new enough gnome-core where gsm understands GDM_GNOME_SESSION (in a similar way to GDM_LANG) * daemon/verify-*.c: Eeeek Forgot to use the GDM_LOGIN prompter opcode and that made the greeter very unhappy * gui/gdmconfig.c, gui/gdmlogin.c: Ignore .orig files as well when looking at the Sessions dir
* Create the concept of interruptions where the greeter can interrupt aGeorge Lebl2001-04-301-15/+43
| | | | | | | | | | | | | | | Sun Apr 29 18:06:25 2001 George Lebl <jirka@5z.com> * gui/gdmlogin.c, daemon/gdm.[ch], daemon/slave.[ch], daemon/verify.h, daemon/verify-(pam|crypt|shadow).c, config/gdm.conf.in: Create the concept of interruptions where the greeter can interrupt a query to have the daemon do something. and use it to do timeout logins, such as would be useful for say a kiosk operation. Only on local displays of course. Originally based on the patch from Jim Bray. * gui/gdmconfig.glade: Raise the maximum allowable max user file size to 2^18 from 2^16
* Fixup enviroment issues. Clear the environment before running a sessionGeorge Lebl2001-04-241-0/+6
| | | | | | | | | | | | | Mon Apr 23 22:04:24 2001 George Lebl <jirka@5z.com> * configure.in, acconfig.h, daemon/auth.c, daemon/misc.[ch], daemon/slave.c, daemon/verify.h, daemon/verify-(pam|crypt|shadow).h: Fixup enviroment issues. Clear the environment before running a session and before launching the greeter (taking care to save the localisation vars). Also don't set user env on the slave and leave it, if we set it it's only temporary. Also fix one possible crash by strduping the pam env since that will go away and putenv doesn't strdup.
* Fix GdmAllowRoot (it only worked in verbose mode), made the verbose modeGeorge Lebl2001-04-191-15/+28
| | | | | | | | | | | | Thu Apr 19 13:18:59 2001 George Lebl <jirka@5z.com> * daemon/verify-crypt.c, daemon/verify-shadow.c, daemon/verify-pam.c: Fix GdmAllowRoot (it only worked in verbose mode), made the verbose mode selection useful without being insecure, and in nonverbose mode you still get "Login incorrect" message as those are safe. In pam mode we now check for root as well. We also now check for shell to be /bin/false as a sign the user was disallowed from logging in.
* Make quiver more visible and cooler looking (/me thinks)George Lebl2001-01-311-2/+2
| | | | | | | | | | | | | | | Tue Jan 30 20:19:46 2001 George Lebl <jirka@5z.com> * gui/gdmlogin.c: Make quiver more visible and cooler looking (/me thinks) * config/gdm.conf.in: Verbose Auth is on by default, since now it doesn't reveal information, Not sure if this option is useful for anything really. We want "Login Incorrect" messages all the time. May need some thought * daemon/verify-(crypt|shadow).c: Don't reveal what went wrong on login, just say "Login incorrect"
* Pfffffffffffffft! Really apply the patch from ChiDeok HwangGeorge Lebl2001-01-311-1/+1
| | | | | | | | | | | | Tue Jan 30 16:52:39 2001 George Lebl <jirka@5z.com> * Pfffffffffffffft! Really apply the patch from ChiDeok Hwang <hwang@mizi.co.kr> * daemon/slave.c, gui/gdm.c: Some locale stuff fixes. This still feels really wrong as it mostly ignores the systemwide setting and uses it's own default most of the time. And that's bad. Needs some work.
* For autologin we have to do the pam dance to setup stuff nicely.George Lebl2001-01-101-0/+14
| | | | | | | Wed Jan 10 02:32:52 2001 George Lebl <jirka@5z.com> * daemon/verify.h, daemon/verify-*.[ch], daemon/slave.c: For autologin we have to do the pam dance to setup stuff nicely.
* typo fix and separate directory build fixStanislav Brabec2000-02-291-1/+1
|
* Checkin of my devel tree. Some of the new stuff is in. Mostly91999-12-291-0/+130
1999-12-29 <mkp@mkp.net> * Checkin of my devel tree. Some of the new stuff is in. Mostly infrastructure changes, though. Oh, and it doesn't actually work yet. But it will eventually. Promise! 1999-12-26 <mkp@mkp.net> * daemon/verify-*.c: Move each authentication scheme to a separate file (Sucks to be a translator :). 1999-12-21 <mkp@mkp.net> * daemon/verify.c (gdm_verify_user): Added fix for expired passwords when using PAM (Philip Spencer <pspencer@fields.utoronto.ca>). 1999-11-11 <mkp@mkp.net> * daemon/misc.c (gdm_setenv): New function to work around POSIX brain damage. 1999-11-01 <mkp@mkp.net> * daemon/verify.c (gdm_verify_user): Error in error message. * daemon/slave.c (gdm_slave_greeter_ctl): Nuke random junk that might have accumulated in the ipc pipe. * gui/gdmlogin.c (gdm_login_ctrl_handler): Same as above. * configure.in: Fixed -lnsl (again) 1999-10-03 <mkp@mkp.net> * daemon/slave.c: Misc. hacks to solve #2487. PAM messes with pwent. * daemon/gdm.c (gdm_config_parse): Check that gdmlogin and gdmchooser can be executed by gdm before starting up. 1999-10-02 <mkp@mkp.net> * daemon/slave.c (gdm_slave_greeter_ctl): Fix NULL string passing bug.