Compare commits
4 Commits
b1a4a1a2b9
...
4c81516742
Author | SHA1 | Date | |
---|---|---|---|
4c81516742 | |||
98c4d94f6d | |||
da190f713c | |||
10b7f7706b |
21
src/dj.c
21
src/dj.c
@ -170,12 +170,6 @@ usage(char *argv0) {
|
|||||||
}
|
}
|
||||||
|
|
||||||
int main(int argc, char *argv[]) {
|
int main(int argc, char *argv[]) {
|
||||||
#ifdef __OpenBSD__
|
|
||||||
if (pledge("cpath rpath stdio unveil wpath", NULL) == -1) {
|
|
||||||
return oserr(NULL", errno);
|
|
||||||
}
|
|
||||||
#endif
|
|
||||||
|
|
||||||
int align; /* low 8b used, negative if no alignment is being done */
|
int align; /* low 8b used, negative if no alignment is being done */
|
||||||
int count; /* -1 if dj(1) runs until no more reads are possible */
|
int count; /* -1 if dj(1) runs until no more reads are possible */
|
||||||
char *fmt; /* set to fmt_asv (default) or fmt_human (-H) */
|
char *fmt; /* set to fmt_asv (default) or fmt_human (-H) */
|
||||||
@ -183,6 +177,12 @@ int main(int argc, char *argv[]) {
|
|||||||
bool retry; /* false if exits on partial reads or writes */
|
bool retry; /* false if exits on partial reads or writes */
|
||||||
struct Io io[2 /* { in, out } */];
|
struct Io io[2 /* { in, out } */];
|
||||||
|
|
||||||
|
#ifdef __OpenBSD__
|
||||||
|
if (pledge("cpath rpath stdio unveil wpath", NULL) == -1) {
|
||||||
|
return oserr(NULL, errno);
|
||||||
|
}
|
||||||
|
#endif
|
||||||
|
|
||||||
/* Set defaults. */
|
/* Set defaults. */
|
||||||
align = -1;
|
align = -1;
|
||||||
count = -1;
|
count = -1;
|
||||||
@ -217,13 +217,9 @@ int main(int argc, char *argv[]) {
|
|||||||
break;
|
break;
|
||||||
} else {
|
} else {
|
||||||
int fd;
|
int fd;
|
||||||
|
|
||||||
#ifdef __OpenBSD__
|
#ifdef __OpenBSD__
|
||||||
char *perms = "wc";
|
if (unveil(optarg, i == 0 ? "r" : "wc") == -1) {
|
||||||
|
|
||||||
/* modify perms in-place to read-only */
|
|
||||||
if (i == 0) { perms = "r"; }
|
|
||||||
|
|
||||||
if (unveil(optarg, perms) == -1) {
|
|
||||||
return oserr(NULL, errno);
|
return oserr(NULL, errno);
|
||||||
}
|
}
|
||||||
#endif
|
#endif
|
||||||
@ -267,6 +263,7 @@ int main(int argc, char *argv[]) {
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
#ifdef __OpenBSD__
|
#ifdef __OpenBSD__
|
||||||
if (unveil(NULL, NULL) == -1) { return oserr(NULL, errno); }
|
if (unveil(NULL, NULL) == -1) { return oserr(NULL, errno); }
|
||||||
#endif
|
#endif
|
||||||
|
20
src/npc.c
20
src/npc.c
@ -39,22 +39,20 @@ usage(char *argv0) {
|
|||||||
}
|
}
|
||||||
|
|
||||||
int main(int argc, char *argv[]) {
|
int main(int argc, char *argv[]) {
|
||||||
#ifdef __OpenBSD__
|
|
||||||
program_name = argv[0] == NULL ? program_name : argv[0];
|
|
||||||
|
|
||||||
if (pledge("stdio", NULL) == -1) {
|
|
||||||
perror(program_name);
|
|
||||||
return EX_OSERR;
|
|
||||||
}
|
|
||||||
#endif
|
|
||||||
int c;
|
int c;
|
||||||
char showend = 0; /* print a dollar sign before each newline */
|
char showend = 0; /* print a dollar sign before each newline */
|
||||||
char showtab = 0; /* prints tab characters in caret notation */
|
char showtab = 0; /* prints tab characters in caret notation */
|
||||||
|
|
||||||
if (argc > 0) {
|
#ifdef __OpenBSD__
|
||||||
#ifndef __OpenBSD__
|
if (pledge("stdio", NULL) == -1) {
|
||||||
program_name = argv[0];
|
perror(argv[0] == NULL ? program_name : argv[0]);
|
||||||
|
return EX_OSERR;
|
||||||
|
}
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
|
if (argc > 0) {
|
||||||
|
program_name = argv[0];
|
||||||
|
|
||||||
while ((c = getopt(argc, argv, "et")) != -1) {
|
while ((c = getopt(argc, argv, "et")) != -1) {
|
||||||
switch (c){
|
switch (c){
|
||||||
case 'e': showend = 1; break;
|
case 'e': showend = 1; break;
|
||||||
|
@ -17,6 +17,7 @@
|
|||||||
* along with this program. If not, see https://www.gnu.org/licenses/.
|
* along with this program. If not, see https://www.gnu.org/licenses/.
|
||||||
*/
|
*/
|
||||||
|
|
||||||
|
#include <assert.h> /* assert(3) */
|
||||||
#include <stdio.h> /* fprintf(3), stderr, NULL */
|
#include <stdio.h> /* fprintf(3), stderr, NULL */
|
||||||
#include <stdlib.h> /* EXIT_FAILURE, EXIT_SUCCESS */
|
#include <stdlib.h> /* EXIT_FAILURE, EXIT_SUCCESS */
|
||||||
#include <string.h> /* memset(3), strchr(3) */
|
#include <string.h> /* memset(3), strchr(3) */
|
||||||
@ -29,6 +30,7 @@
|
|||||||
|
|
||||||
char *program_name = "scrut";
|
char *program_name = "scrut";
|
||||||
#define OPTS "bcdefgkprsuwxLS"
|
#define OPTS "bcdefgkprsuwxLS"
|
||||||
|
/* this is an array so main:sel's size can be known at compile time */
|
||||||
static char opts[] = OPTS;
|
static char opts[] = OPTS;
|
||||||
|
|
||||||
static int
|
static int
|
||||||
@ -58,7 +60,10 @@ int main(int argc, char *argv[]) {
|
|||||||
memset(sel, '\0', sizeof sel);
|
memset(sel, '\0', sizeof sel);
|
||||||
for (int c; (c = getopt(argc, argv, opts)) != -1;) {
|
for (int c; (c = getopt(argc, argv, opts)) != -1;) {
|
||||||
if ((p = strchr(opts, c)) == NULL) { return usage(argv[0]); }
|
if ((p = strchr(opts, c)) == NULL) { return usage(argv[0]); }
|
||||||
else { sel[p - opts] = c; }
|
else {
|
||||||
|
assert(p - opts < sizeof sel / sizeof *sel); /* bounds check */
|
||||||
|
sel[p - opts] = c;
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
/* straighten out selections; permute out nulls */
|
/* straighten out selections; permute out nulls */
|
||||||
@ -73,7 +78,7 @@ int main(int argc, char *argv[]) {
|
|||||||
|
|
||||||
if (optind == argc) { return usage(argv[0]); }
|
if (optind == argc) { return usage(argv[0]); }
|
||||||
|
|
||||||
for (argv += optind ; *argv != NULL; ++argv) {
|
for (argv += optind ; *argv != NULL; argv = &argv[1]) {
|
||||||
struct stat buf;
|
struct stat buf;
|
||||||
|
|
||||||
#ifdef __OpenBSD__
|
#ifdef __OpenBSD__
|
||||||
|
12
src/strcmp.c
12
src/strcmp.c
@ -26,18 +26,22 @@
|
|||||||
char *program_name = "strcmp";
|
char *program_name = "strcmp";
|
||||||
|
|
||||||
int main(int argc, char *argv[]) {
|
int main(int argc, char *argv[]) {
|
||||||
program_name = argv[0] == NULL ? program_name : argv[0];
|
unsigned int i;
|
||||||
int i;
|
|
||||||
|
|
||||||
#ifdef __OpenBSD__
|
#ifdef __OpenBSD__
|
||||||
if (pledge("stdio", NULL) == -1) {
|
if (pledge("stdio", NULL) == -1) {
|
||||||
perror(program_name);
|
perror(argv[0] == NULL ? program_name : argv[0]);
|
||||||
|
|
||||||
return EX_OSERR;
|
return EX_OSERR;
|
||||||
}
|
}
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
if (argc < 3) {
|
if (argc < 3) {
|
||||||
(void)fprintf(stderr, "Usage: %s string string...\n", program_name);
|
(void)fprintf(
|
||||||
|
stderr,
|
||||||
|
"Usage: %s string string...\n",
|
||||||
|
argv[0] == NULL ? program_name : argv[0]
|
||||||
|
);
|
||||||
|
|
||||||
return EX_USAGE;
|
return EX_USAGE;
|
||||||
}
|
}
|
||||||
|
Loading…
Reference in New Issue
Block a user