History log of /openbsd-current/usr.bin/cmp/cmp.c
Revision (<<< Hide revision tags) (Show revision tags >>>) Date Author Comments
# 1.19 24-Oct-2021 deraadt

For open/openat, if the flags parameter does not contain O_CREAT, the
3rd (variadic) mode_t parameter is irrelevant. Many developers in the past
have passed mode_t (0, 044, 0644, or such), which might lead future people
to copy this broken idiom, and perhaps even believe this parameter has some
meaning or implication or application. Delete them all.
This comes out of a conversation where tb@ noticed that a strange (but
intentional) pledge behaviour is to always knock-out high-bits from
mode_t on a number of system calls as a safety factor, and his bewilderment
that this appeared to be happening against valid modes (at least visually),
but no sorry, they are all irrelevant junk. They could all be 0xdeafbeef.
ok millert


Revision tags: OPENBSD_6_3_BASE 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
# 1.18 05-Mar-2018 cheloha

Stricter checking for skip1 and skip2.

As we do elsewhere in the tree, make sure we (a) got a number at all,
(b) that it doesn't have non-digits dangling off the end, (c) that it's
positive, and (d) that it didn't overflow.

ok tb@


# 1.17 05-Mar-2018 cheloha

Add fatal() and fatalx() and put them to use.

... but don't use them for pledge errors or usage errors.

They are convenience wrappers that check if sflag is set before
logging an error. They always exit with status 2.

We were not honoring sflag in special.c at all. Now we do.

ok tb@


Revision tags: OPENBSD_6_1_BASE OPENBSD_6_2_BASE
# 1.16 28-Oct-2016 schwarze

Delete some useless setlocale(3) calls in /usr/bin, no functional change.
Patches from Jan Stary <hans at stare dot cz>, tweaked by me and tb@.
While here, apply some simple style improvements:
Sort headers, static void __dead usage(), return from main(),
zap case '?', drop /* NOTREACHED */, drop break after usage(), ...
OK tb@ millert@


# 1.15 14-Aug-2016 guenther

Convert remaining calls to strtoq/strtouq in base with strtoll/strtoull.
Fix a type mismatch in ftp's "page" command and could make transfers restart
at the wrong position.

ok and a ull->ll tweak from natano@, ok tedu@


Revision tags: OPENBSD_5_9_BASE OPENBSD_6_0_BASE
# 1.14 29-Dec-2015 gsoares

fix exit status on pledge(2) failure.

OK tb@ jsg@


# 1.13 10-Oct-2015 doug

Add pledge support to cmp(1).

This is a simple case of using "stdio rpath" until all files are opened and
then dropping down to "stdio" since it includes "rw" on open fds.

ok deraadt@


Revision tags: OPENBSD_4_7_BASE OPENBSD_4_8_BASE OPENBSD_4_9_BASE OPENBSD_5_0_BASE OPENBSD_5_1_BASE OPENBSD_5_2_BASE OPENBSD_5_3_BASE OPENBSD_5_4_BASE OPENBSD_5_5_BASE OPENBSD_5_6_BASE OPENBSD_5_7_BASE OPENBSD_5_8_BASE
# 1.12 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_3_4_BASE OPENBSD_3_5_BASE OPENBSD_3_6_BASE OPENBSD_3_7_BASE OPENBSD_3_8_BASE OPENBSD_3_9_BASE OPENBSD_4_0_BASE OPENBSD_4_1_BASE OPENBSD_4_2_BASE OPENBSD_4_3_BASE OPENBSD_4_4_BASE OPENBSD_4_5_BASE OPENBSD_4_6_BASE
# 1.11 10-Jun-2003 deraadt

mostly ansi cleanup; pval ok


# 1.10 03-Jun-2003 millert

Remove the advertising clause in the UCB license which Berkeley
rescinded 22 July 1999. Proofed by myself and Theo.


Revision tags: OPENBSD_3_1_BASE OPENBSD_3_2_BASE OPENBSD_3_3_BASE
# 1.9 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_2_6_BASE OPENBSD_2_7_BASE OPENBSD_2_8_BASE OPENBSD_2_9_BASE OPENBSD_3_0_BASE
# 1.8 03-Aug-1999 mickey

use particular mapping type instead of bogus zero.
-Wall overall happiness; millert@ ok


Revision tags: OPENBSD_2_3_BASE OPENBSD_2_4_BASE OPENBSD_2_5_BASE
# 1.7 21-Jan-1998 deraadt

