summaryrefslogtreecommitdiffstats
path: root/usr.sbin/pwd_mkdb
Commit message (Collapse)AuthorAgeFilesLines
* Explicitly use int32_t for on-disk records for pw_change and pw_expire,peter2001-10-271-8/+11
| | | | | | since that is what we use now and this insulates us from any time_t tweaks here. We can define a record format that uses 64 bit times if/when we need to.
* It's bad enough to capitalize the name of the executable at thedd2001-08-041-1/+1
| | | | | beginning of the sentence, but at the very least it shouldn't be done in the middle of a sentence!
* Perform a major cleanup of the usr.sbin Makefiles.obrien2001-07-201-4/+5
| | | | | These are not perfectly in agreement with each other style-wise, but they are orders of orders of magnitude more consistent style-wise than before.
* Remove whitespace at EOL.dd2001-07-151-2/+2
|
* - Backout botched attempt to introduce MANSECT feature.ru2001-03-261-0/+1
| | | | - MAN[1-9] -> MAN.
* Set the default manual section for usr.sbin/ to 8.ru2001-03-201-1/+0
|
* mdoc(7) police: use the new features of the Nm macro.ru2000-11-201-4/+4
|
* Add nsswitch support. By creating an /etc/nsswitch.conf file, you cannectar2000-09-064-215/+5
| | | | | | | | | | | | | | | | | | | | | | | | | | configure FreeBSD so that various databases such as passwd and group can be looked up using flat files, NIS, or Hesiod. = Hesiod has been added to libc (see hesiod(3)). = A library routine for parsing nsswitch.conf and invoking callback functions as specified has been added to libc (see nsdispatch(3)). = The following C library functions have been modified to use nsdispatch: . getgrent, getgrnam, getgrgid . getpwent, getpwnam, getpwuid . getusershell . getaddrinfo . gethostbyname, gethostbyname2, gethostbyaddr . getnetbyname, getnetbyaddr . getipnodebyname, getipnodebyaddr, getnodebyname, getnodebyaddr = host.conf has been removed from src/etc. rc.network has been modified to warn that host.conf is no longer used at boot time. In addition, if there is a host.conf but no nsswitch.conf, the latter is created at boot time from the former. Obtained from: NetBSD
* Fix various unsigned vs signed errors that caused problems with uidspaul2000-03-092-11/+20
| | | | | | | and gids bigger than 16 bits. Added checks for uids and gids that are bigger than 32 bits. Approved by: jkh (partly, this fix is bigger than I first intended)
* Remove single-space hard sentence breaks. These degrade the qualitysheldonh2000-03-011-1/+2
| | | | | of the typeset output, tend to make diffs harder to read and provide bad examples for new-comers to mdoc.
* Replace the -q option to pwd_mkdb with a test for PW_SCAN_BIG_IDS insheldonh1999-12-023-12/+18
| | | | | | | | | | | the environment. This allows big ID warnings to be suppressed for vipw and chpass as well. Since the environment variable test is only performed for callers of pw_scan() that do not set pw_big_ids_warning, the test can still be overriden. Currently, chpass and pwd_mkdb are the only users of pw_scan() and neither of them overrides the environment variable test.
* Allow empty UIDs if we are processing NIS records. I am not entirelyeivind1999-11-221-2/+4
| | | | | | | | happy with how this end up and will re-visit the entire empty field problem, but this patch solves the NIS problem for now. Submitted by: Dan Nelson <dan@emsphone.com> PR: 14865,14984
* Add to pwd_mkdb a -q option to silence warnings about large IDs. Add asheldonh1999-11-154-5/+26
| | | | | | | | | suitably ominous warning in the manual page. The diff applied is not the one provided in the attributed PR. PR: 13344 Reviewed by: bde
* Flag empty UID entries as errors (to stop typos from turning intoeivind1999-11-061-1/+6
| | | | alternate root accounts).
* Unifdef -DPASSWD_IGNORE_COMMENTS. This wasn't really optional andpeter1999-09-062-7/+2
| | | | we have enough pseudo-options already.
* Back out previous commit. I mistook passing commentary from bde forsheldonh1999-08-312-17/+6
| | | | | | review. Requested by: bde
* Only issue a warning for the first occurrence of a UID > USHRT_MAX andsheldonh1999-08-302-6/+17
| | | | | | | the first occurrence of a GID > USHRT_MAX. PR: 13344 Reviewed by: bde
* $Id$ -> $FreeBSD$peter1999-08-283-3/+3
|
* Add $Id$, to make it simpler for members of the translation teams tonik1999-07-121-0/+1
| | | | | | | | | | | | | | | | | track. The Id line is normally at the bottom of the main comment block in the man page, separated from the rest of the manpage by an empty comment, like so; .\" $Id$ .\" If the immediately preceding comment is a @(#) format ID marker than the the $Id$ will line up underneath it with no intervening blank lines. Otherwise, an additional blank line is inserted. Approved by: bde
* Enable source file locking in pwd_mkdb by including the proper letterbillf1999-01-011-3/+3
| | | | | | | | | | in getopt(). The code was there, the means to use it wasn't. Also update the usage() statment to reflect reality. PR: bin/9248 Submitted by: Jos Backus <jbackus@plex.nl> Forgotten By: dillon
* PR: bin/3478dillon1998-12-132-6/+43
| | | | | | | | | | | | | | Have pwd_mkdb lock the source file while rebuilding the database. When called by programs such as vipw, the source file is a temporary file and this does not conflict with the lock on /etc/master.passwd already held by vipw. When run manually, however, master.passwd is typically specified as the argument and the locking prevents other programs from messing with master.passwd during the database rebuild. Also pwd_mkdb uses a blocking exclusive lock as it may be called from a script. The -N option was added to cause pwd_mkdb to get the lock non-blocking and exit with an error if the attempt fails, again useful for scripts.
* Close PR bin/8753 pwd_mkdb problem when having comments in passwd filefoxfair1998-12-121-1/+5
| | | | Submitted by Chia-liang Kao clkao@CirX.ORG .
* Rename a static variable, so it will not shadowed by a local variable.dt1998-09-291-7/+7
| | | | | | Now comments will be ignored, rather than put junk in the password database. Broken in: rev. 1.21
* Fix usage stringache1998-06-091-2/+2
|
* Allow specification of cache-size to pwd_mkdbphk1998-04-192-2/+14
| | | | | | PR: 5193 Reviewed by: phk Submitted by: Nick Hilliard <nick@foobar.org>
* Reenable building of /etc/passwd.guido1998-02-191-3/+3
| | | | Pointed out by: "Julie M. Juracich" <julie@xaqti.com>
* Apparently, if fprintf() fails, it can return any negative valueguido1998-02-161-3/+3
| | | | Pointed out by: Bruce
* Check return values of fprintf, fclose (this one is overdone I guess)guido1998-02-151-7/+12
| | | | | | and pw_db->close. PR: 4202 (probably, I askd the submitter) Obtained from: OpenBSD
* Rename the pwd_mkdb(8) option '-c' to '-C' for better compatiblitywosch1998-01-102-9/+9
| | | | with BSD/OS.
* Staticize usage(). Cosmetics.charnier1997-10-103-16/+24
|
* db close routine actually writes data out to disk; return value wasjlemon1997-08-181-2/+4
| | | | | | not being checked. Change code to fail if db->close errors. PR: 4202
* Document the -u option.mpp1997-04-041-1/+6
| | | | Forgotten by: guido
* compare return value from getopt against -1 rather than EOF, per the finalimp1997-03-311-1/+1
| | | | posix standard on the topic.
* Fix possible (not stack) overflow from -d <dir> commandline option.davidn1997-03-201-1/+1
|
* Allow comments in password database. The comments are copied fromwosch1997-03-082-4/+26
| | | | | | | | | | | | | the password file into /etc/master.passwd and optional (-p) into /etc/passwd. Enable this feature with the compile option -DPASSWD_IGNORE_COMMENTS. The character `#' introduces a comment. Leading spaces and tabs are ignored: '^[ \t]*#.*\n$' Count an empty line - only spaces, tabs or newline - also as a comment. An empty line at the bottom of /etc/master.passwd is a common novice error and increased my mail load: '^[ \t]*\n$'
* Begin closing out PR #1519 (this requires a change to chpass too,wpaul1996-10-221-4/+12
| | | | | | | | | | and both changes need to be pulled into the stable branch). The problem here is that when pwd_mkdb creates /etc/passwd, it turns empty UID and GID fields into zeroes. To fix this, we check the _PWF_UID and _PWF_GID bits in the pw_fields flag: if the bits are not set, we print an empty field instead of a zero. This way, you don't get zeroes in the UID or GID fields unless you explicit want them.
* New option: [-c]wosch1996-08-192-3/+17
| | | | | Check if the password file is in the correct format. Do not change, add, or remove any files.
* Fixed brackets in usage message.bde1996-07-121-8/+10
| | | | Reformatted some of recent changes to KNF.
* Check if username is a NULL pointer before dereferencing it.martin1996-07-031-1/+1
|
* Implement incremental passwd database updates. This is done by ading a '-u'guido1996-07-011-133/+218
| | | | | | | | | | | | | | option to pwd_mkdb and adding this option to utilities invoking it. Further, the filling of both the secure and insecure databases has been merged into one loop giving also a performance improvemnet. Note that I did *not* change the adduser command. I don't read perl (it is a write only language anyway). The change will drastically improve performance for passwd and friends with large passwd files. Vipw's performance won't change. In order to do that some kind of diff should be made between the old and new master.passwd and depending the amount of changes, an incremental or complete update of the databases should be agreed upon.
* Submitted by: archie@whistle.comjulian1996-06-201-2/+2
| | | | | This program should COMPLAIN about uids > 65K but not abort.. they are after all legal, and some of us NEED them!
* NIS cleanups and fixes, the next generation, continued.wpaul1996-04-161-56/+11
| | | | | | | | | | | | | | | pwd_mkdb.c: - Don't save the PLUSCNT and MINUSCNT tokens: we don't need them anymore. - Count the + and - entires for NIS together instead of counting + and - entries seperately. Index all special NIS entries using new _PW_KEYYPBYNUM token. pwd.h: - Remove the PLUSBYNUM, MINUSBYNUM, PLUSCNT and MINUSCNT tokens and replace then with a single _PW_KEYYPBYNUM token.
* Remove trailing whitespace.rgrimes1995-05-302-3/+3
|
* Add what looks to be the right fix to this bogus code.jkh1995-03-241-1/+1
|
* Re-enable +::::::::: wildcards that I had previously disallowed.wpaul1995-03-231-5/+3
| | | | | | | | | | Note: if you put +::0:0:::::: in /etc/master.passwd as your only NIS entry, it will cause all NIS uids and gids to be remapped to zero. This is *intentional*. That's the way it's supposed to work. Enabling NIS with no remapping at all is done with +:::::::::, not +::0:0::::::. Similarly, +:::::::::/bin/csh will remap the shells of all NIS users to /bin/csh. Or, you could do +wpaul:::::::::/bin/csh to remap NIS user wpaul's shell to /bin/csh but leave everyone else alone.
* Summarily enable YP as soon as any a '+' is detected instead of generatingwpaul1995-03-231-9/+4
| | | | | special values when +user substitutions are in effect. The new getpwent code can handle all the special cases itself now.
* - Add support for embedding special entries in the password databaseswpaul1995-03-231-3/+72
| | | | | | | | | | for +@netgroup/-@netgroup entries. This saves the getpwent functions from having to do all the work. - Fix potential bug: when pwd_mkdb writes the YP-enabled flag to the secure password database, it uses the wrong database descriptor. (It uses the descriptor from the non-secure database, which is already closed by the time things are being written into the secure dastabase).
* Be sure to properly fail if there are not enough fields. Problemdg1995-01-271-2/+4
| | | | reported by MARC Giannoni <marc@cmc.eng.comsat.com>, this fix is by me.
* Fix security hole in YP password support, which wouldmake +user entrieswollman1994-09-201-3/+12
| | | | | act like + entries in some cases. Requires support in libc from next commit.
* Maintain pw_fields, and output same to password database.wollman1994-09-202-1/+39
| | | | | | | | | | | !!!!!!!! NB !!!!!!!! You MUST pwd_mkdb /etc/master.passwd before attempting to use the new libc, or things may go wrong. (I doubt anything actually /will/ go wrong, but the actual behavior is undefined. YOU HAVE BEEN WARNED.) The database format is, however, backwards-compatible, so old executables will still work.
OpenPOWER on IntegriCloud