res_pjsip: Add TLSv1.1 and TLSv1.2 support
authorSean Bright <sean.bright@gmail.com>
Tue, 12 Dec 2017 15:28:45 +0000 (10:28 -0500)
committerSean Bright <sean.bright@gmail.com>
Tue, 12 Dec 2017 17:45:44 +0000 (11:45 -0600)
Support for these protocols was added in the same commit as the 'proto'
field, so we can safely use the same ./configure check.

For reference: https://trac.pjsip.org/repos/changeset/4968

Change-Id: Icf4975d785d6bfb8f30ac7ffa695a0adf9382dac

res/res_pjsip/config_transport.c

index 2f29456..a9a90ac 100644 (file)
@@ -917,6 +917,12 @@ static int transport_tls_method_handler(const struct aco_option *opt, struct ast
                state->tls.method = PJSIP_SSL_UNSPECIFIED_METHOD;
        } else if (!strcasecmp(var->value, "tlsv1")) {
                state->tls.method = PJSIP_TLSV1_METHOD;
+#ifdef HAVE_PJSIP_TLS_TRANSPORT_PROTO
+       } else if (!strcasecmp(var->value, "tlsv1_1")) {
+               state->tls.method = PJSIP_TLSV1_1_METHOD;
+       } else if (!strcasecmp(var->value, "tlsv1_2")) {
+               state->tls.method = PJSIP_TLSV1_2_METHOD;
+#endif
        } else if (!strcasecmp(var->value, "sslv2")) {
                state->tls.method = PJSIP_SSLV2_METHOD;
        } else if (!strcasecmp(var->value, "sslv3")) {
@@ -933,6 +939,10 @@ static int transport_tls_method_handler(const struct aco_option *opt, struct ast
 static const char *tls_method_map[] = {
        [PJSIP_SSL_UNSPECIFIED_METHOD] = "unspecified",
        [PJSIP_TLSV1_METHOD] = "tlsv1",
+#ifdef HAVE_PJSIP_TLS_TRANSPORT_PROTO
+       [PJSIP_TLSV1_1_METHOD] = "tlsv1_1",
+       [PJSIP_TLSV1_2_METHOD] = "tlsv1_2",
+#endif
        [PJSIP_SSLV2_METHOD] = "sslv2",
        [PJSIP_SSLV3_METHOD] = "sslv3",
        [PJSIP_SSLV23_METHOD] = "sslv23",