mirror of
https://github.com/curl/curl.git
synced 2025-09-28 15:06:48 +03:00
SSL: check for SSL, not specific protocols
Code cleanup to check less for protocols and more for the specific relevant feature. Like if SSL is required.
This commit is contained in:
parent
335dfa793c
commit
e34131db78
|
@ -2946,10 +2946,8 @@ static CURLcode ftp_connect(struct connectdata *conn,
|
||||||
return result;
|
return result;
|
||||||
}
|
}
|
||||||
|
|
||||||
if(conn->handler->protocol & CURLPROTO_FTPS) {
|
if(conn->handler->flags & PROTOPT_SSL) {
|
||||||
/* BLOCKING */
|
/* BLOCKING */
|
||||||
/* FTPS is simply ftp with SSL for the control channel */
|
|
||||||
/* now, perform the SSL initialization for this socket */
|
|
||||||
result = Curl_ssl_connect(conn, FIRSTSOCKET);
|
result = Curl_ssl_connect(conn, FIRSTSOCKET);
|
||||||
if(result)
|
if(result)
|
||||||
return result;
|
return result;
|
||||||
|
|
|
@ -1013,7 +1013,7 @@ CURLcode Curl_add_buffer_send(Curl_send_buffer *in,
|
||||||
return res;
|
return res;
|
||||||
}
|
}
|
||||||
|
|
||||||
if(conn->handler->protocol & CURLPROTO_HTTPS) {
|
if(conn->handler->flags & PROTOPT_SSL) {
|
||||||
/* We never send more than CURL_MAX_WRITE_SIZE bytes in one single chunk
|
/* We never send more than CURL_MAX_WRITE_SIZE bytes in one single chunk
|
||||||
when we speak HTTPS, as if only a fraction of it is sent now, this data
|
when we speak HTTPS, as if only a fraction of it is sent now, this data
|
||||||
needs to fit into the normal read-callback buffer later on and that
|
needs to fit into the normal read-callback buffer later on and that
|
||||||
|
@ -1292,7 +1292,7 @@ CURLcode Curl_http_connect(struct connectdata *conn, bool *done)
|
||||||
}
|
}
|
||||||
#endif /* CURL_DISABLE_PROXY */
|
#endif /* CURL_DISABLE_PROXY */
|
||||||
|
|
||||||
if(conn->given->protocol & CURLPROTO_HTTPS) {
|
if(conn->given->flags & PROTOPT_SSL) {
|
||||||
/* perform SSL initialization */
|
/* perform SSL initialization */
|
||||||
if(data->state.used_interface == Curl_if_multi) {
|
if(data->state.used_interface == Curl_if_multi) {
|
||||||
result = https_connecting(conn, done);
|
result = https_connecting(conn, done);
|
||||||
|
@ -1331,7 +1331,7 @@ static int http_getsock_do(struct connectdata *conn,
|
||||||
static CURLcode https_connecting(struct connectdata *conn, bool *done)
|
static CURLcode https_connecting(struct connectdata *conn, bool *done)
|
||||||
{
|
{
|
||||||
CURLcode result;
|
CURLcode result;
|
||||||
DEBUGASSERT((conn) && (conn->handler->protocol & CURLPROTO_HTTPS));
|
DEBUGASSERT((conn) && (conn->handler->flags & PROTOPT_SSL));
|
||||||
|
|
||||||
/* perform SSL initialization for this socket */
|
/* perform SSL initialization for this socket */
|
||||||
result = Curl_ssl_connect_nonblocking(conn, FIRSTSOCKET, done);
|
result = Curl_ssl_connect_nonblocking(conn, FIRSTSOCKET, done);
|
||||||
|
@ -1349,7 +1349,7 @@ static int https_getsock(struct connectdata *conn,
|
||||||
curl_socket_t *socks,
|
curl_socket_t *socks,
|
||||||
int numsocks)
|
int numsocks)
|
||||||
{
|
{
|
||||||
if(conn->handler->protocol & CURLPROTO_HTTPS) {
|
if(conn->handler->flags & PROTOPT_SSL) {
|
||||||
struct ssl_connect_data *connssl = &conn->ssl[FIRSTSOCKET];
|
struct ssl_connect_data *connssl = &conn->ssl[FIRSTSOCKET];
|
||||||
|
|
||||||
if(!numsocks)
|
if(!numsocks)
|
||||||
|
|
10
lib/imap.c
10
lib/imap.c
|
@ -629,12 +629,10 @@ static CURLcode imap_multi_statemach(struct connectdata *conn,
|
||||||
struct imap_conn *imapc = &conn->proto.imapc;
|
struct imap_conn *imapc = &conn->proto.imapc;
|
||||||
CURLcode result;
|
CURLcode result;
|
||||||
|
|
||||||
if((conn->handler->protocol & CURLPROTO_IMAPS) && !imapc->ssldone) {
|
if((conn->handler->flags & PROTOPT_SSL) && !imapc->ssldone)
|
||||||
result = Curl_ssl_connect_nonblocking(conn, FIRSTSOCKET, &imapc->ssldone);
|
result = Curl_ssl_connect_nonblocking(conn, FIRSTSOCKET, &imapc->ssldone);
|
||||||
}
|
else
|
||||||
else {
|
|
||||||
result = Curl_pp_multi_statemach(&imapc->pp);
|
result = Curl_pp_multi_statemach(&imapc->pp);
|
||||||
}
|
|
||||||
|
|
||||||
*done = (bool)(imapc->state == IMAP_STOP);
|
*done = (bool)(imapc->state == IMAP_STOP);
|
||||||
|
|
||||||
|
@ -744,11 +742,9 @@ static CURLcode imap_connect(struct connectdata *conn,
|
||||||
return result;
|
return result;
|
||||||
}
|
}
|
||||||
|
|
||||||
if((conn->handler->protocol & CURLPROTO_IMAPS) &&
|
if((conn->handler->flags & PROTOPT_SSL) &&
|
||||||
data->state.used_interface != Curl_if_multi) {
|
data->state.used_interface != Curl_if_multi) {
|
||||||
/* BLOCKING */
|
/* BLOCKING */
|
||||||
/* IMAPS is simply imap with SSL for the control channel */
|
|
||||||
/* now, perform the SSL initialization for this socket */
|
|
||||||
result = Curl_ssl_connect(conn, FIRSTSOCKET);
|
result = Curl_ssl_connect(conn, FIRSTSOCKET);
|
||||||
if(result)
|
if(result)
|
||||||
return result;
|
return result;
|
||||||
|
|
|
@ -206,7 +206,7 @@ static CURLcode Curl_ldap(struct connectdata *conn, bool *done)
|
||||||
}
|
}
|
||||||
|
|
||||||
/* Get the URL scheme ( either ldap or ldaps ) */
|
/* Get the URL scheme ( either ldap or ldaps ) */
|
||||||
if(conn->given->protocol & CURLPROTO_LDAPS)
|
if(conn->given->flags & PROTOPT_SSL)
|
||||||
ldap_ssl = 1;
|
ldap_ssl = 1;
|
||||||
infof(data, "LDAP local: trying to establish %s connection\n",
|
infof(data, "LDAP local: trying to establish %s connection\n",
|
||||||
ldap_ssl ? "encrypted" : "cleartext");
|
ldap_ssl ? "encrypted" : "cleartext");
|
||||||
|
|
|
@ -676,10 +676,8 @@ static CURLcode pop3_connect(struct connectdata *conn,
|
||||||
return result;
|
return result;
|
||||||
}
|
}
|
||||||
|
|
||||||
if(conn->handler->protocol & CURLPROTO_POP3S) {
|
if(conn->handler->flags & PROTOPT_SSL) {
|
||||||
/* BLOCKING */
|
/* BLOCKING */
|
||||||
/* POP3S is simply pop3 with SSL for the control channel */
|
|
||||||
/* now, perform the SSL initialization for this socket */
|
|
||||||
result = Curl_ssl_connect(conn, FIRSTSOCKET);
|
result = Curl_ssl_connect(conn, FIRSTSOCKET);
|
||||||
if(result)
|
if(result)
|
||||||
return result;
|
return result;
|
||||||
|
|
|
@ -1027,12 +1027,10 @@ static CURLcode smtp_multi_statemach(struct connectdata *conn,
|
||||||
struct smtp_conn *smtpc = &conn->proto.smtpc;
|
struct smtp_conn *smtpc = &conn->proto.smtpc;
|
||||||
CURLcode result;
|
CURLcode result;
|
||||||
|
|
||||||
if((conn->handler->protocol & CURLPROTO_SMTPS) && !smtpc->ssldone) {
|
if((conn->handler->flags & PROTOPT_SSL) && !smtpc->ssldone)
|
||||||
result = Curl_ssl_connect_nonblocking(conn, FIRSTSOCKET, &smtpc->ssldone);
|
result = Curl_ssl_connect_nonblocking(conn, FIRSTSOCKET, &smtpc->ssldone);
|
||||||
}
|
else
|
||||||
else {
|
|
||||||
result = Curl_pp_multi_statemach(&smtpc->pp);
|
result = Curl_pp_multi_statemach(&smtpc->pp);
|
||||||
}
|
|
||||||
|
|
||||||
*done = (bool)(smtpc->state == SMTP_STOP);
|
*done = (bool)(smtpc->state == SMTP_STOP);
|
||||||
|
|
||||||
|
|
Loading…
Reference in New Issue
Block a user