Todd C. Miller [Wed, 4 Aug 1999 17:28:47 +0000 (17:28 +0000)]
o Add '!' correctly when expanding Aliases.
o Add shortcut macros for append() to make things more readable.
o The separator in append() is now a string instead of a char.
o In append(), only prepend the separator if the last char is not a '!'.
This is a hack but it greatly simplifies '!' handling.
o In -l mode, Runas lists and NOPASSWD/PASSWD tags are now inherited
across entries in a list (matches current behavior).
o Fix formatting in -l mode such that items in a list are separated by
a space. Greatlt improves readability.
o Space for name field in struct aliasinfo is now allocated dyanically
instead of using a (big) buffer.
o In add_alias(), only search the list once (lsearch instead of lfind + lsearch)
Todd C. Miller [Wed, 4 Aug 1999 09:35:56 +0000 (09:35 +0000)]
o Simpler '!' support now that the lexer deals with multiple !'s for us.
o In the case of opFOO, have FOO give a boolean return value and set
foo_matches in opFOO, not FOO.
o Treat 'ALL' as a string since it gets fill()'d in parse.lex--fixes a
small memory leak. In the long run it may be better to just fix parse.lex
and make ALL back into a token. However, having it be a string is useful
since it can be easily passed back to the parent rule if we so desire.
Todd C. Miller [Wed, 4 Aug 1999 07:54:34 +0000 (07:54 +0000)]
o Remove some unnecessary backslashes
o collapse multiple !'s by using !+ and checking if yyleng is even or odd.
this allows us to simplify ! handling in parse.yacc
Todd C. Miller [Wed, 28 Jul 1999 09:21:00 +0000 (09:21 +0000)]
Use dirs instead of files for timestamp. This allows tty and non-tty
schemes to coexist reasonably. Note, however, that when you update
a tty ticket, the mtime on the user dir gets updated as well.
Todd C. Miller [Wed, 28 Jul 1999 09:17:14 +0000 (09:17 +0000)]
Fix getprpwnam() checking on SCO. Need to link with "-lprot -lx" when
linking test program, not just -lprot. Also add check for getspnam().
The SCO docs indicate that /etc/shadow can be used but this may be a lie.
Todd C. Miller [Thu, 22 Jul 1999 19:48:27 +0000 (19:48 +0000)]
auth API change. There is now an init method that gets run before
the main loop. This allows auth routines to differentiate between
initialization that happens once vs. setup that needs to run each time
through the loop.
Todd C. Miller [Thu, 22 Jul 1999 13:01:20 +0000 (13:01 +0000)]
o Document -K flag and update meaning of -k flag.
o BSD-style copyright
o Document clearing of BIND resolver environment variables
o Clarify bit about shared libs
o suggest rc files create /tmp/.odus if your OS gives away files
Todd C. Miller [Thu, 22 Jul 1999 12:55:17 +0000 (12:55 +0000)]
o no longer contains sudo 1.1/1.2 code
o BSD copyright
o use new logging routines
o simplified flow of control
o BIND resolver additions to badenv_table
Todd C. Miller [Thu, 22 Jul 1999 12:46:29 +0000 (12:46 +0000)]
o tgetpass.c is no longer optional
o kill DCE_OBJS, add AUTH_OBJS
o kill --disable-tgetpass
o add --without-passwd
o changes to fill in AUTH_OBJS for new auth api
o check for strerror(), v?snprintf() and v?asprintf()
o replace --with-AuthSRV with --with-fwtk
Todd C. Miller [Thu, 22 Jul 1999 12:19:11 +0000 (12:19 +0000)]
Rewrote all the old sudo 1.1/1.2 code. Timestamp handling is now
done more reasonably--better sanity checks and tty-based stamps are
now done as files in a directory with the same name as the invoking
user, eg. /var/run/sudo/millert/ttyp1. It is not currently possible
to mix tty and non-tty based ticket schemes but this may change in
the future (it requires sudo to use a directory instead of a file
in the non-tty case). Also, ``sudo -k'' now sets the ticket back
to the epoch and ``sudo -K'' really deletes the file. That way you
don't get the lecture again just because you killed your ticket in
.logout. BSD-style copyright now.