X-Git-Url: http://git.madism.org/?p=apps%2Fmadmutt.git;a=blobdiff_plain;f=mutt_socket.c;h=9029b3e11874f876ba2c4c743ce4eae783a6d4f4;hp=a38534c7e52603b472059a27c9df78391903bca0;hb=4f61fa445bff564984acf29fc91858af0ed2725e;hpb=18ea5e8b861632627335b8d94787c742dbf5f567 diff --git a/mutt_socket.c b/mutt_socket.c index a38534c..9029b3e 100644 --- a/mutt_socket.c +++ b/mutt_socket.c @@ -17,7 +17,7 @@ #include "globals.h" #include "mutt_socket.h" #include "mutt_tunnel.h" -#if defined(USE_SSL) || defined(USE_GNUTLS) || defined(USE_NSS) +#if defined(USE_SSL) || defined(USE_GNUTLS) # include "mutt_ssl.h" #endif @@ -103,7 +103,7 @@ int mutt_socket_write_d (CONNECTION * conn, const char *buf, int dbg) return -1; } - len = mutt_strlen (buf); + len = str_len (buf); if ((rc = conn->conn_write (conn, buf, len)) < 0) { debug_print (1, ("error writing, closing socket\n")); mutt_socket_close (conn); @@ -169,7 +169,7 @@ int mutt_socket_readln_d (char *buf, size_t buflen, CONNECTION * conn, debug_print (dbg, ("< %s\n", buf)); - /* number of bytes read, not mutt_strlen */ + /* number of bytes read, not str_len */ return i + 1; } @@ -189,7 +189,7 @@ void mutt_socket_free (CONNECTION * conn) /* head is special case, doesn't need prev updated */ if (iter == conn) { Connections = iter->next; - FREE (&iter); + mem_free (&iter); return; } @@ -197,7 +197,7 @@ void mutt_socket_free (CONNECTION * conn) if (iter->next == conn) { tmp = iter->next; iter->next = tmp->next; - FREE (&tmp); + mem_free (&tmp); return; } iter = iter->next; @@ -237,12 +237,8 @@ CONNECTION *mutt_conn_find (const CONNECTION * start, const ACCOUNT * account) if (Tunnel && *Tunnel) mutt_tunnel_socket_setup (conn); else if (account->flags & M_ACCT_SSL) { -#ifdef USE_SSL - ssl_socket_setup (conn); -#elif USE_NSS - mutt_nss_socket_setup (conn); -#elif USE_GNUTLS - if (mutt_gnutls_socket_setup (conn) < 0) { +#if defined (USE_SSL) || defined (USE_GNUTLS) + if (mutt_ssl_socket_setup (conn) < 0) { mutt_socket_free (conn); return NULL; } @@ -270,7 +266,7 @@ static int socket_preconnect (void) int rc; int save_errno; - if (mutt_strlen (Preconnect)) { + if (str_len (Preconnect)) { debug_print (2, ("Executing preconnect: %s\n", Preconnect)); rc = mutt_system (Preconnect); debug_print (2, ("Preconnect result: %d\n", rc)); @@ -328,7 +324,7 @@ static CONNECTION *socket_new_conn (void) { CONNECTION *conn; - conn = (CONNECTION *) safe_calloc (1, sizeof (CONNECTION)); + conn = (CONNECTION *) mem_calloc (1, sizeof (CONNECTION)); conn->fd = -1; return conn; @@ -408,11 +404,12 @@ int raw_socket_open (CONNECTION * conn) rc = getaddrinfo (host_idna, port, &hints, &res); # ifdef HAVE_LIBIDN - FREE (&host_idna); + mem_free (&host_idna); # endif if (rc) { mutt_error (_("Could not find the host \"%s\""), conn->account.host); + mutt_sleep (2); return -1; } @@ -458,7 +455,7 @@ int raw_socket_open (CONNECTION * conn) if ((he = gethostbyname (host_idna)) == NULL) { # ifdef HAVE_LIBIDN - FREE (&host_idna); + mem_free (&host_idna); # endif mutt_error (_("Could not find the host \"%s\""), conn->account.host); @@ -466,7 +463,7 @@ int raw_socket_open (CONNECTION * conn) } # ifdef HAVE_LIBIDN - FREE (&host_idna); + mem_free (&host_idna); # endif mutt_message (_("Connecting to %s..."), conn->account.host); @@ -478,6 +475,7 @@ int raw_socket_open (CONNECTION * conn) if (fd >= 0) { if ((rc = socket_connect (fd, (struct sockaddr *) &sin)) == 0) { + fcntl (fd, F_SETFD, FD_CLOEXEC); conn->fd = fd; break; }