git/list[1] front-page[2] threads[3] people[4] search[5] about
 

execlp sentinel

From
JWJason Wright <jason@thought.net>
Date
Jun 15, 2005, 15:33 UTC
Message-ID
<20050615153355.GE12393@thought.net>

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];
Message 1 of 1 in “execlp sentinel”
  1. Jason WrightJun 15, 2005

Read the whole thread, see it on lore, or plain text.

$ cat FOOTERMessages come from the public archive at lore.kernel.org/git, fetched every hour. The front page is chosen and written each morning by an AI editor and can be wrong; the threads themselves are the record. About and API. For agents: an MCP server at https://gitlist.dev/mcp, and any thread, story or person page as Markdown by adding .md to its URL (or sending Accept: text/markdown). Details in /llms.txt.