static int initialize_tls_session_server(int peer_socket,
gnutls_session_t *session,
gnutls_certificate_credentials_t *x509_cred);
-static int initialize_tls_session_both(int flags,
+static int initialize_tls_session_both(unsigned int flags,
int peer_socket,
gnutls_session_t *session,
gnutls_certificate_credentials_t *x509_cred);
PROXY_CA_PATH);
gnutls_certificate_free_credentials(*x509_cred);
return -1;
+ } else if (result != 1) {
+ /* Must contain only one CA, our proxy CA. */
+ LOG(ERROR, "initialize_tls_session_client(): multiple CAs found");
+ gnutls_certificate_free_credentials(*x509_cred);
+ return -1;
}
}
/* If the invalid hostname was specified do nothing, we use a self-signed
return initialize_tls_session_both(GNUTLS_CLIENT,
peer_socket, session, x509_cred);
}
-static int initialize_tls_session_both(int flags,
+static int initialize_tls_session_both(unsigned int flags,
int peer_socket,
gnutls_session_t *session,
gnutls_certificate_credentials_t *x509_cred) {