History log of /openbsd-current/usr.sbin/ac/ac.c
Revision (<<< Hide revision tags) (Show revision tags >>>) Date Author Comments
# 1.30 21-May-2024 jsg

remove prototypes with no matching function and externs with no var
partly checked by millert@


Revision tags: OPENBSD_7_3_BASE OPENBSD_7_4_BASE OPENBSD_7_5_BASE
# 1.29 28-Dec-2022 jmc

spelling fixes; from paul tagliamonte
any parts of his diff not taken are noted on tech


# 1.28 04-Dec-2022 cheloha

userspace: remove vestigial '?' cases from top-level getopt(3) loops

getopt(3) returns '?' when it encounters a flag not present in the in
the optstring or if a flag is missing its option argument. We can
handle this case with the "default" failure case with no loss of
legibility. Hence, remove all the redundant "case '?':" lines.

Prompted by dlg@. With help from dlg@ and millert@.

Link: https://marc.info/?l=openbsd-tech&m=167011979726449&w=2

ok naddy@ millert@ dlg@


Revision tags: OPENBSD_6_4_BASE OPENBSD_6_5_BASE OPENBSD_6_6_BASE OPENBSD_6_7_BASE OPENBSD_6_8_BASE OPENBSD_6_9_BASE OPENBSD_7_0_BASE OPENBSD_7_1_BASE OPENBSD_7_2_BASE
# 1.27 23-Aug-2018 mestre

We can safely assume that our utmp(5) file format implementation can guarantee
space for the NUL character, nevertheless there will always be some piece of
software that can get it wrong and corrupt the database, so we must take this
into consideration.

That being said, there is one strlcpy(3) that needs to be reverted back into
strncpy(3) + '\0' since if we try to use a bogus wtmp(5) file with ac(8) that
is big enough then the NUL char is not verified and it will write memory
out-of-bounds which will make the program crash.

discussed with and OK cheloha@ deraadt@


# 1.26 20-Aug-2018 mestre

Since we can feed localtime(3) with garbage input, or with input it cannot
interpret, we always need to check its return value, and in the case it's NULL
then error and exit before proceeding further otherwise in this specific
program we would find a null dereference down the road which would make the
program segfault.

OK cheloha@


# 1.25 26-Apr-2018 guenther

Use <fcntl.h> instead of <sys/file.h> for open() and friends.
Delete a bunch of unnecessary #includes and sort to match style(9)
while doing the above cleanup.

ok deraadt@ krw@


Revision tags: OPENBSD_5_9_BASE OPENBSD_6_0_BASE OPENBSD_6_1_BASE OPENBSD_6_2_BASE OPENBSD_6_3_BASE
# 1.24 12-Oct-2015 deraadt

pledge to only use "stdio rpath"; rpath is for readig the wtmp files.
ok doug


Revision tags: OPENBSD_5_7_BASE OPENBSD_5_8_BASE
# 1.23 09-Feb-2015 deraadt

clean up flags++ instances around getopt()
ok florian


Revision tags: OPENBSD_5_3_BASE OPENBSD_5_4_BASE OPENBSD_5_5_BASE OPENBSD_5_6_BASE
# 1.22 31-Aug-2012 millert

Update license to two-clause BSD. Permission to do so was granted
by the authors as per Ed Schouten.


Revision tags: OPENBSD_4_8_BASE OPENBSD_4_9_BASE OPENBSD_5_0_BASE OPENBSD_5_1_BASE OPENBSD_5_2_BASE
# 1.21 04-Jul-2010 millert

Remove the non-standard, commented out, -c option.
OK tedu@ jmc@ deraadt@


Revision tags: OPENBSD_4_7_BASE
# 1.20 27-Oct-2009 deraadt

rcsid[] and sccsid[] and copyright[] are essentially unmaintained (and
unmaintainable). these days, people use source. these id's do not provide
any benefit, and do hurt the small install media
(the 33,000 line diff is essentially mechanical)
ok with the idea millert, ok dms


Revision tags: OPENBSD_4_3_BASE OPENBSD_4_4_BASE OPENBSD_4_5_BASE OPENBSD_4_6_BASE
# 1.19 17-Nov-2007 sobrado

the usage message should start with "usage:";
no need for "users", ellipsis allows various users to be specified;
synchronize synopsis and usage

ok jmc@


Revision tags: OPENBSD_4_0_BASE OPENBSD_4_1_BASE OPENBSD_4_2_BASE
# 1.18 03-Apr-2006 dhill

