From a70617001b96579340f5f48e4c48069cc5aecd59 Mon Sep 17 00:00:00 2001 From: "C. McEnroe" Date: Sun, 26 Sep 2021 12:00:20 -0400 Subject: OpenBSD: pledge(2) and unveil(2) --- play.c | 15 ++++++++++++++- 1 file changed, 14 insertions(+), 1 deletion(-) (limited to 'play.c') diff --git a/play.c b/play.c index 0400b85..37e1445 100644 --- a/play.c +++ b/play.c @@ -295,10 +295,18 @@ int main(int argc, char *argv[]) { curse(); atexit(info); +#ifdef __OpenBSD__ + int error = unveil(".", "rwc"); + if (error) err(EX_OSERR, "unveil"); + + error = pledge("stdio tty rpath wpath cpath flock", NULL); + if (error) err(EX_OSERR, "pledge"); +#endif + const struct Game *game = menu(); if (!game) return 0; erase(); -#ifdef __FreeBSD__ +#if defined(__FreeBSD__) || defined(__OpenBSD__) setproctitle("%s", game->name); #endif @@ -308,6 +316,11 @@ int main(int argc, char *argv[]) { snprintf(buf, sizeof(buf), "%s.weekly", game->name); FILE *weekly = scoresOpen(buf); +#ifdef __OpenBSD__ + error = pledge("stdio tty flock", NULL); + if (error) err(EX_OSERR, "pledge"); +#endif + #ifdef __FreeBSD__ int error = cap_enter(); if (error) err(EX_OSERR, "cap_enter"); -- cgit 1.4.1 20ad31ed74a2a3221d14b7472703296a921'>refs log tree commit diff
path: root/LICENSE (unfollow)
Commit message (Collapse)Author
2018-03-05Pack message type enumsJune McEnroe
2018-03-05Undef COLOR_ constants in torus.hJune McEnroe
2018-03-05Generate tagsJune McEnroe
2017-10-03Simplify Makefile with pattern ruleJune McEnroe
Insert rant about how GNU make handles the .c rule with extra dependencies. Also I don't care that everything links curses now.
2017-09-27Remove leading blank linesJune McEnroe
2017-09-27Add merge.c to READMEJune McEnroe
2017-09-03Assert client coords are valid after movementJune McEnroe
2017-09-03Relicense AGPLJune McEnroe
I know it's already published under a permissive license in what is probably its final form, but I want to license it AGPL anyway on principle following some conversations I had about open source, corporations and copyleft.
2017-09-01Revert "Add client readOnly mode"June McEnroe
This reverts commit 9a6c9c91c8092603b914cc0b3085d059e162ca29.
2017-09-01Remove clientRemove call from clientCastJune McEnroe
If an error occurs on a client socket during a broadcast, that client will show up in the kqueue loop with EV_EOF and get removed that way. Tested by sending SIGKILL to a client and watching its cursor disappear.
2017-09-01Add client readOnly modeJune McEnroe
2017-08-31Clean up merge toolJune McEnroe
Choose the version with the most recent access if the modify times are the same.
2017-08-31Choose B for tiles with equal modify timesJune McEnroe
This way newer access counts and times will be preserved.
2017-08-31Add quick data file merge toolJune McEnroe
Hopefully I won't have to use it ever again.
2017-08-30Use only foreground color for selecting spawnJune McEnroe
2017-08-29Add four additional spawnsJune McEnroe
2017-08-28Add respawningJune McEnroe
2017-08-26Move license above includesJune McEnroe
Why was it down there?
2017-08-26Snapshot metadataJune McEnroe
2017-08-26Add meta.c to READMEJune McEnroe
2017-08-26Use MakefileJune McEnroe