-*- coding: utf-8 -*-
Changes with Apache 2.5.0
+ *) mod_http2: required minimum version of libnghttp2 is 1.2.1
+ [Stefan Eissing]
+
*) mod_proxy_fdpass: Fix AH01153 error when using the default configuration.
In earlier version of httpd, you can explicitelly set the 'flusher' parameter
to 'flush' as a workaround. (i.e. flusher=flush)
fi
fi
- AC_MSG_CHECKING([for nghttp2 version >= 1.0.0])
+ AC_MSG_CHECKING([for nghttp2 version >= 1.2.1])
AC_TRY_COMPILE([#include <nghttp2/nghttp2ver.h>],[
#if !defined(NGHTTP2_VERSION_NUM)
#error "Missing nghttp2 version"
#endif
-#if NGHTTP2_VERSION_NUM < 0x010000
+#if NGHTTP2_VERSION_NUM < 0x010201
#error "Unsupported nghttp2 version " NGHTTP2_VERSION_TEXT
#endif],
[AC_MSG_RESULT(OK)
if test "x$liberrors" != "x"; then
AC_MSG_WARN([nghttp2 library is unusable])
fi
+dnl # nghttp2 >= 1.3.0: access to stream weights
+ AC_CHECK_FUNCS([nghttp2_stream_get_weight],
+ [APR_ADDTO(MOD_CPPFLAGS, ["-DH2_NG2_STREAM_API"])], [])
+dnl # nghttp2 >= 1.5.0: changing stream priorities
AC_CHECK_FUNCS([nghttp2_session_change_stream_priority],
[APR_ADDTO(MOD_CPPFLAGS, ["-DH2_NG2_CHANGE_PRIO"])], [])
else
return stream;
}
+#ifdef H2_NG2_STREAM_API
+
/**
* Determine the importance of streams when scheduling tasks.
* - if both stream depend on the same one, compare weights
return spri_cmp(sid1, s1, sid2, s2, session);
}
+#else /* ifdef H2_NG2_STREAM_API */
+
+/* In absence of nghttp2_stream API, which gives information about
+ * priorities since nghttp2 1.3.x, we just sort the streams by
+ * their identifier, aka. order of arrival.
+ */
+static int stream_pri_cmp(int sid1, int sid2, void *ctx)
+{
+ (void)ctx;
+ return sid1 - sid2;
+}
+
+#endif /* (ifdef else) H2_NG2_STREAM_API */
+
static apr_status_t stream_schedule(h2_session *session,
h2_stream *stream, int eos)
{
* @macro
* Version number of the h2 module as c string
*/
-#define MOD_HTTP2_VERSION "1.0.9-DEV"
+#define MOD_HTTP2_VERSION "1.0.10-DEV"
/**
* @macro
* release. This is a 24 bit number with 8 bits for major number, 8 bits
* for minor and 8 bits for patch. Version 1.2.3 becomes 0x010203.
*/
-#define MOD_HTTP2_VERSION_NUM 0x010009
+#define MOD_HTTP2_VERSION_NUM 0x01000a
#endif /* mod_h2_h2_version_h */