Change an int to size_t
Remove NEW()
Remove unused return value of add_tty()

ok moritz@


Revision tags: OPENBSD_3_5_BASE OPENBSD_3_6_BASE OPENBSD_3_7_BASE OPENBSD_3_8_BASE OPENBSD_3_9_BASE
# 1.17 18-Mar-2004 tedu

0 vs NULL, from Joris Vink


# 1.16 21-Jan-2004 deraadt

spacing


Revision tags: OPENBSD_3_4_BASE
# 1.15 20-Jul-2003 mickey

ignore backwards going entries


# 1.14 11-Jun-2003 deraadt

some ansification, some de-register


Revision tags: OPENBSD_3_3_BASE
# 1.13 13-Mar-2003 deraadt

lots of sprintf -> snprintf and strcpy -> strlcpy; checked by tedu


Revision tags: OPENBSD_3_2_BASE
# 1.12 30-May-2002 deraadt

minor KNF


Revision tags: OPENBSD_3_1_BASE
# 1.11 17-Feb-2002 millert

Manual cleanup of remaining userland __P use (excluding packages maintained outside the tree)


# 1.10 16-Feb-2002 millert

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.


Revision tags: OPENBSD_3_0_BASE
# 1.9 24-May-2001 pvalchev

- Let '-' mean stdin.
- Correct usage message: -p and -d cannot be usefully used together.
- Use __progname in usage()
millert@ ok


# 1.8 05-May-2001 mickey

use strlcpy vs strncpy+a[n-1]='\0'


Revision tags: OPENBSD_2_2_BASE OPENBSD_2_3_BASE OPENBSD_2_4_BASE OPENBSD_2_5_BASE OPENBSD_2_6_BASE OPENBSD_2_7_BASE OPENBSD_2_8_BASE OPENBSD_2_9_BASE
# 1.7 09-Oct-1997 deraadt

if user specified wtmp file, use timestamp on final record instead of
current system time for "end of run" time; tim@pool1.convey.ru


# 1.6 30-Aug-1997 deraadt

incorrect length in comparison; hubert.feyrer@rz.uni-regensburg.de


# 1.5 01-Aug-1997 deraadt

catch ptys correctly; tolik@www.tomsk.su


# 1.4 02-Jun-1997 deraadt

correct for our pty list


Revision tags: OPENBSD_2_1_BASE
# 1.3 15-Jan-1997 millert

getopt(3) returns -1 when out of args, not EOF, whee!


Revision tags: OPENBSD_2_0_BASE
# 1.2 29-Aug-1996 deraadt

fix warnings


# 1.1 18-Oct-1995 deraadt

branches: 1.1.1;
Initial revision


# 1.29 28-Dec-2022 jmc

spelling fixes; from paul tagliamonte
any parts of his diff not taken are noted on tech


# 1.28 04-Dec-2022 cheloha

userspace: remove vestigial '?' cases from top-level getopt(3) loops

getopt(3) returns '?' when it encounters a flag not present in the in
the optstring or if a flag is missing its option argument. We can
handle this case with the "default" failure case with no loss of
legibility. Hence, remove all the redundant "case '?':" lines.

Prompted by dlg@. With help from dlg@ and millert@.

Link: https://marc.info/?l=openbsd-tech&m=167011979726449&w=2

ok naddy@ millert@ dlg@


Revision tags: OPENBSD_6_4_BASE OPENBSD_6_5_BASE OPENBSD_6_6_BASE OPENBSD_6_7_BASE OPENBSD_6_8_BASE OPENBSD_6_9_BASE OPENBSD_7_0_BASE OPENBSD_7_1_BASE OPENBSD_7_2_BASE
# 1.27 23-Aug-2018 mestre

We can safely assume that our utmp(5) file format implementation can guarantee
space for the NUL character, nevertheless there will always be some piece of
software that can get it wrong and corrupt the database, so we must take this
into consideration.

That being said, there is one strlcpy(3) that needs to be reverted back into
strncpy(3) + '\0' since if we try to use a bogus wtmp(5) file with ac(8) that
is big enough then the NUL char is not verified and it will write memory
out-of-bounds which will make the program crash.

discussed with and OK cheloha@ deraadt@


# 1.26 20-Aug-2018 mestre

Since we can feed localtime(3) with garbage input, or with input it cannot
interpret, we always need to check its return value, and in the case it's NULL
then error and exit before proceeding further otherwise in this specific
program we would find a null dereference down the road which would make the
program segfault.

