summaryrefslogtreecommitdiffstats
path: root/lib/libskey/skeylogin.c (follow)
Commit message (Collapse)AuthorAgeFilesLines
* remove some bogus *p tests from charles longeautedu2007-03-201-2/+2
| | | | ok deraadt millert
* minimal cleanups lint begs forderaadt2006-04-101-23/+21
|
* Add skeychallenge2() which is like skeychallenge() but takes anmillert2004-08-051-22/+29
| | | | | | already open fd. Will be used to make separate challenge/response invocations of login_skey keep the record locked. Also properly escape minus signs in man page. OK henning@ jmc@
* convert tgetline() from select(2) -> poll(2)millert2003-09-211-23/+12
|
* fix skeygetnext()millert2003-04-281-8/+23
|
* Use snprintf() and strlcpy() throughout.millert2003-04-031-34/+13
|
* Zero out struct skey early in skeylookup() so callers can reliably checkmillert2002-11-161-3/+3
| | | | for keyfile == NULL and not get a garbage value.
* Add a missing check for NULL keyfile in skeychallenge() thatmillert2002-11-161-3/+5
| | | | | caused a user w/o an S/Key to just get "permission denied" from login_skey instead of a fake challenge.
* use strtok_r() instead of strtok(); millert okderaadt2002-06-221-13/+13
|
* enforce SKEY_MAX_CHALLENGE using snprintf()deraadt2002-05-241-12/+9
|
* Remove skeyzero(), it is no longer needed.millert2002-05-171-28/+1
|
* Check for disabled /etc/skey directory (mode 0000). This is neededmillert2002-05-161-3/+11
| | | | | because some things (such as login) run as uid 0 and directory modes won't restrict root.
* Change S/Key stuff from using a flat file (/etc/skeykeys) to a directorymillert2002-05-161-352/+225
| | | | | | | | | where each user gets their own file, which is owned by that user. An old S/Key database may be converted by running "skeyinit -C" as root. Programs that need to access the S/Key database no longer need to be setuid root. They must now be setgid auth instead.
* Part one of userland __P removal. Done with a simple regexp with some minor hand editing to make comments line up correctly. Another pass is forthcoming that handles the cases that could not be done automatically.millert2002-02-161-3/+3
|
* Check for keyfile == NULL in skey_unlock()millert2001-12-071-2/+2
|
* skeyzero() never uses its 2nd arg so remove it. Since the only thingmillert2001-06-231-3/+3
| | | | | that calls skeyzero() is skeyinit and I just updated the libskey major I am not going to bump the major again here...
* o Do per-record locking instead of whole file lockingmillert2001-06-201-102/+258
| | | | | | | | | | | | | o Use said locking to prevent a partial guess race as required by RFC 2289. We now lock the record in skeylookup(), skeygetnext(), and skeyverify(). o A little KNF o Kill deprecated getskeyprompt() function o Provide a function to unlock a record, skey_unlock() o Timeout reading of the passphrase in skey_authenticate() and skey_passcheck() since we have the record locked (uses select, not alarm). o Convert old-style md4 entries (that lack an explicit hash) into new-style ones with the hash specified if there is space on the line.
* grammartodd2001-01-041-2/+2
|
* Move fake prompt generation from skey_authenticate() to skeychallenge()millert2000-11-201-129/+142
| | | | | | and getskeyprompt(). This means that when you get a challenge the result parameter is always filled in, even if the use is not in the skeykeys file.
* set mp->keyfile = NULL if stat failsmarkus2000-06-231-1/+2
|
* fd leakderaadt1999-12-061-1/+4
|
* fix descriptor leaks and double fclose(); markus and I; ok from millertderaadt1999-11-261-5/+23
|
* don't need sys/file.h now that we include fcntl.hmillert1999-08-161-2/+1
|
* missing fcntl.hmillert1999-08-161-1/+2
|
* replace open + fstat with statmillert1998-07-051-5/+2
|
* if there is no /etc/host.random, hash on the ctime of /dev/mem or /. This is much better than the old fake challenge.millert1998-07-051-84/+94
|
* Change the random file path, add a sanity check on file size.angelos1998-07-031-1/+2
|
* Fix my fix to return sane values.angelos1998-07-031-9/+10
|
* produce credible seeds for non-existent users.millert1998-07-031-3/+3
|
* Fix some of my indentation badness.angelos1998-07-031-12/+12
|
* Remove user existance disclosure through "s/key" challenges.angelos1998-07-031-21/+110
|
* Allow superuser to disable skey by unlnking /etc/skeykeys.millert1998-02-241-21/+11
|
* Don't let strncpy() get a negative length. Noted by Theo.millert1997-09-121-2/+2
|
* Don't unlock skeys file before closing it. The lock is releasedmillert1997-09-041-4/+1
| | | | | | when the file is closed anyway and explicately unlocking before the file gets flushed defeats the purpose of locking in the first place.
* Remove debugging info, whoops.millert1997-07-271-2/+1
|
* - Do coarse locking on /etc/skeykeys. Fixes a race that could allowmillert1997-07-271-12/+23
| | | | | a replay attempt to succeed. - OpenBSD tags
* Fix search and replace error introduced in version 1.16.millert1997-07-271-19/+19
|
* Convert upper -> lower case in seed for fake s/key propt.millert1997-07-261-2/+3
|
* - int -> long fixesmillert1997-07-261-38/+48
| | | | | | - restore priority correctly after setpriority (assumed start pri was 0) - rfc-compliant challenge when faking it for those w/o a keyfile entry on machines with short hostnames or non-alphanum hostnames.
* Fix skeygetnext()millert1997-07-231-17/+4
|
* _PATH_SKEYKEYS now lives in <paths.h>millert1997-07-231-17/+86
| | | | Add skeygetnext() for iterating over the key file.
* Mode 0600 /etc/skeykeysmillert1997-07-231-2/+4
|
* Need err.h for warnx proto.millert1997-07-101-1/+2
|
* Add a bunch of length/size macros and use them.millert1996-11-031-14/+16
|
* Fake an s/key challenge if user doesn't have an entry. Stops infomillert1996-10-221-3/+29
| | | | gathering attack.
* htoi now takes an int, not char.millert1996-10-141-12/+16
| | | | Only skey_set_algorithm() for the record that matches target user.
* Fix a bug wrt handling of old md4 entries. Now don't save a type with md4millert1996-10-021-5/+11
| | | | | so we don't go over the record size and munge other entries. Don't export symbols we don't need to in put.c.
* __ARGS -> __P (why does everyone have to do this differently?)millert1996-09-301-3/+3
|
* check skey_set_algorithm() ret val + pedantry.millert1996-09-291-12/+15
|
* Towards RFC 1938 compliance. Also, now supports SHA (secure hash algorithm).millert1996-09-291-10/+12
|