tadd unveil(2) and fix error status if polls/ cannot be created - vote - simple cgi voting system for web and gopher
 (HTM) git clone git://src.adamsgaard.dk/vote
 (DIR) Log
 (DIR) Files
 (DIR) Refs
 (DIR) README
 (DIR) LICENSE
       ---
 (DIR) commit 22acb208bf624709b5693518ec831f9bbc2c8319
 (DIR) parent 74b58729c204508d0e3fbe2162a3325d2f3d5aeb
 (HTM) Author: Anders Damsgaard <anders@adamsgaard.dk>
       Date:   Sun, 27 Sep 2020 01:55:10 +0200
       
       add unveil(2) and fix error status if polls/ cannot be created
       
       Diffstat:
         M vote.c                              |       8 +++++++-
       
       1 file changed, 7 insertions(+), 1 deletion(-)
       ---
 (DIR) diff --git a/vote.c b/vote.c
       t@@ -58,6 +58,12 @@ int
        main() {
                struct stat sb;
        
       +        if (unveil(getenv("PWD"), NULL) == -1 && unveil(NULL, NULL) == -1) {
       +                fprintf(stderr, "unveil: %s\n", strerror(errno));
       +                OUT("Status: 500 Internal Server Error\r\n\r\n");
       +                exit(1);
       +        }
       +
                if (pledge("stdio cpath rpath", NULL) == -1) {
                        fprintf(stderr, "pledge: %s\n", strerror(errno));
                        OUT("Status: 500 Internal Server Error\r\n\r\n");
       t@@ -68,7 +74,7 @@ main() {
                        if (mkdir(POLLS_DIR, 0755) == -1) {
                                fprintf(stderr, "mkdir polls/ failed: %s\n", strerror(errno));
                                OUT("Status: 500 Internal Server Error\r\n\r\n");
       -                        exit(0);
       +                        exit(1);
                        }
                }