OK cheloha@


# 1.25 26-Apr-2018 guenther

Use <fcntl.h> instead of <sys/file.h> for open() and friends.
Delete a bunch of unnecessary #includes and sort to match style(9)
while doing the above cleanup.

ok deraadt@ krw@


Revision tags: OPENBSD_5_9_BASE OPENBSD_6_0_BASE OPENBSD_6_1_BASE OPENBSD_6_2_BASE OPENBSD_6_3_BASE
# 1.24 12-Oct-2015 deraadt

pledge to only use "stdio rpath"; rpath is for readig the wtmp files.
ok doug


Revision tags: OPENBSD_5_7_BASE OPENBSD_5_8_BASE
# 1.23 09-Feb-2015 deraadt

clean up flags++ instances around getopt()
ok florian


Revision tags: OPENBSD_5_3_BASE OPENBSD_5_4_BASE OPENBSD_5_5_BASE OPENBSD_5_6_BASE
# 1.22 31-Aug-2012 millert

Update license to two-clause BSD. Permission to do so was granted
by the authors as per Ed Schouten.


Revision tags: OPENBSD_4_8_BASE OPENBSD_4_9_BASE OPENBSD_5_0_BASE OPENBSD_5_1_BASE OPENBSD_5_2_BASE
# 1.21 04-Jul-2010 millert

Remove the non-standard, commented out, -c option.
OK tedu@ jmc@ deraadt@


Revision tags: OPENBSD_4_7_BASE
# 1.20 27-Oct-2009 deraadt

rcsid[] and sccsid[] and copyright[] are essentially unmaintained (and
unmaintainable). these days, people use source. these id's do not provide
any benefit, and do hurt the small install media
(the 33,000 line diff is essentially mechanical)
ok with the idea millert, ok dms


Revision tags: OPENBSD_4_3_BASE OPENBSD_4_4_BASE OPENBSD_4_5_BASE OPENBSD_4_6_BASE
# 1.19 17-Nov-2007 sobrado

the usage message should start with "usage:";
no need for "users", ellipsis allows various users to be specified;
synchronize synopsis and usage

ok jmc@


Revision tags: OPENBSD_4_0_BASE OPENBSD_4_1_BASE OPENBSD_4_2_BASE
# 1.18 03-Apr-2006 dhill

Change an int to size_t
Remove NEW()
Remove unused return value of add_tty()

ok moritz@


Revision tags: OPENBSD_3_5_BASE OPENBSD_3_6_BASE OPENBSD_3_7_BASE OPENBSD_3_8_BASE OPENBSD_3_9_BASE
# 1.17 18-Mar-2004 tedu

0 vs NULL, from Joris Vink


# 1.16 21-Jan-2004 deraadt

spacing


Revision tags: OPENBSD_3_4_BASE
# 1.15 20-Jul-2003 mickey

ignore backwards going entries


# 1.14 11-Jun-2003 deraadt

some ansification, some de-register


Revision tags: OPENBSD_3_3_BASE
# 1.13 13-Mar-2003 deraadt

lots of sprintf -> snprintf and strcpy -> strlcpy; checked by tedu


Revision tags: OPENBSD_3_2_BASE
# 1.12 30-May-2002 deraadt

minor KNF


Revision tags: OPENBSD_3_1_BASE
# 1.11 17-Feb-2002 millert

Manual cleanup of remaining userland __P use (excluding packages maintained outside the tree)


# 1.10 16-Feb-2002 millert

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.


Revision tags: OPENBSD_3_0_BASE
# 1.9 24-May-2001 pvalchev

- Let '-' mean stdin.
- Correct usage message: -p and -d cannot be usefully used together.
- Use __progname in usage()
millert@ ok


# 1.8 05-May-2001 mickey

use strlcpy vs strncpy+a[n-1]='\0'


Revision tags: OPENBSD_2_2_BASE OPENBSD_2_3_BASE OPENBSD_2_4_BASE OPENBSD_2_5_BASE OPENBSD_2_6_BASE OPENBSD_2_7_BASE OPENBSD_2_8_BASE OPENBSD_2_9_BASE
# 1.7 09-Oct-1997 deraadt

if user specified wtmp file, use timestamp on final record instead of
current system time for "end of run" time; tim@pool1.convey.ru


# 1.6 30-Aug-1997 deraadt

incorrect length in comparison; hubert.feyrer@rz.uni-regensburg.de


# 1.5 01-Aug-1997 deraadt

catch ptys correctly; tolik@www.tomsk.su


