]> granicus.if.org Git - neomutt/commitdiff
Rename open/close/read/write function pointers to avoid problems with systems
authorBrendan Cully <brendan@kublai.com>
Sat, 5 Mar 2005 07:10:57 +0000 (07:10 +0000)
committerBrendan Cully <brendan@kublai.com>
Sat, 5 Mar 2005 07:10:57 +0000 (07:10 +0000)
where standard open/close/read/write functions are implemented with macros.
Thanks to Aaron Crane and others for their input about the problem.

mutt_sasl.c
mutt_sasl.h
mutt_socket.c
mutt_socket.h
mutt_ssl.c
mutt_ssl_gnutls.c
mutt_ssl_nss.c
mutt_tunnel.c

index 3e5911fbc12c8fd0c3b809f7a316be8175690dd6..435b4bd8be661bc205bf22b86d699e4b544c7e90 100644 (file)
@@ -1,5 +1,5 @@
 /*
- * Copyright (C) 2000-3 Brendan Cully <brendan@kublai.com>
+ * Copyright (C) 2000-5 Brendan Cully <brendan@kublai.com>
  * 
  *     This program is free software; you can redistribute it and/or modify
  *     it under the terms of the GNU General Public License as published by
@@ -429,17 +429,17 @@ void mutt_sasl_setup_conn (CONNECTION* conn, sasl_conn_t* saslconn)
 
   /* preserve old functions */
   sasldata->sockdata = conn->sockdata;
-  sasldata->open = conn->open;
-  sasldata->close = conn->close;
-  sasldata->read = conn->read;
-  sasldata->write = conn->write;
+  sasldata->msasl_open = conn->conn_open;
+  sasldata->msasl_close = conn->conn_close;
+  sasldata->msasl_read = conn->conn_read;
+  sasldata->msasl_write = conn->conn_write;
 
   /* and set up new functions */
   conn->sockdata = sasldata;
-  conn->open = mutt_sasl_conn_open;
-  conn->close = mutt_sasl_conn_close;
-  conn->read = mutt_sasl_conn_read;
-  conn->write = mutt_sasl_conn_write;
+  conn->conn_open = mutt_sasl_conn_open;
+  conn->conn_close = mutt_sasl_conn_close;
+  conn->conn_read = mutt_sasl_conn_read;
+  conn->conn_write = mutt_sasl_conn_write;
 }
 
 /* mutt_sasl_cb_log: callback to log SASL messages */
@@ -515,7 +515,7 @@ static int mutt_sasl_conn_open (CONNECTION* conn)
 
   sasldata = (SASL_DATA*) conn->sockdata;
   conn->sockdata = sasldata->sockdata;
-  rc = (sasldata->open) (conn);
+  rc = (sasldata->msasl_open) (conn);
   conn->sockdata = sasldata;
 
   return rc;
@@ -532,10 +532,10 @@ static int mutt_sasl_conn_close (CONNECTION* conn)
 
   /* restore connection's underlying methods */
   conn->sockdata = sasldata->sockdata;
-  conn->open = sasldata->open;
-  conn->close = sasldata->close;
-  conn->read = sasldata->read;
-  conn->write = sasldata->write;
+  conn->conn_open = sasldata->msasl_open;
+  conn->conn_close = sasldata->msasl_close;
+  conn->conn_read = sasldata->msasl_read;
+  conn->conn_write = sasldata->msasl_write;
 
   /* release sasl resources */
   sasl_dispose (&sasldata->saslconn);
@@ -545,7 +545,7 @@ static int mutt_sasl_conn_close (CONNECTION* conn)
   FREE (&sasldata);
 
   /* call underlying close */
-  rc = (conn->close) (conn);
+  rc = (conn->conn_close) (conn);
 
   return rc;
 }
