summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorTony Kelman <tony@kelman.net>2015-07-07 06:55:05 -0400
committerTony Kelman <tony@kelman.net>2015-07-07 06:55:05 -0400
commitfebc8c4612b6be1d891f658e50f3f70cc5dc5945 (patch)
tree222f355483637e11ea98b3ff6937ff5c5235515a
parent3704ac35d32a274339a66cd51abce6dbea315022 (diff)
downloadlibgit2-febc8c4612b6be1d891f658e50f3f70cc5dc5945.tar.gz
Fix undefined reference with old versions of openssl
Versions prior to 0.9.8f did not have this function, rhel/centos5 are still on a heavily backported version of 0.9.8e and theoretically supported until March 2017 Without this ifdef, I get the following link failure: ``` CMakeFiles/libgit2_clar.dir/src/openssl_stream.c.o: In function `openssl_connect': openssl_stream.c:(.text+0x45a): undefined reference to `SSL_set_tlsext_host_name' collect2: error: ld returned 1 exit status make[6]: *** [libgit2_clar] Error 1 ```
-rw-r--r--src/openssl_stream.c2
1 files changed, 2 insertions, 0 deletions
diff --git a/src/openssl_stream.c b/src/openssl_stream.c
index 958252e9f..4df7c6b7c 100644
--- a/src/openssl_stream.c
+++ b/src/openssl_stream.c
@@ -324,7 +324,9 @@ int openssl_connect(git_stream *stream)
SSL_set_bio(st->ssl, bio, bio);
/* specify the host in case SNI is needed */
+#ifdef SSL_CTRL_SET_TLSEXT_HOSTNAME
SSL_set_tlsext_host_name(st->ssl, st->host);
+#endif
if ((ret = SSL_connect(st->ssl)) <= 0)
return ssl_set_error(st->ssl, ret);