1
0
mirror of https://github.com/moparisthebest/curl synced 2024-12-21 15:48:49 -05: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:
Daniel Stenberg 2011-05-05 15:49:43 +02:00
parent 335dfa793c
commit e34131db78
6 changed files with 12 additions and 22 deletions

View File

@ -2946,10 +2946,8 @@ static CURLcode ftp_connect(struct connectdata *conn,
return result;
}
if(conn->handler->protocol & CURLPROTO_FTPS) {
if(conn->handler->flags & PROTOPT_SSL) {
/* 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);
if(result)
return result;

View File

@ -1013,7 +1013,7 @@ CURLcode Curl_add_buffer_send(Curl_send_buffer *in,
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
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
@ -1292,7 +1292,7 @@ CURLcode Curl_http_connect(struct connectdata *conn, bool *done)
}
#endif /* CURL_DISABLE_PROXY */
if(conn->given->protocol & CURLPROTO_HTTPS) {
if(conn->given->flags & PROTOPT_SSL) {
/* perform SSL initialization */
if(data->state.used_interface == Curl_if_multi) {
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)
{
CURLcode result;
DEBUGASSERT((conn) && (conn->handler->protocol & CURLPROTO_HTTPS));
DEBUGASSERT((conn) && (conn->handler->flags & PROTOPT_SSL));
/* perform SSL initialization for this socket */
result = Curl_ssl_connect_nonblocking(conn, FIRSTSOCKET, done);
@ -1349,7 +1349,7 @@ static int https_getsock(struct connectdata *conn,
curl_socket_t *socks,
int numsocks)
{
if(conn->handler->protocol & CURLPROTO_HTTPS) {
if(conn->handler->flags & PROTOPT_SSL) {
struct ssl_connect_data *connssl = &conn->ssl[FIRSTSOCKET];
if(!numsocks)

View File

@ -629,12 +629,10 @@ static CURLcode imap_multi_statemach(struct connectdata *conn,
struct imap_conn *imapc = &conn->proto.imapc;
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);
}
else {
else
result = Curl_pp_multi_statemach(&imapc->pp);
}
*done = (bool)(imapc->state == IMAP_STOP);
@ -744,11 +742,9 @@ static CURLcode imap_connect(struct connectdata *conn,
return result;
}
if((conn->handler->protocol & CURLPROTO_IMAPS) &&
if((conn->handler->flags & PROTOPT_SSL) &&
data->state.used_interface != Curl_if_multi) {
/* 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);
if(result)
return result;

View File

@ -206,7 +206,7 @@ static CURLcode Curl_ldap(struct connectdata *conn, bool *done)
}
/* Get the URL scheme ( either ldap or ldaps ) */
if(conn->given->protocol & CURLPROTO_LDAPS)
if(conn->given->flags & PROTOPT_SSL)
ldap_ssl = 1;
infof(data, "LDAP local: trying to establish %s connection\n",
ldap_ssl ? "encrypted" : "cleartext");

View File

@ -676,10 +676,8 @@ static CURLcode pop3_connect(struct connectdata *conn,
return result;
}
if(conn->handler->protocol & CURLPROTO_POP3S) {
if(conn->handler->flags & PROTOPT_SSL) {
/* 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);
if(result)
return result;

View File

@ -1027,12 +1027,10 @@ static CURLcode smtp_multi_statemach(struct connectdata *conn,
struct smtp_conn *smtpc = &conn->proto.smtpc;
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);
}
else {
else
result = Curl_pp_multi_statemach(&smtpc->pp);
}
*done = (bool)(smtpc->state == SMTP_STOP);