@@ -585,7 +585,7 @@ static int mutt_sasl_conn_read (CONNECTION* conn, char* buf, size_t len)
     do
     {
       /* call the underlying read function to fill the buffer */
-      rc = (sasldata->read) (conn, buf, len);
+      rc = (sasldata->msasl_read) (conn, buf, len);
       if (rc <= 0)
        goto out;
 
@@ -609,7 +609,7 @@ static int mutt_sasl_conn_read (CONNECTION* conn, char* buf, size_t len)
     rc = olen;
   }
   else
-    rc = (sasldata->read) (conn, buf, len);
+    rc = (sasldata->msasl_read) (conn, buf, len);
 
   out:
     conn->sockdata = sasldata;
@@ -649,7 +649,7 @@ static int mutt_sasl_conn_write (CONNECTION* conn, const char* buf,
        goto fail;
       }
 
-      rc = (sasldata->write) (conn, pbuf, plen);
+      rc = (sasldata->msasl_write) (conn, pbuf, plen);
 #ifndef USE_SASL2
       FREE (&pbuf);
 #endif
@@ -663,7 +663,7 @@ static int mutt_sasl_conn_write (CONNECTION* conn, const char* buf,
   }
   else
   /* just write using the underlying socket function */
-    rc = (sasldata->write) (conn, buf, len);
+    rc = (sasldata->msasl_write) (conn, buf, len);
   
   conn->sockdata = sasldata;
 
index eaba032f82ec12039f829613f0b68cbbd3e1f407..3959ee787c0ecfdfe8e521f47ebd6b647e22dc00 100644 (file)
@@ -1,5 +1,5 @@
 /*
- * Copyright (C) 2000-1 Brendan Cully <brendan@kublai.com>
+ * Copyright (C) 2000-5 Brendan Cully <brendan@kublai.com>
  * 
  *     This program is free software; you can redistribute it and/or modify
  *     it under the terms of the GNU General Public License as published by
@@ -51,10 +51,10 @@ typedef struct
 
   /* underlying socket data */
   void* sockdata;
-  int (*open) (CONNECTION* conn);
-  int (*close) (CONNECTION* conn);
-  int (*read) (CONNECTION* conn, char* buf, size_t len);
-  int (*write) (CONNECTION* conn, const char* buf, size_t count);
+  int (*msasl_open) (CONNECTION* conn);
+  int (*msasl_close) (CONNECTION* conn);
+  int (*msasl_read) (CONNECTION* conn, char* buf, size_t len);
+  int (*msasl_write) (CONNECTION* conn, const char* buf, size_t count);
 }
 SASL_DATA;
 
index ebff846de294124044cc4b4f584920be0a7f6056..3919ccd9aa28da83cd48fb504856c523250cd61d 100644 (file)
@@ -1,6 +1,6 @@
 /*
  * Copyright (C) 1998 Michael R. Elkins <me@mutt.org>
- * Copyright (C) 1999-2001 Brendan Cully <brendan@kublai.com>
+ * Copyright (C) 1999-2005 Brendan Cully <brendan@kublai.com>
  * Copyright (C) 1999-2000 Tommi Komulainen <Tommi.Komulainen@iki.fi>
  * 
  *     This program is free software; you can redistribute it and/or modify
@@ -56,7 +56,7 @@ int mutt_socket_open (CONNECTION* conn)
   if (socket_preconnect ())
     return -1;
 
-  return conn->open (conn);
+  return conn->conn_open (conn);
 }
 
 int mutt_socket_close (CONNECTION* conn)
@@ -66,7 +66,7 @@ int mutt_socket_close (CONNECTION* conn)
   if (conn->fd < 0)
     dprint (1, (debugfile, "mutt_socket_close: Attempt to close closed connection.\n"));
   else
-    rc = conn->close (conn);
+    rc = conn->conn_close (conn);
 
   conn->fd = -1;
   conn->ssf = 0;
@@ -84,7 +84,7 @@ int mutt_socket_read (CONNECTION* conn, char* buf, size_t len)
     return -1;
   }
 
-  rc = conn->read (conn, buf, len);
+  rc = conn->conn_read (conn, buf, len);
   /* EOF */
   if (rc == 0)
   {
@@ -111,7 +111,7 @@ int mutt_socket_write_d (CONNECTION *conn, const char *buf, int dbg)
   }
 
   len = mutt_strlen (buf);
