different behaviour on fbsd and linux

M. Warner Losh imp at bsdimp.com
Sat Feb 18 13:14:02 PST 2006


In message: <20060218174216.GC578 at wombat.fafoe.narf.at>
            Stefan Farfeleder <stefan at fafoe.narf.at> writes:
: On Sat, Feb 18, 2006 at 06:21:52PM +0100, joerg at britannica.bec.de wrote:
: > On Sat, Feb 18, 2006 at 06:17:18PM +0100, Divacky Roman wrote:
: > >       execl("/bin/ls", NULL);
: > 
: > This is wrong. You must specify arg0 != NULL (POSIX says so) and you
: > must NULL-terminate the *following* list.
: > 
: > E.g.:
: > 	execl("/bin/ls", "/bin/ls", NULL);
: > is what you want to do.
: 
: execl("/bin/ls", "/bin/ls", (char *)NULL); as NULL might expand to an
: integer 0.

This is one of the times that the difference is important, since
this function is a varadic one, and you must always cast when passing
through varadic args.

Warner


More information about the freebsd-hackers mailing list