apr-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From Jeff Trawick <traw...@gmail.com>
Subject Re: svn commit: r1561041 - in /apr/apr/branches/1.5.x: ./ include/apr_errno.h
Date Tue, 15 Apr 2014 14:43:57 GMT
On Fri, Jan 24, 2014 at 3:22 PM, Jim Jagielski <jim@jagunet.com> wrote:

> I could just check that APR_EOPNOTSUPP is defined ;)
>
> In any case, yeah, I know... but not implemented isn't the
> same as not supported, and so I'm not sure the best thing
> to do here. So comments/suggestions are welcomed :)
>
> On Jan 24, 2014, at 3:12 PM, Jeff Trawick <trawick@gmail.com> wrote:
>
> > On Fri, Jan 24, 2014 at 10:46 AM, <jim@apache.org> wrote:
> > Author: jim
> > Date: Fri Jan 24 15:46:47 2014
> > New Revision: 1561041
> >
> > URL: http://svn.apache.org/r1561041
> > Log:
> > Merge r1561040 from trunk:
> >
> > Using UDS, we sometime try ops not supported on UDS. Make this
> > a known (and therfore handable) issue
> >
> > Reviewed/backported by: jim
> >
> > Modified:
> >     apr/apr/branches/1.5.x/   (props changed)
> >     apr/apr/branches/1.5.x/include/apr_errno.h
> >
> > Propchange: apr/apr/branches/1.5.x/
> >
> ------------------------------------------------------------------------------
> >   Merged /apr/apr/trunk:r1561040
> >
> > Modified: apr/apr/branches/1.5.x/include/apr_errno.h
> > URL:
> http://svn.apache.org/viewvc/apr/apr/branches/1.5.x/include/apr_errno.h?rev=1561041&r1=1561040&r2=1561041&view=diff
> >
> ==============================================================================
> > --- apr/apr/branches/1.5.x/include/apr_errno.h (original)
> > +++ apr/apr/branches/1.5.x/include/apr_errno.h Fri Jan 24 15:46:47 2014
> > @@ -833,6 +833,13 @@ APR_DECLARE(char *) apr_strerror(apr_sta
> >  #define APR_EAFNOSUPPORT  (APR_OS_START_CANONERR + 27)
> >  #endif
> >
> > +/** @see APR_STATUS_IS_EOPNOTSUPP */
> > +#ifdef EOPNOTSUPP
> > +#define APR_EOPNOTSUPP EOPNOTSUPP
> > +#else
> > +#define APR_EOPNOTSUPP    (APR_OS_START_CANONERR + 28)
> > +#endif
> >
> > Doesn't this new API break APR versioning rules?  An app shouldn't have
> to check for a specific patch level (as in your httpd change).
> >
> > Aside from versioning, should APR reuse existing rc APR_ENOTIMPL when it
> sees EOPNOTSUPP and/or APR_STATUS_IS_ENOTIMPL() checks for EOPNOTSUPP?
> >
> > Nothing seems quite right...
>

IMO this has to wait for apr 1.6.x.  The compelling use case for this is
AF_UNIX sockets, which apr 1.5.x doesn't advertise support for anyway, and
we're not fixing a hole in the advertised API for which this is the only
reasonable fix (i.e., no compelling need to break the no-new-API rule).

Any disagreement?  I'd like to revert this then T&R a relatively simple
1.5.1 release.

Thanks!

>
> > +
> >  /** @} */
> >
> >  #if defined(OS2) && !defined(DOXYGEN)
> > @@ -977,6 +984,8 @@ APR_DECLARE(char *) apr_strerror(apr_sta
> >                  || (s) == APR_OS_START_SYSERR + ERROR_ACCESS_DENIED)
> >  #define APR_STATUS_IS_EAFNOSUPPORT(s)   ((s) == APR_AFNOSUPPORT \
> >                  || (s) == APR_OS_START_SYSERR + SOCEAFNOSUPPORT)
> > +#define APR_STATUS_IS_EOPNOTSUPP(s)     ((s) == APR_EOPNOTSUPP \
> > +                || (s) == APR_OS_START_SYSERR + SOCEOPNOTSUPP)
> >
> >  /*
> >      Sorry, too tired to wrap this up for OS2... feel free to
> > @@ -990,7 +999,6 @@ APR_DECLARE(char *) apr_strerror(apr_sta
> >      { SOCENOPROTOOPT,           ENOPROTOOPT     },
> >      { SOCEPROTONOSUPPORT,       EPROTONOSUPPORT },
> >      { SOCESOCKTNOSUPPORT,       ESOCKTNOSUPPORT },
> > -    { SOCEOPNOTSUPP,            EOPNOTSUPP      },
> >      { SOCEPFNOSUPPORT,          EPFNOSUPPORT    },
> >      { SOCEADDRINUSE,            EADDRINUSE      },
> >      { SOCEADDRNOTAVAIL,         EADDRNOTAVAIL   },
> > @@ -1122,6 +1130,8 @@ APR_DECLARE(char *) apr_strerror(apr_sta
> >                  || (s) == APR_OS_START_SYSERR + ERROR_DIR_NOT_EMPTY)
> >  #define APR_STATUS_IS_EAFNOSUPPORT(s)   ((s) == APR_EAFNOSUPPORT \
> >                  || (s) == APR_OS_START_SYSERR + WSAEAFNOSUPPORT)
> > +#define APR_STATUS_IS_EOPNOTSUPP(s)     ((s) == APR_EOPNOTSUPP \
> > +                || (s) == APR_OS_START_SYSERR + WSAEOPNOTSUPP)
> >
> >  #elif defined(NETWARE) && defined(USE_WINSOCK) && !defined(DOXYGEN)
/*
> !defined(OS2) && !defined(WIN32) */
> >
> > @@ -1183,6 +1193,8 @@ APR_DECLARE(char *) apr_strerror(apr_sta
> >  #define APR_STATUS_IS_ENOTEMPTY(s)      ((s) == APR_ENOTEMPTY)
> >  #define APR_STATUS_IS_EAFNOSUPPORT(s)   ((s) == APR_EAFNOSUPPORT \
> >                  || (s) == APR_OS_START_SYSERR + WSAEAFNOSUPPORT)
> > +#define APR_STATUS_IS_EOPNOTSUPP(s)     ((s) == APR_EOPNOTSUPP \
> > +                || (s) == APR_OS_START_SYSERR + WSAEOPNOTSUPP)
> >
> >  #else /* !defined(NETWARE) && !defined(OS2) && !defined(WIN32)
*/
> >
> > @@ -1302,6 +1314,8 @@ APR_DECLARE(char *) apr_strerror(apr_sta
> >                                            (s) == APR_EEXIST)
> >  /** Address Family not supported */
> >  #define APR_STATUS_IS_EAFNOSUPPORT(s)    ((s) == APR_EAFNOSUPPORT)
> > +/** Socket operation not supported */
> > +#define APR_STATUS_IS_EOPNOTSUPP(s)      ((s) == APR_EOPNOTSUPP)
> >  /** @} */
> >
> >  #endif /* !defined(NETWARE) && !defined(OS2) && !defined(WIN32)
*/
> >
> >
> >
> >
> >
> > --
> > Born in Roswell... married an alien...
> > http://emptyhammock.com/
>
>


-- 
Born in Roswell... married an alien...
http://emptyhammock.com/
http://edjective.org/

Mime
View raw message