Skip site navigation (1)Skip section navigation (2)
Date:      Tue, 09 Apr 2002 17:08:47 -0400 (EDT)
From:      John Baldwin <jhb@FreeBSD.org>
To:        Warner Losh <imp@harmony.village.org>
Cc:        Alfred Perlstein <bright@mu.org>, kris@obsecurity.org, cvs-all@FreeBSD.org, cvs-committers@FreeBSD.org, "David O'Brien" <obrien@FreeBSD.org>
Subject:   Re: cvs commit: src/sys/sys ioccom.h
Message-ID:  <XFMail.20020409170847.jhb@FreeBSD.org>
In-Reply-To: <200204092056.g39KuCc31597@harmony.village.org>

next in thread | previous in thread | raw e-mail | index | archive | help

On 09-Apr-2002 Warner Losh wrote:
> In message <XFMail.20020409162720.jhb@FreeBSD.org> John Baldwin writes:
>: Warner did already.  The de- __P()'ing did because the regex they use to
>: find
>: function prototypes in the system headers didn't match the de- __P()'d
>: prototypes.  This was the same breakage that broke hylafax and vim according
>: to
>: Warner's earlier e-mail.
> 
> Actually, that's not entirely accurate.  The de-__P()ing caused a
> problem with programs that unwisely defined an ioctl macro before
> include sys/ioctl.h.  As a work around for that, I made the prototype
> int (ioctl)(etc);  rather than put the __P() back.  This caused an
> unwanted side effect of chaning the regular expression that prototypes
> from system headers matched slightly, which broke some programs
> automatic configuraiton mechanisms when they couldn't find them in the
> pre-processed output.  Since __P() resulted in something that did
> match the pre-processed output, it was the 'safest' of all the
> definitions in the face of non-conformant programs/proceedures in the
> world.
> 
> I now have a good "why" for David's change, and am happy with it if he
> wants to make it.  I would have never in a million years thought that
> there were so many programs using a 'broken' regular expression for
> thier autoconfiguration sequences.  Given that I've found at least 4
> variations on this theme, I feel like I'm holding back the tide by
> insisting on the int (ioctl) version.

Argh!  Ok.  I guess we should fix the misbehaving ports like X that try to
define a ioctl macro instead.

> Warner

-- 

John Baldwin <jhb@FreeBSD.org>  <><  http://www.FreeBSD.org/~jhb/
"Power Users Use the Power to Serve!"  -  http://www.FreeBSD.org/

To Unsubscribe: send mail to majordomo@FreeBSD.org
with "unsubscribe cvs-all" in the body of the message




Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?XFMail.20020409170847.jhb>