/*********************************************************************** * * smtp_do() * * This function is registered as 'curl_do' function. It decodes the path * parts etc as a wrapper to the actual DO function (smtp_perform). * * The input argument is already checked for validity. */ static CURLcode smtp_do(struct connectdata *conn, bool *done) { CURLcode result = CURLE_OK; *done = FALSE; /* default to false */ /* Parse the custom request */ result = smtp_parse_custom_request(conn); if(result) return result; result = smtp_regular_transfer(conn, done); return result; }
/*********************************************************************** * * smtp_do() * * This function is registered as 'curl_do' function. It decodes the path * parts etc as a wrapper to the actual DO function (smtp_perform). * * The input argument is already checked for validity. */ static CURLcode smtp_do(struct connectdata *conn, bool *done) { CURLcode result = CURLE_OK; *done = FALSE; /* default to false */ /* Since connections can be re-used between SessionHandles, there might be a connection already existing but on a fresh SessionHandle struct. As such we make sure we have a good SMTP struct to play with. For new connections the SMTP struct is allocated and setup in the smtp_connect() function. */ Curl_reset_reqproto(conn); result = smtp_init(conn); if(result) return result; result = smtp_regular_transfer(conn, done); return result; }