API inconsistencies

Nick Kew niq at apache.org
Mon Nov 25 16:36:33 UTC 2013


Is there a prescribed way for a module to deal with API changes
to support both older and newer versions?

I can use constructs like:

    /* Get the remote address */
#if OLDVERSION
    len = ngx_sock_ntop(conn->sockaddr, ...
#else
    len = ngx_sock_ntop(conn->sockaddr, conn->socklen, …
#endif

But that's just passing the buck to users to figure out why my
module doesn't compile with their nginx or tengine.  I want
a test like Apache's MMN that will automatically detect the
API version to use.  Is there a way to do that?

(FWIW, the above API changed in
http://hg.nginx.org/nginx/rev/05ba5bce31e0 ).

-- 
Nick Kew


More information about the nginx-devel mailing list