]> granicus.if.org Git - sudo/commitdiff
Silence warning in digest_matches() on systems with no fexecve(2).
authorTodd C. Miller <Todd.Miller@courtesan.com>
Mon, 11 Jan 2016 23:55:52 +0000 (16:55 -0700)
committerTodd C. Miller <Todd.Miller@courtesan.com>
Mon, 11 Jan 2016 23:55:52 +0000 (16:55 -0700)
plugins/sudoers/match.c

index 460ac2d80139d28e0ce9a0e7e6a2dc8a917d26b0..fcd24df9b384dc5ff8d9614300becdd3ffa55b1c 100644 (file)
@@ -590,8 +590,10 @@ digest_matches(const char *file, const struct sudo_digest *sd, int *fd)
     unsigned char sudoers_digest[SHA512_DIGEST_LENGTH];
     unsigned char buf[32 * 1024];
     struct digest_function *func = NULL;
+#ifdef HAVE_FEXECVE
     bool first = true;
     bool is_script = false;
+#endif /* HAVE_FEXECVE */
     size_t nread;
     SHA2_CTX ctx;
     FILE *fp;
@@ -635,12 +637,14 @@ digest_matches(const char *file, const struct sudo_digest *sd, int *fd)
 
     func->init(&ctx);
     while ((nread = fread(buf, 1, sizeof(buf), fp)) != 0) {
+#ifdef HAVE_FEXECVE
        /* Check for #! cookie and set is_script. */
        if (first) {
            first = false;
            if (nread >= 2 && buf[0] == '#' && buf[1] == '!')
                is_script = true;
        }
+#endif /* HAVE_FEXECVE */
        func->update(&ctx, buf, nread);
     }
     if (ferror(fp)) {