# 1.4 02-Jun-1997 deraadt

correct for our pty list


Revision tags: OPENBSD_2_1_BASE
# 1.3 15-Jan-1997 millert

getopt(3) returns -1 when out of args, not EOF, whee!


Revision tags: OPENBSD_2_0_BASE
# 1.2 29-Aug-1996 deraadt

fix warnings


# 1.1 18-Oct-1995 deraadt

branches: 1.1.1;
Initial revision


# 1.28 04-Dec-2022 cheloha

userspace: remove vestigial '?' cases from top-level getopt(3) loops

getopt(3) returns '?' when it encounters a flag not present in the in
the optstring or if a flag is missing its option argument. We can
handle this case with the "default" failure case with no loss of
legibility. Hence, remove all the redundant "case '?':" lines.

Prompted by dlg@. With help from dlg@ and millert@.

Link: https://marc.info/?l=openbsd-tech&m=167011979726449&w=2

ok naddy@ millert@ dlg@


Revision tags: OPENBSD_6_4_BASE OPENBSD_6_5_BASE OPENBSD_6_6_BASE OPENBSD_6_7_BASE OPENBSD_6_8_BASE OPENBSD_6_9_BASE OPENBSD_7_0_BASE OPENBSD_7_1_BASE OPENBSD_7_2_BASE
# 1.27 23-Aug-2018 mestre

We can safely assume that our utmp(5) file format implementation can guarantee
space for the NUL character, nevertheless there will always be some piece of
software that can get it wrong and corrupt the database, so we must take this
into consideration.

That being said, there is one strlcpy(3) that needs to be reverted back into
strncpy(3) + '\0' since if we try to use a bogus wtmp(5) file with ac(8) that
is big enough then the NUL char is not verified and it will write memory
out-of-bounds which will make the program crash.

discussed with and OK cheloha@ deraadt@


# 1.26 20-Aug-2018 mestre

Since we can feed localtime(3) with garbage input, or with input it cannot
interpret, we always need to check its return value, and in the case it's NULL
then error and exit before proceeding further otherwise in this specific
program we would find a null dereference down the road which would make the
program segfault.

OK cheloha@


# 1.25 26-Apr-2018 guenther

Use <fcntl.h> instead of <sys/file.h> for open() and friends.
Delete a bunch of unnecessary #includes and sort to match style(9)
while doing the above cleanup.

ok deraadt@ krw@


Revision tags: OPENBSD_5_9_BASE OPENBSD_6_0_BASE OPENBSD_6_1_BASE OPENBSD_6_2_BASE OPENBSD_6_3_BASE
# 1.24 12-Oct-2015 deraadt

pledge to only use "stdio rpath"; rpath is for readig the wtmp files.
ok doug


Revision tags: OPENBSD_5_7_BASE OPENBSD_5_8_BASE
# 1.23 09-Feb-2015 deraadt

clean up flags++ instances around getopt()
ok florian


Revision tags: OPENBSD_5_3_BASE OPENBSD_5_4_BASE OPENBSD_5_5_BASE OPENBSD_5_6_BASE
# 1.22 31-Aug-2012 millert

Update license to two-clause BSD. Permission to do so was granted
by the authors as per Ed Schouten.


Revision tags: OPENBSD_4_8_BASE OPENBSD_4_9_BASE OPENBSD_5_0_BASE OPENBSD_5_1_BASE OPENBSD_5_2_BASE
# 1.21 04-Jul-2010 millert

Remove the non-standard, commented out, -c option.
OK tedu@ jmc@ deraadt@


Revision tags: OPENBSD_4_7_BASE
# 1.20 27-Oct-2009 deraadt

rcsid[] and sccsid[] and copyright[] are essentially unmaintained (and
unmaintainable). these days, people use source. these id's do not provide
any benefit, and do hurt the small install media
(the 33,000 line diff is essentially mechanical)
ok with the idea millert, ok dms


Revision tags: OPENBSD_4_3_BASE OPENBSD_4_4_BASE OPENBSD_4_5_BASE OPENBSD_4_6_BASE
# 1.19 17-Nov-2007 sobrado

the usage message should start with "usage:";
no need for "users", ellipsis allows various users to be specified;
synchronize synopsis and usage

ok jmc@


Revision tags: OPENBSD_4_0_BASE OPENBSD_4_1_BASE OPENBSD_4_2_BASE
# 1.18 03-Apr-2006 dhill

Change an int to size_t
Remove NEW()
Remove unused return value of add_tty()

