On Sat, 6 Jan 2001 [EMAIL PROTECTED] wrote: > > > > We don't actually use os_cork or os_uncork on FreeBSD, so we shouldn't > > > define them. This removes some warnings. > > >... > > > --- sendrecv.c 2001/01/04 22:02:34 1.55 > > > +++ sendrecv.c 2001/01/07 00:00:07 1.56 > > > @@ -198,7 +198,7 @@ > > > * need to move these to the top... > > > */ > > > > > > -#if APR_HAVE_CORKABLE_TCP > > > +#if APR_HAVE_CORKABLE_TCP && !defined(__FreeBSD__) > > > > > > /* TCP_CORK & TCP_NOPUSH keep us from sending partial frames when we > > > * shouldn't. They are however, mutually exclusive with TCP_NODELAY > > > > I don't understand this. Why don't we just /not/ define > > APR_HAVE_CORKABLE_TCP on the FreeBSD boxes? (in the ./configure script) That > > seems more appropriate than adding platform-specific checks into the code. > > Both methods do the same thing. I decided to put the checks in the code, > because I am assuming that at some point we will actually add support for > os_cork and os_uncork to the code.
If they do the same thing, would it not be better to put the check for __FreeBSD__ in the autoconf macro that sets APR_HAVE_CORKABLE_TCP? The whole point of using #ifdef HAVE_XXX style macros is to avoid checks exactly like defined(__FreeBSD__). You want feature tests in your code, not OS tests. Mo DeJong Red Hat Inc