-  if ((rc = conn->write (conn, buf, len)) < 0)
+  if ((rc = conn->conn_write (conn, buf, len)) < 0)
   {
     dprint (1, (debugfile,
       "mutt_socket_write: error writing, closing socket\n"));
@@ -135,7 +135,7 @@ int mutt_socket_readchar (CONNECTION *conn, char *c)
   if (conn->bufpos >= conn->available)
   {
     if (conn->fd >= 0)
-      conn->available = conn->read (conn, conn->inbuf, sizeof (conn->inbuf));
+      conn->available = conn->conn_read (conn, conn->inbuf, sizeof (conn->inbuf));
     else
     {
       dprint (1, (debugfile, "mutt_socket_readchar: attempt to read from closed connection.\n"));
@@ -277,10 +277,10 @@ CONNECTION* mutt_conn_find (const CONNECTION* start, const ACCOUNT* account)
   }
   else
   {
-    conn->read = raw_socket_read;
-    conn->write = raw_socket_write;
-    conn->open = raw_socket_open;
-    conn->close = raw_socket_close;
+    conn->conn_read = raw_socket_read;
+    conn->conn_write = raw_socket_write;
+    conn->conn_open = raw_socket_open;
+    conn->conn_close = raw_socket_close;
   }
 
   return conn;
index ce191fbdb1340e4c9aaf5daa208b39f20c8fbd60..5483cb6fcac3b14be921165c1a930add3d8b8ab7 100644 (file)
@@ -1,6 +1,6 @@
 /*
  * Copyright (C) 1998 Brandon Long <blong@fiction.net>
- * Copyright (C) 1999-2001 Brendan Cully <brendan@kublai.com>
+ * Copyright (C) 1999-2005 Brendan Cully <brendan@kublai.com>
  * 
  *     This program is free software; you can redistribute it and/or modify
  *     it under the terms of the GNU General Public License as published by
@@ -44,10 +44,10 @@ typedef struct _connection
   struct _connection *next;
 
   void *sockdata;
-  int (*read) (struct _connection* conn, char* buf, size_t len);
-  int (*write) (struct _connection *conn, const char *buf, size_t count);
-  int (*open) (struct _connection *conn);
-  int (*close) (struct _connection *conn);
+  int (*conn_read) (struct _connection* conn, char* buf, size_t len);
+  int (*conn_write) (struct _connection *conn, const char *buf, size_t count);
+  int (*conn_open) (struct _connection *conn);
+  int (*conn_close) (struct _connection *conn);
 } CONNECTION;
 
 int mutt_socket_open (CONNECTION* conn);
index 09b71d56565238b5f7b58420e590738e7b9c1272..c06807bd1958250dc07d3f1a59db61c2fb507fa6 100644 (file)
@@ -116,9 +116,9 @@ int mutt_ssl_starttls (CONNECTION* conn)
 
   /* hmm. watch out if we're starting TLS over any method other than raw. */
   conn->sockdata = ssldata;
-  conn->read = ssl_socket_read;
-  conn->write = ssl_socket_write;
-  conn->close = tls_close;
+  conn->conn_read = ssl_socket_read;
+  conn->conn_write = ssl_socket_write;
+  conn->conn_close = tls_close;
 
   conn->ssf = SSL_CIPHER_get_bits (SSL_get_current_cipher (ssldata->ssl),
     &maxbits);
@@ -233,14 +233,14 @@ int ssl_socket_setup (CONNECTION * conn)
 {
   if (ssl_init() < 0)
   {
-    conn->open = ssl_socket_open_err;
+    conn->conn_open = ssl_socket_open_err;
     return -1;
   }
 
-  conn->open   = ssl_socket_open;
-  conn->read   = ssl_socket_read;
-  conn->write  = ssl_socket_write;
-  conn->close  = ssl_socket_close;
+  conn->conn_open      = ssl_socket_open;
+  conn->conn_read      = ssl_socket_read;
+  conn->conn_write     = ssl_socket_write;
+  conn->conn_close     = ssl_socket_close;
 
   return 0;
 }
@@ -373,9 +373,9 @@ static int tls_close (CONNECTION* conn)
   int rc;
 
   rc = ssl_socket_close (conn);
-  conn->read = raw_socket_read;
-  conn->write = raw_socket_write;
-  conn->close = raw_socket_close;
+  conn->conn_read = raw_socket_read;
+  conn->conn_write = raw_socket_write;
+  conn->conn_close = raw_socket_close;
 
   return rc;
 }
index 9fd7bc71b796498e4a07d2ab0af3a663e8b1707f..9dec4c3a5a9825840e61c631ef8ddc9eb66c89cd 100644 (file)
@@ -77,10 +77,10 @@ int mutt_gnutls_socket_setup (CONNECTION* conn)
   if (tls_init() < 0)
     return -1;
 
-  conn->open   = tls_socket_open;
-  conn->read   = tls_socket_read;
-  conn->write  = tls_socket_write;
-  conn->close  = tls_socket_close;
+  conn->conn_open      = tls_socket_open;
+  conn->conn_read      = tls_socket_read;
+  conn->conn_write     = tls_socket_write;
+  conn->conn_close     = tls_socket_close;
 
   return 0;
 }
