On Fri, Feb 08, 2019 at 02:23:01PM +0100, Jilles Tjoelker wrote:
> On Fri, Feb 08, 2019 at 07:36:08AM +0000, Konstantin Belousov wrote:
> > Author: kib
> > Date: Fri Feb  8 07:36:08 2019
> > New Revision: 343896
> > URL: https://svnweb.freebsd.org/changeset/base/343896
> 
> > Log:
> >   Correctly return exit status from the exited process.
> 
> >   This is also OpenBSD rev. 1.117, as pointed out by
> >   Ryan Moeller <r...@ixsystems.com>.
> 
> >   Submitted by:     Nash Kaminski <nashkamin...@gmail.com>
> >   MFC after:        1 week
> 
> > Modified:
> >   head/sbin/dhclient/dhclient.c
> 
> > Modified: head/sbin/dhclient/dhclient.c
> > ==============================================================================
> > --- head/sbin/dhclient/dhclient.c   Fri Feb  8 06:19:28 2019        
> > (r343895)
> > +++ head/sbin/dhclient/dhclient.c   Fri Feb  8 07:36:08 2019        
> > (r343896)
> > @@ -2348,7 +2348,7 @@ priv_script_go(void)
> >     if (ip)
> >             script_flush_env(ip->client);
> >  
> > -   return (wstatus & 0xff);
> > +   return WEXITSTATUS(wstatus);
> >  }
> >  
> >  void
> 
> This is probably a big improvement in practice, but it is still wrong if
> the script exits on a signal. POSIX does not say what the WEXITSTATUS
> macro returns in this case and in practice 0 is a common value. Perhaps
> you want
> 
> return WIFEXITED(wstatus) ? WEXITSTATUS(wstatus) : 128 + WTERMSIG(wstatus);
> 
> imitating what the shell does to translate a wait status into 8 bits?

Please commit your update.
_______________________________________________
svn-src-head@freebsd.org mailing list
https://lists.freebsd.org/mailman/listinfo/svn-src-head
To unsubscribe, send any mail to "svn-src-head-unsubscr...@freebsd.org"

Reply via email to