ok moritz@


Revision tags: OPENBSD_3_5_BASE OPENBSD_3_6_BASE OPENBSD_3_7_BASE OPENBSD_3_8_BASE OPENBSD_3_9_BASE
# 1.17 18-Mar-2004 tedu

0 vs NULL, from Joris Vink


# 1.16 21-Jan-2004 deraadt

spacing


Revision tags: OPENBSD_3_4_BASE
# 1.15 20-Jul-2003 mickey

ignore backwards going entries


# 1.14 11-Jun-2003 deraadt

some ansification, some de-register


Revision tags: OPENBSD_3_3_BASE
# 1.13 13-Mar-2003 deraadt

lots of sprintf -> snprintf and strcpy -> strlcpy; checked by tedu


Revision tags: OPENBSD_3_2_BASE
# 1.12 30-May-2002 deraadt

minor KNF


Revision tags: OPENBSD_3_1_BASE
# 1.11 17-Feb-2002 millert

Manual cleanup of remaining userland __P use (excluding packages maintained outside the tree)


# 1.10 16-Feb-2002 millert

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.


Revision tags: OPENBSD_3_0_BASE
# 1.9 24-May-2001 pvalchev

- Let '-' mean stdin.
- Correct usage message: -p and -d cannot be usefully used together.
- Use __progname in usage()
millert@ ok


# 1.8 05-May-2001 mickey

use strlcpy vs strncpy+a[n-1]='\0'


Revision tags: OPENBSD_2_2_BASE OPENBSD_2_3_BASE OPENBSD_2_4_BASE OPENBSD_2_5_BASE OPENBSD_2_6_BASE OPENBSD_2_7_BASE OPENBSD_2_8_BASE OPENBSD_2_9_BASE
# 1.7 09-Oct-1997 deraadt

if user specified wtmp file, use timestamp on final record instead of
current system time for "end of run" time; tim@pool1.convey.ru


# 1.6 30-Aug-1997 deraadt

incorrect length in comparison; hubert.feyrer@rz.uni-regensburg.de


# 1.5 01-Aug-1997 deraadt

catch ptys correctly; tolik@www.tomsk.su


# 1.4 02-Jun-1997 deraadt

correct for our pty list


Revision tags: OPENBSD_2_1_BASE
# 1.3 15-Jan-1997 millert

getopt(3) returns -1 when out of args, not EOF, whee!


Revision tags: OPENBSD_2_0_BASE
# 1.2 29-Aug-1996 deraadt

fix warnings


# 1.1 18-Oct-1995 deraadt

branches: 1.1.1;
Initial revision


# 1.27 23-Aug-2018 mestre

We can safely assume that our utmp(5) file format implementation can guarantee
space for the NUL character, nevertheless there will always be some piece of
software that can get it wrong and corrupt the database, so we must take this
into consideration.

That being said, there is one strlcpy(3) that needs to be reverted back into
strncpy(3) + '\0' since if we try to use a bogus wtmp(5) file with ac(8) that
is big enough then the NUL char is not verified and it will write memory
out-of-bounds which will make the program crash.

discussed with and OK cheloha@ deraadt@


# 1.26 20-Aug-2018 mestre

Since we can feed localtime(3) with garbage input, or with input it cannot
interpret, we always need to check its return value, and in the case it's NULL
then error and exit before proceeding further otherwise in this specific
program we would find a null dereference down the road which would make the
program segfault.

OK cheloha@


# 1.25 26-Apr-2018 guenther

Use <fcntl.h> instead of <sys/file.h> for open() and friends.
Delete a bunch of unnecessary #includes and sort to match style(9)
while doing the above cleanup.

ok deraadt@ krw@


Revision tags: OPENBSD_5_9_BASE OPENBSD_6_0_BASE OPENBSD_6_1_BASE OPENBSD_6_2_BASE OPENBSD_6_3_BASE
# 1.24 12-Oct-2015 deraadt

pledge to only use "stdio rpath"; rpath is for readig the wtmp files.
ok doug


Revision tags: OPENBSD_5_7_BASE OPENBSD_5_8_BASE
# 1.23 09-Feb-2015 deraadt

clean up flags++ instances around getopt()
ok florian


Revision tags: OPENBSD_5_3_BASE OPENBSD_5_4_BASE OPENBSD_5_5_BASE OPENBSD_5_6_BASE
# 1.22 31-Aug-2012 millert

Update license to two-clause BSD. Permission to do so was granted
by the authors as per Ed Schouten.


