You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@trafficserver.apache.org by jp...@apache.org on 2012/01/27 06:27:32 UTC

svn commit: r1236533 - in /trafficserver/traffic/trunk: build/crypto.m4 configure.ac lib/ts/ink_config.h.in

Author: jpeach
Date: Fri Jan 27 05:27:31 2012
New Revision: 1236533

URL: http://svn.apache.org/viewvc?rev=1236533&view=rev
Log:
TS-1083: Compile time detection of NextProtocolNegotiation.

Modified:
    trafficserver/traffic/trunk/build/crypto.m4
    trafficserver/traffic/trunk/configure.ac
    trafficserver/traffic/trunk/lib/ts/ink_config.h.in

Modified: trafficserver/traffic/trunk/build/crypto.m4
URL: http://svn.apache.org/viewvc/trafficserver/traffic/trunk/build/crypto.m4?rev=1236533&r1=1236532&r2=1236533&view=diff
==============================================================================
--- trafficserver/traffic/trunk/build/crypto.m4 (original)
+++ trafficserver/traffic/trunk/build/crypto.m4 Fri Jan 27 05:27:31 2012
@@ -109,3 +109,23 @@ if test "$enable_openssl" != "no"; then
 fi
 
 ])
+
+AC_DEFUN([TS_CHECK_CRYPTO_NEXTPROTONEG], [
+  AC_ARG_ENABLE([tls-npn],
+  [AS_HELP_STRING([--enable-tls-npn],[enable NextProtocolNegotiation TLS extension support])],
+  [ ],
+  [
+    enable_tls_npn=yes
+    _npn_saved_LIBS=$LIBS
+    TS_ADDTO(LIBS, [$LIBSSL])
+    AC_CHECK_FUNCS(SSL_CTX_set_next_protos_advertised_cb SSL_CTX_set_next_proto_select_cb SSL_select_next_proto SSL_get0_next_proto_negotiated,
+      [], [enable_tls_npn=no]
+    )
+    LIBS=$_npn_saved_LIBS
+  ])
+
+  AC_MSG_CHECKING(whether to enable NextProtocolNegotiation TLS extension support)
+  AC_MSG_RESULT([$enable_tls_npn])
+  TS_ARG_ENABLE_VAR([use], [tls-npn])
+  AC_SUBST(use_tls_npn)
+])

Modified: trafficserver/traffic/trunk/configure.ac
URL: http://svn.apache.org/viewvc/trafficserver/traffic/trunk/configure.ac?rev=1236533&r1=1236532&r2=1236533&view=diff
==============================================================================
--- trafficserver/traffic/trunk/configure.ac (original)
+++ trafficserver/traffic/trunk/configure.ac Fri Jan 27 05:27:31 2012
@@ -814,6 +814,10 @@ if test "x${enable_crypto}" != "xyes"; t
 fi
 
 #
+# Check for NextProtocolNegotiation TLS extension support.
+TS_CHECK_CRYPTO_NEXTPROTONEG
+
+#
 # Check for zlib presence and usability
 TS_CHECK_ZLIB
 

Modified: trafficserver/traffic/trunk/lib/ts/ink_config.h.in
URL: http://svn.apache.org/viewvc/trafficserver/traffic/trunk/lib/ts/ink_config.h.in?rev=1236533&r1=1236532&r2=1236533&view=diff
==============================================================================
--- trafficserver/traffic/trunk/lib/ts/ink_config.h.in (original)
+++ trafficserver/traffic/trunk/lib/ts/ink_config.h.in Fri Jan 27 05:27:31 2012
@@ -112,6 +112,7 @@
 #define TS_USE_TPROXY                  @use_tproxy@
 #define TS_USE_HWLOC                   @use_hwloc@
 #define TS_USE_FREELIST                @use_freelist@
+#define TS_USE_TLS_NPN                 @use_tls_npn@
 
 /* OS API definitions */
 #define GETHOSTBYNAME_R_HOSTENT_DATA   @gethostbyname_r_hostent_data@