error


Revision tags: OPENBSD_2_2_BASE
# 1.6 12-Jun-1997 deraadt

allow hex/octal offsets; metcalf@snet.net


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

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


Revision tags: OPENBSD_2_0_BASE
# 1.4 01-Aug-1996 michaels

whoops, goofed on the last one, this should be correct.


# 1.3 01-Aug-1996 michaels

Modified cmp to, when given arg -s, really be silent. (reported by
marc@mit.edu, netbsd pr #2642.) Changed main() to use return()
rather than exit().

(just tried checking it in, but local cvs got killed while writting
log message)


# 1.2 26-Jun-1996 deraadt

rcsid


# 1.1 18-Oct-1995 deraadt

branches: 1.1.1;
Initial revision


Revision tags: OPENBSD_6_3_BASE
# 1.18 05-Mar-2018 cheloha

Stricter checking for skip1 and skip2.

As we do elsewhere in the tree, make sure we (a) got a number at all,
(b) that it doesn't have non-digits dangling off the end, (c) that it's
positive, and (d) that it didn't overflow.

ok tb@


# 1.17 05-Mar-2018 cheloha

Add fatal() and fatalx() and put them to use.

... but don't use them for pledge errors or usage errors.

They are convenience wrappers that check if sflag is set before
logging an error. They always exit with status 2.

We were not honoring sflag in special.c at all. Now we do.

ok tb@


Revision tags: OPENBSD_6_1_BASE OPENBSD_6_2_BASE
# 1.16 28-Oct-2016 schwarze

Delete some useless setlocale(3) calls in /usr/bin, no functional change.
Patches from Jan Stary <hans at stare dot cz>, tweaked by me and tb@.
While here, apply some simple style improvements:
Sort headers, static void __dead usage(), return from main(),
zap case '?', drop /* NOTREACHED */, drop break after usage(), ...
OK tb@ millert@


# 1.15 14-Aug-2016 guenther

Convert remaining calls to strtoq/strtouq in base with strtoll/strtoull.
Fix a type mismatch in ftp's "page" command and could make transfers restart
at the wrong position.

ok and a ull->ll tweak from natano@, ok tedu@


Revision tags: OPENBSD_5_9_BASE OPENBSD_6_0_BASE
# 1.14 29-Dec-2015 gsoares

fix exit status on pledge(2) failure.

OK tb@ jsg@


# 1.13 10-Oct-2015 doug

Add pledge support to cmp(1).

This is a simple case of using "stdio rpath" until all files are opened and
then dropping down to "stdio" since it includes "rw" on open fds.

ok deraadt@


Revision tags: OPENBSD_4_7_BASE OPENBSD_4_8_BASE OPENBSD_4_9_BASE OPENBSD_5_0_BASE OPENBSD_5_1_BASE OPENBSD_5_2_BASE OPENBSD_5_3_BASE OPENBSD_5_4_BASE OPENBSD_5_5_BASE OPENBSD_5_6_BASE OPENBSD_5_7_BASE OPENBSD_5_8_BASE
# 1.12 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_3_4_BASE OPENBSD_3_5_BASE OPENBSD_3_6_BASE OPENBSD_3_7_BASE OPENBSD_3_8_BASE OPENBSD_3_9_BASE OPENBSD_4_0_BASE OPENBSD_4_1_BASE OPENBSD_4_2_BASE OPENBSD_4_3_BASE OPENBSD_4_4_BASE OPENBSD_4_5_BASE OPENBSD_4_6_BASE
# 1.11 10-Jun-2003 deraadt

mostly ansi cleanup; pval ok


# 1.10 03-Jun-2003 millert

Remove the advertising clause in the UCB license which Berkeley
rescinded 22 July 1999. Proofed by myself and Theo.


Revision tags: OPENBSD_3_1_BASE OPENBSD_3_2_BASE OPENBSD_3_3_BASE
# 1.9 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_2_6_BASE OPENBSD_2_7_BASE OPENBSD_2_8_BASE OPENBSD_2_9_BASE OPENBSD_3_0_BASE
# 1.8 03-Aug-1999 mickey

use particular mapping type instead of bogus zero.
-Wall overall happiness; millert@ ok


Revision tags: OPENBSD_2_3_BASE OPENBSD_2_4_BASE OPENBSD_2_5_BASE
# 1.7 21-Jan-1998 deraadt

error


Revision tags: OPENBSD_2_2_BASE
# 1.6 12-Jun-1997 deraadt

allow hex/octal offsets; metcalf@snet.net


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

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


Revision tags: OPENBSD_2_0_BASE
# 1.4 01-Aug-1996 michaels

whoops, goofed on the last one, this should be correct.


# 1.3 01-Aug-1996 michaels

Modified cmp to, when given arg -s, really be silent. (reported by
marc@mit.edu, netbsd pr #2642.) Changed main() to use return()
rather than exit().

(just tried checking it in, but local cvs got killed while writting
log message)


# 1.2 26-Jun-1996 deraadt

rcsid


# 1.1 18-Oct-1995 deraadt

branches: 1.1.1;
Initial revision


Revision tags: OPENBSD_6_1_BASE OPENBSD_6_2_BASE
# 1.16 28-Oct-2016 schwarze

Delete some useless setlocale(3) calls in /usr/bin, no functional change.
Patches from Jan Stary <hans at stare dot cz>, tweaked by me and tb@.
While here, apply some simple style improvements:
Sort headers, static void __dead usage(), return from main(),
zap case '?', drop /* NOTREACHED */, drop break after usage(), ...
OK tb@ millert@


# 1.15 14-Aug-2016 guenther

Convert remaining calls to strtoq/strtouq in base with strtoll/strtoull.
Fix a type mismatch in ftp's "page" command and could make transfers restart
at the wrong position.

ok and a ull->ll tweak from natano@, ok tedu@


Revision tags: OPENBSD_5_9_BASE OPENBSD_6_0_BASE
# 1.14 29-Dec-2015 gsoares

fix exit status on pledge(2) failure.

OK tb@ jsg@


# 1.13 10-Oct-2015 doug

Add pledge support to cmp(1).

This is a simple case of using "stdio rpath" until all files are opened and
then dropping down to "stdio" since it includes "rw" on open fds.

ok deraadt@


Revision tags: OPENBSD_4_7_BASE OPENBSD_4_8_BASE OPENBSD_4_9_BASE OPENBSD_5_0_BASE OPENBSD_5_1_BASE OPENBSD_5_2_BASE OPENBSD_5_3_BASE OPENBSD_5_4_BASE OPENBSD_5_5_BASE OPENBSD_5_6_BASE OPENBSD_5_7_BASE OPENBSD_5_8_BASE
# 1.12 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_3_4_BASE OPENBSD_3_5_BASE OPENBSD_3_6_BASE OPENBSD_3_7_BASE OPENBSD_3_8_BASE OPENBSD_3_9_BASE OPENBSD_4_0_BASE OPENBSD_4_1_BASE OPENBSD_4_2_BASE OPENBSD_4_3_BASE OPENBSD_4_4_BASE OPENBSD_4_5_BASE OPENBSD_4_6_BASE
# 1.11 10-Jun-2003 deraadt

mostly ansi cleanup; pval ok


# 1.10 03-Jun-2003 millert

Remove the advertising clause in the UCB license which Berkeley
rescinded 22 July 1999. Proofed by myself and Theo.


Revision tags: OPENBSD_3_1_BASE OPENBSD_3_2_BASE OPENBSD_3_3_BASE
# 1.9 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_2_6_BASE OPENBSD_2_7_BASE OPENBSD_2_8_BASE OPENBSD_2_9_BASE OPENBSD_3_0_BASE
# 1.8 03-Aug-1999 mickey

use particular mapping type instead of bogus zero.
-Wall overall happiness; millert@ ok


Revision tags: OPENBSD_2_3_BASE OPENBSD_2_4_BASE OPENBSD_2_5_BASE
# 1.7 21-Jan-1998 deraadt

error


Revision tags: OPENBSD_2_2_BASE
# 1.6 12-Jun-1997 deraadt

allow hex/octal offsets; metcalf@snet.net


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

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


Revision tags: OPENBSD_2_0_BASE
# 1.4 01-Aug-1996 michaels

whoops, goofed on the last one, this should be correct.


# 1.3 01-Aug-1996 michaels

Modified cmp to, when given arg -s, really be silent. (reported by
marc@mit.edu, netbsd pr #2642.) Changed main() to use return()
rather than exit().

(just tried checking it in, but local cvs got killed while writting
log message)


# 1.2 26-Jun-1996 deraadt

rcsid


# 1.1 18-Oct-1995 deraadt

branches: 1.1.1;
Initial revision