Revision tags: OPENBSD_4_8_BASE OPENBSD_4_9_BASE OPENBSD_5_0_BASE OPENBSD_5_1_BASE OPENBSD_5_2_BASE
# 1.21 04-Jul-2010 millert

Remove the non-standard, commented out, -c option.
OK tedu@ jmc@ deraadt@


Revision tags: OPENBSD_4_7_BASE
# 1.20 27-Oct-2009 deraadt

rcsid[] and sccsid[] and copyright[] are essentially unmaintained (and
unmaintainable). these days, people use source. these id's do not provide
any benefit, and do hurt the small install media
(the 33,000 line diff is essentially mechanical)
ok with the idea millert, ok dms


Revision tags: OPENBSD_4_3_BASE OPENBSD_4_4_BASE OPENBSD_4_5_BASE OPENBSD_4_6_BASE
# 1.19 17-Nov-2007 sobrado

the usage message should start with "usage:";
no need for "users", ellipsis allows various users to be specified;
synchronize synopsis and usage

ok jmc@


Revision tags: OPENBSD_4_0_BASE OPENBSD_4_1_BASE OPENBSD_4_2_BASE
# 1.18 03-Apr-2006 dhill

Change an int to size_t
Remove NEW()
Remove unused return value of add_tty()

ok moritz@


Revision tags: OPENBSD_3_5_BASE OPENBSD_3_6_BASE OPENBSD_3_7_BASE OPENBSD_3_8_BASE OPENBSD_3_9_BASE
# 1.17 18-Mar-2004 tedu

0 vs NULL, from Joris Vink


# 1.16 21-Jan-2004 deraadt

spacing


Revision tags: OPENBSD_3_4_BASE
# 1.15 20-Jul-2003 mickey

ignore backwards going entries


# 1.14 11-Jun-2003 deraadt

some ansification, some de-register


Revision tags: OPENBSD_3_3_BASE
# 1.13 13-Mar-2003 deraadt

lots of sprintf -> snprintf and strcpy -> strlcpy; checked by tedu


Revision tags: OPENBSD_3_2_BASE
# 1.12 30-May-2002 deraadt

minor KNF


Revision tags: OPENBSD_3_1_BASE
# 1.11 17-Feb-2002 millert

Manual cleanup of remaining userland __P use (excluding packages maintained outside the tree)


# 1.10 16-Feb-2002 millert

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.


Revision tags: OPENBSD_3_0_BASE
# 1.9 24-May-2001 pvalchev

- Let '-' mean stdin.
- Correct usage message: -p and -d cannot be usefully used together.
- Use __progname in usage()
millert@ ok


# 1.8 05-May-2001 mickey

use strlcpy vs strncpy+a[n-1]='\0'


Revision tags: OPENBSD_2_2_BASE OPENBSD_2_3_BASE OPENBSD_2_4_BASE OPENBSD_2_5_BASE OPENBSD_2_6_BASE OPENBSD_2_7_BASE OPENBSD_2_8_BASE OPENBSD_2_9_BASE
# 1.7 09-Oct-1997 deraadt

if user specified wtmp file, use timestamp on final record instead of
current system time for "end of run" time; tim@pool1.convey.ru


# 1.6 30-Aug-1997 deraadt

incorrect length in comparison; hubert.feyrer@rz.uni-regensburg.de


# 1.5 01-Aug-1997 deraadt

catch ptys correctly; tolik@www.tomsk.su


# 1.4 02-Jun-1997 deraadt

correct for our pty list


Revision tags: OPENBSD_2_1_BASE
# 1.3 15-Jan-1997 millert

getopt(3) returns -1 when out of args, not EOF, whee!


Revision tags: OPENBSD_2_0_BASE
# 1.2 29-Aug-1996 deraadt

fix warnings


# 1.1 18-Oct-1995 deraadt

branches: 1.1.1;
Initial revision


# 1.25 26-Apr-2018 guenther

Use <fcntl.h> instead of <sys/file.h> for open() and friends.
Delete a bunch of unnecessary #includes and sort to match style(9)
while doing the above cleanup.

ok deraadt@ krw@


Revision tags: OPENBSD_5_9_BASE OPENBSD_6_0_BASE OPENBSD_6_1_BASE OPENBSD_6_2_BASE OPENBSD_6_3_BASE
# 1.24 12-Oct-2015 deraadt

pledge to only use "stdio rpath"; rpath is for readig the wtmp files.
ok doug


