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/
|