execlp sentinel
From: Jason Wright <hidden>
Date: 2016-06-15 22:42:00
Another thing I ran into when porting cogito-0.11.3 to OpenBSD... the NULL last argument to execlp() must be cast to a pointer type (NULL is an integer type on OpenBSD) in order for it to match as being a proper sentinel value. --Jason L. Wright
--- diff.c.orig Thu Jun 9 05:15:09 2005
+++ diff.c Wed Jun 15 11:20:08 2005@@ -157,7 +157,7 @@ static void builtin_diff(const char *nam exit(0); } fflush(NULL); - execlp("/bin/sh","sh", "-c", cmd, NULL); + execlp("/bin/sh","sh", "-c", cmd, (void *)NULL); } struct diff_filespec *alloc_filespec(const char *path)
@@ -518,7 +518,7 @@ static void run_external_diff(const char execvp(pgm, (char *const*) exec_arg); } else - execlp(pgm, pgm, name, NULL); + execlp(pgm, pgm, name, (void *)NULL); } /* * otherwise we use the built-in one. --- merge-cache.c.orig Tue Jun 14 17:07:44 2005 +++ merge-cache.c Tue Jun 14 17:07:50 2005
@@ -23,7 +23,7 @@ static void run_program(void) arguments[5], arguments[6], arguments[7], - NULL); + (void *)NULL); die("unable to execute '%s'", pgm); } if (waitpid(pid, &status, 0) < 0 || !WIFEXITED(status) || WEXITSTATUS(status)) { --- rsh.c.orig Wed Jun 15 11:21:57 2005 +++ rsh.c Wed Jun 15 11:22:08 2005
@@ -57,7 +57,7 @@ int setup_connection(int *fd_in, int *fd close(sv[1]); dup2(sv[0], 0); dup2(sv[0], 1); - execlp("ssh", "ssh", host, command, NULL); + execlp("ssh", "ssh", host, command, (void *)NULL); } close(sv[0]); *fd_in = sv[1];