Revision tags: OPENBSD_5_7_BASE OPENBSD_5_8_BASE
# 1.23 09-Feb-2015 deraadt

clean up flags++ instances around getopt()
ok florian


Revision tags: OPENBSD_5_3_BASE OPENBSD_5_4_BASE OPENBSD_5_5_BASE OPENBSD_5_6_BASE
# 1.22 31-Aug-2012 millert

Update license to two-clause BSD. Permission to do so was granted
by the authors as per Ed Schouten.


Revision tags: OPENBSD_4_8_BASE OPENBSD_4_9_BASE OPENBSD_5_0_BASE OPENBSD_5_1_BASE OPENBSD_5_2_BASE
# 1.21 04-Jul-2010 millert

Remove the non-standard, commented out, -c option.
OK tedu@ jmc@ deraadt@


Revision tags: OPENBSD_4_7_BASE
# 1.20 27-Oct-2009 deraadt

rcsid[] and sccsid[] and copyright[] are essentially unmaintained (and
unmaintainable). these days, people use source. these id's do not provide
any benefit, and do hurt the small install media
(the 33,000 line diff is essentially mechanical)
ok with the idea millert, ok dms


Revision tags: OPENBSD_4_3_BASE OPENBSD_4_4_BASE OPENBSD_4_5_BASE OPENBSD_4_6_BASE
# 1.19 17-Nov-2007 sobrado

the usage message should start with "usage:";
no need for "users", ellipsis allows various users to be specified;
synchronize synopsis and usage

ok jmc@


Revision tags: OPENBSD_4_0_BASE OPENBSD_4_1_BASE OPENBSD_4_2_BASE
# 1.18 03-Apr-2006 dhill

Change an int to size_t
Remove NEW()
Remove unused return value of add_tty()

ok moritz@


Revision tags: OPENBSD_3_5_BASE OPENBSD_3_6_BASE OPENBSD_3_7_BASE OPENBSD_3_8_BASE OPENBSD_3_9_BASE
# 1.17 18-Mar-2004 tedu

0 vs NULL, from Joris Vink


# 1.16 21-Jan-2004 deraadt

spacing


Revision tags: OPENBSD_3_4_BASE
# 1.15 20-Jul-2003 mickey

ignore backwards going entries


# 1.14 11-Jun-2003 deraadt

some ansification, some de-register


Revision tags: OPENBSD_3_3_BASE
# 1.13 13-Mar-2003 deraadt

lots of sprintf -> snprintf and strcpy -> strlcpy; checked by tedu


Revision tags: OPENBSD_3_2_BASE
# 1.12 30-May-2002 deraadt

minor KNF


Revision tags: OPENBSD_3_1_BASE
# 1.11 17-Feb-2002 millert

Manual cleanup of remaining userland __P use (excluding packages maintained outside the tree)


# 1.10 16-Feb-2002 millert

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.


Revision tags: OPENBSD_3_0_BASE
# 1.9 24-May-2001 pvalchev

- Let '-' mean stdin.
- Correct usage message: -p and -d cannot be usefully used together.
- Use __progname in usage()
millert@ ok


# 1.8 05-May-2001 mickey

use strlcpy vs strncpy+a[n-1]='\0'


Revision tags: OPENBSD_2_2_BASE OPENBSD_2_3_BASE OPENBSD_2_4_BASE OPENBSD_2_5_BASE OPENBSD_2_6_BASE OPENBSD_2_7_BASE OPENBSD_2_8_BASE OPENBSD_2_9_BASE
# 1.7 09-Oct-1997 deraadt

if user specified wtmp file, use timestamp on final record instead of
current system time for "end of run" time; tim@pool1.convey.ru


# 1.6 30-Aug-1997 deraadt

incorrect length in comparison; hubert.feyrer@rz.uni-regensburg.de


# 1.5 01-Aug-1997 deraadt

catch ptys correctly; tolik@www.tomsk.su


# 1.4 02-Jun-1997 deraadt

correct for our pty list


Revision tags: OPENBSD_2_1_BASE
# 1.3 15-Jan-1997 millert

getopt(3) returns -1 when out of args, not EOF, whee!


Revision tags: OPENBSD_2_0_BASE
# 1.2 29-Aug-1996 deraadt

fix warnings


# 1.1 18-Oct-1995 deraadt

branches: 1.1.1;
Initial revision


Revision tags: OPENBSD_5_9_BASE OPENBSD_6_0_BASE OPENBSD_6_1_BASE OPENBSD_6_2_BASE
# 1.24 12-Oct-2015 deraadt

