#
1.19 |
|
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_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.18 |
|
17-Jun-2019 |
guenther |
Add -c option for passing LOG_CONS to syslog(3). (Option choice matches NetBSD)
ok deraadt@ jmc@ benno@ kn@
|
Revision tags: OPENBSD_6_0_BASE OPENBSD_6_1_BASE OPENBSD_6_2_BASE OPENBSD_6_3_BASE OPENBSD_6_4_BASE OPENBSD_6_5_BASE
|
#
1.17 |
|
28-Mar-2016 |
chl |
remove unused variable
ok millert@
|
Revision tags: OPENBSD_5_9_BASE
|
#
1.16 |
|
09-Oct-2015 |
deraadt |
Change all tame callers to namechange to pledge(2).
|
#
1.15 |
|
05-Oct-2015 |
deraadt |
During getopt(), an optional file may be opened. After that, tame "stdio" works.
Time for some commentary! tame became possible because syslog(3) in openbsd uses a system call -- sendsyslog(2) -- which does not require an elaborate dance opening an AF_UNIX socket and using connect() or send() to deliver to a "/dev/log" unix socket in the filesystem. sendsyslog(2) was invented to ensure the stack-protector's __stack_smash_handler() can gaurantee delivery of failure messages to syslogd(8) in harsh conditions -- such as file descriptor exhaustion or inside chroot(2). Now it also works in tame(2)'d proceses, since sendsyslog(2) is always allowed. Our syslog(3) needs no elaborate socket code, therefore piles of software does not have an inate need for socket(2), connect(2), send(2), nor access to the filesystem. syslog(3) remains fully compatible otherwise.
How does the stack protector report an error in fully capsicum'd program? Or in some other Linux protection mechanism, if someone protectes a program too far and takes sockets away, how do they see the stack protector working?
You can have nice things when the underlying rules change.
|
Revision tags: OPENBSD_5_8_BASE
|
#
1.14 |
|
18-Apr-2015 |
deraadt |
Convert many atoi() calls to strtonum(), adding range checks and failure handling along the way. Reviews by Brendan MacDonell, Jeremy Devenport, florian, doug, millert
|
Revision tags: OPENBSD_5_5_BASE OPENBSD_5_6_BASE OPENBSD_5_7_BASE
|
#
1.13 |
|
27-Nov-2013 |
okan |
remove erroneous char cast to switch expression processing getopt(3); not used in any cases.
ok deraadt@, guenther@, millert@
|
#
1.12 |
|
26-Nov-2013 |
deraadt |
unsigned char casts for ctype ok krw
|
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
|
#
1.11 |
|
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_2_BASE OPENBSD_4_3_BASE OPENBSD_4_4_BASE OPENBSD_4_5_BASE OPENBSD_4_6_BASE
|
#
1.10 |
|
09-Apr-2007 |
jmc |
spacing tweak in usage(); from Igor Sobrado
|
#
1.9 |
|
15-Mar-2007 |
jmc |
simplify synopsis/usage() and sort options; from Igor Sobrado
|
Revision tags: OPENBSD_4_0_BASE OPENBSD_4_1_BASE
|
#
1.8 |
|
15-Mar-2006 |
dhill |
Both strlen and sizeof return a size_t. This also fixes a signed/unsigned comparison.
ok ray@ moritz@
|
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
|
#
1.7 |
|
10-Jun-2003 |
deraadt |
mostly ansi cleanup; pval ok
|
#
1.6 |
|
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.5 |
|
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.
|
#
1.4 |
|
19-Nov-2001 |
mpech |
kill more registers
millert@ ok
|
Revision tags: OPENBSD_2_1_BASE 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 OPENBSD_3_0_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 |
|
26-Jun-1996 |
deraadt |
rcsid
|
#
1.1 |
|
18-Oct-1995 |
deraadt |
branches: 1.1.1; Initial revision
|
#
1.18 |
|
17-Jun-2019 |
guenther |
Add -c option for passing LOG_CONS to syslog(3). (Option choice matches NetBSD)
ok deraadt@ jmc@ benno@ kn@
|
Revision tags: OPENBSD_6_0_BASE OPENBSD_6_1_BASE OPENBSD_6_2_BASE OPENBSD_6_3_BASE OPENBSD_6_4_BASE OPENBSD_6_5_BASE
|
#
1.17 |
|
28-Mar-2016 |
chl |
remove unused variable
ok millert@
|
Revision tags: OPENBSD_5_9_BASE
|
#
1.16 |
|
09-Oct-2015 |
deraadt |
Change all tame callers to namechange to pledge(2).
|
#
1.15 |
|
05-Oct-2015 |
deraadt |
During getopt(), an optional file may be opened. After that, tame "stdio" works.
Time for some commentary! tame became possible because syslog(3) in openbsd uses a system call -- sendsyslog(2) -- which does not require an elaborate dance opening an AF_UNIX socket and using connect() or send() to deliver to a "/dev/log" unix socket in the filesystem. sendsyslog(2) was invented to ensure the stack-protector's __stack_smash_handler() can gaurantee delivery of failure messages to syslogd(8) in harsh conditions -- such as file descriptor exhaustion or inside chroot(2). Now it also works in tame(2)'d proceses, since sendsyslog(2) is always allowed. Our syslog(3) needs no elaborate socket code, therefore piles of software does not have an inate need for socket(2), connect(2), send(2), nor access to the filesystem. syslog(3) remains fully compatible otherwise.
How does the stack protector report an error in fully capsicum'd program? Or in some other Linux protection mechanism, if someone protectes a program too far and takes sockets away, how do they see the stack protector working?
You can have nice things when the underlying rules change.
|
Revision tags: OPENBSD_5_8_BASE
|
#
1.14 |
|
18-Apr-2015 |
deraadt |
Convert many atoi() calls to strtonum(), adding range checks and failure handling along the way. Reviews by Brendan MacDonell, Jeremy Devenport, florian, doug, millert
|
Revision tags: OPENBSD_5_5_BASE OPENBSD_5_6_BASE OPENBSD_5_7_BASE
|
#
1.13 |
|
27-Nov-2013 |
okan |
remove erroneous char cast to switch expression processing getopt(3); not used in any cases.
ok deraadt@, guenther@, millert@
|
#
1.12 |
|
26-Nov-2013 |
deraadt |
unsigned char casts for ctype ok krw
|
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
|
#
1.11 |
|
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_2_BASE OPENBSD_4_3_BASE OPENBSD_4_4_BASE OPENBSD_4_5_BASE OPENBSD_4_6_BASE
|
#
1.10 |
|
09-Apr-2007 |
jmc |
spacing tweak in usage(); from Igor Sobrado
|
#
1.9 |
|
15-Mar-2007 |
jmc |
simplify synopsis/usage() and sort options; from Igor Sobrado
|
Revision tags: OPENBSD_4_0_BASE OPENBSD_4_1_BASE
|
#
1.8 |
|
15-Mar-2006 |
dhill |
Both strlen and sizeof return a size_t. This also fixes a signed/unsigned comparison.
ok ray@ moritz@
|
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
|
#
1.7 |
|
10-Jun-2003 |
deraadt |
mostly ansi cleanup; pval ok
|
#
1.6 |
|
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.5 |
|
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.
|
#
1.4 |
|
19-Nov-2001 |
mpech |
kill more registers
millert@ ok
|
Revision tags: OPENBSD_2_1_BASE 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 OPENBSD_3_0_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 |
|
26-Jun-1996 |
deraadt |
rcsid
|
#
1.1 |
|
18-Oct-1995 |
deraadt |
branches: 1.1.1; Initial revision
|
Revision tags: OPENBSD_6_0_BASE OPENBSD_6_1_BASE OPENBSD_6_2_BASE
|
#
1.17 |
|
28-Mar-2016 |
chl |
remove unused variable
ok millert@
|
Revision tags: OPENBSD_5_9_BASE
|
#
1.16 |
|
09-Oct-2015 |
deraadt |
Change all tame callers to namechange to pledge(2).
|
#
1.15 |
|
05-Oct-2015 |
deraadt |
During getopt(), an optional file may be opened. After that, tame "stdio" works.
Time for some commentary! tame became possible because syslog(3) in openbsd uses a system call -- sendsyslog(2) -- which does not require an elaborate dance opening an AF_UNIX socket and using connect() or send() to deliver to a "/dev/log" unix socket in the filesystem. sendsyslog(2) was invented to ensure the stack-protector's __stack_smash_handler() can gaurantee delivery of failure messages to syslogd(8) in harsh conditions -- such as file descriptor exhaustion or inside chroot(2). Now it also works in tame(2)'d proceses, since sendsyslog(2) is always allowed. Our syslog(3) needs no elaborate socket code, therefore piles of software does not have an inate need for socket(2), connect(2), send(2), nor access to the filesystem. syslog(3) remains fully compatible otherwise.
How does the stack protector report an error in fully capsicum'd program? Or in some other Linux protection mechanism, if someone protectes a program too far and takes sockets away, how do they see the stack protector working?
You can have nice things when the underlying rules change.
|
Revision tags: OPENBSD_5_8_BASE
|
#
1.14 |
|
18-Apr-2015 |
deraadt |
Convert many atoi() calls to strtonum(), adding range checks and failure handling along the way. Reviews by Brendan MacDonell, Jeremy Devenport, florian, doug, millert
|
Revision tags: OPENBSD_5_5_BASE OPENBSD_5_6_BASE OPENBSD_5_7_BASE
|
#
1.13 |
|
27-Nov-2013 |
okan |
remove erroneous char cast to switch expression processing getopt(3); not used in any cases.
ok deraadt@, guenther@, millert@
|
#
1.12 |
|
26-Nov-2013 |
deraadt |
unsigned char casts for ctype ok krw
|
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
|
#
1.11 |
|
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_2_BASE OPENBSD_4_3_BASE OPENBSD_4_4_BASE OPENBSD_4_5_BASE OPENBSD_4_6_BASE
|
#
1.10 |
|
09-Apr-2007 |
jmc |
spacing tweak in usage(); from Igor Sobrado
|
#
1.9 |
|
15-Mar-2007 |
jmc |
simplify synopsis/usage() and sort options; from Igor Sobrado
|
Revision tags: OPENBSD_4_0_BASE OPENBSD_4_1_BASE
|
#
1.8 |
|
15-Mar-2006 |
dhill |
Both strlen and sizeof return a size_t. This also fixes a signed/unsigned comparison.
ok ray@ moritz@
|
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
|
#
1.7 |
|
10-Jun-2003 |
deraadt |
mostly ansi cleanup; pval ok
|
#
1.6 |
|
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.5 |
|
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.
|
#
1.4 |
|
19-Nov-2001 |
mpech |
kill more registers
millert@ ok
|
Revision tags: OPENBSD_2_1_BASE 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 OPENBSD_3_0_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 |
|
26-Jun-1996 |
deraadt |
rcsid
|
#
1.1 |
|
18-Oct-1995 |
deraadt |
branches: 1.1.1; Initial revision
|