@@ -151,9 +151,9 @@ int mutt_gnutls_starttls (CONNECTION* conn)
   if (tls_negotiate (conn) < 0)
     return -1;
 
-  conn->read   = tls_socket_read;
-  conn->write  = tls_socket_write;
-  conn->close  = tls_starttls_close;
+  conn->conn_read      = tls_socket_read;
+  conn->conn_write     = tls_socket_write;
+  conn->conn_close     = tls_starttls_close;
 
   return 0;
 }
@@ -298,9 +298,9 @@ static int tls_starttls_close (CONNECTION* conn)
   int rc;
 
   rc = tls_socket_close (conn);
-  conn->read = raw_socket_read;
-  conn->write = raw_socket_write;
-  conn->close = raw_socket_close;
+  conn->conn_read = raw_socket_read;
+  conn->conn_write = raw_socket_write;
+  conn->conn_close = raw_socket_close;
 
   return rc;
 }
index ccfa00832cf33921883b9edc6a2a318d178733b6..420215d89ce728c42288fdaf63892a693cbf31c7 100644 (file)
@@ -374,9 +374,9 @@ mutt_nss_socket_setup (CONNECTION * con)
 {
   if (mutt_nss_init ())
     return -1;
-  con->open = mutt_nss_socket_open;
-  con->read = mutt_nss_socket_read;
-  con->write = mutt_nss_socket_write;
-  con->close = mutt_nss_socket_close;
+  con->conn_open = mutt_nss_socket_open;
+  con->conn_read = mutt_nss_socket_read;
+  con->conn_write = mutt_nss_socket_write;
+  con->conn_close = mutt_nss_socket_close;
   return 0;
 }
index 01338d70b79db26fc05f7ad5f58db0247d13c1c9..fc2b2e1064c630612d300f3b4342060b3143aeff 100644 (file)
@@ -49,10 +49,10 @@ static int tunnel_socket_write (CONNECTION* conn, const char* buf, size_t len);
 /* -- public functions -- */
 int mutt_tunnel_socket_setup (CONNECTION *conn)
 {
-  conn->open = tunnel_socket_open;
-  conn->close = tunnel_socket_close;
-  conn->read = tunnel_socket_read;
-  conn->write = tunnel_socket_write;
+  conn->conn_open = tunnel_socket_open;
+  conn->conn_close = tunnel_socket_close;
+  conn->conn_read = tunnel_socket_read;
+  conn->conn_write = tunnel_socket_write;
 
   return 0;
 }