pledge to only use "stdio rpath"; rpath is for readig the wtmp files.
ok doug


Revision tags: OPENBSD_5_7_BASE OPENBSD_5_8_BASE
# 1.23 09-Feb-2015 deraadt

clean up flags++ instances around getopt()
ok florian


Revision tags: OPENBSD_5_3_BASE OPENBSD_5_4_BASE OPENBSD_5_5_BASE OPENBSD_5_6_BASE
# 1.22 31-Aug-2012 millert

Update license to two-clause BSD. Permission to do so was granted
by the authors as per Ed Schouten.


Revision tags: OPENBSD_4_8_BASE OPENBSD_4_9_BASE OPENBSD_5_0_BASE OPENBSD_5_1_BASE OPENBSD_5_2_BASE
# 1.21 04-Jul-2010 millert

Remove the non-standard, commented out, -c option.
OK tedu@ jmc@ deraadt@


Revision tags: OPENBSD_4_7_BASE
# 1.20 27-Oct-2009 deraadt

rcsid[] and sccsid[] and copyright[] are essentially unmaintained (and
unmaintainable). these days, people use source. these id's do not provide
any benefit, and do hurt the small install media
(the 33,000 line diff is essentially mechanical)
ok with the idea millert, ok dms


Revision tags: OPENBSD_4_3_BASE OPENBSD_4_4_BASE OPENBSD_4_5_BASE OPENBSD_4_6_BASE
# 1.19 17-Nov-2007 sobrado

the usage message should start with "usage:";
no need for "users", ellipsis allows various users to be specified;
synchronize synopsis and usage

ok jmc@


Revision tags: OPENBSD_4_0_BASE OPENBSD_4_1_BASE OPENBSD_4_2_BASE
# 1.18 03-Apr-2006 dhill

Change an int to size_t
Remove NEW()
Remove unused return value of add_tty()

ok moritz@


Revision tags: OPENBSD_3_5_BASE OPENBSD_3_6_BASE OPENBSD_3_7_BASE OPENBSD_3_8_BASE OPENBSD_3_9_BASE
# 1.17 18-Mar-2004 tedu

0 vs NULL, from Joris Vink


# 1.16 21-Jan-2004 deraadt

spacing


Revision tags: OPENBSD_3_4_BASE
# 1.15 20-Jul-2003 mickey

ignore backwards going entries


# 1.14 11-Jun-2003 deraadt

some ansification, some de-register


Revision tags: OPENBSD_3_3_BASE
# 1.13 13-Mar-2003 deraadt

lots of sprintf -> snprintf and strcpy -> strlcpy; checked by tedu


Revision tags: OPENBSD_3_2_BASE
# 1.12 30-May-2002 deraadt

minor KNF


Revision tags: OPENBSD_3_1_BASE
# 1.11 17-Feb-2002 millert

Manual cleanup of remaining userland __P use (excluding packages maintained outside the tree)


# 1.10 16-Feb-2002 millert

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.


Revision tags: OPENBSD_3_0_BASE
# 1.9 24-May-2001 pvalchev

- Let '-' mean stdin.
- Correct usage message: -p and -d cannot be usefully used together.
- Use __progname in usage()
millert@ ok


# 1.8 05-May-2001 mickey

use strlcpy vs strncpy+a[n-1]='\0'


Revision tags: OPENBSD_2_2_BASE OPENBSD_2_3_BASE OPENBSD_2_4_BASE OPENBSD_2_5_BASE OPENBSD_2_6_BASE OPENBSD_2_7_BASE OPENBSD_2_8_BASE OPENBSD_2_9_BASE
# 1.7 09-Oct-1997 deraadt

if user specified wtmp file, use timestamp on final record instead of
current system time for "end of run" time; tim@pool1.convey.ru


# 1.6 30-Aug-1997 deraadt

incorrect length in comparison; hubert.feyrer@rz.uni-regensburg.de


# 1.5 01-Aug-1997 deraadt

catch ptys correctly; tolik@www.tomsk.su


# 1.4 02-Jun-1997 deraadt

correct for our pty list


Revision tags: OPENBSD_2_1_BASE
# 1.3 15-Jan-1997 millert

getopt(3) returns -1 when out of args, not EOF, whee!


Revision tags: OPENBSD_2_0_BASE
# 1.2 29-Aug-1996 deraadt

fix warnings


# 1.1 18-Oct-1995 deraadt

branches: 1.1.1;
Initial revision