X-Git-Url: http://git.madism.org/?p=apps%2Fmadmutt.git;a=blobdiff_plain;f=mutt_tunnel.c;h=4a012f06da0c81fb6778d5541f684577b3bbb8b5;hp=01e1d729c24aa56e801d880e59333b79965fb975;hb=df70e07e24add1869bcc9b7af2277d9d0c09a281;hpb=6833ce8bdca2d64e14485118f2a4417b7e1cb1b1 diff --git a/mutt_tunnel.c b/mutt_tunnel.c index 01e1d72..4a012f0 100644 --- a/mutt_tunnel.c +++ b/mutt_tunnel.c @@ -17,6 +17,10 @@ * Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111, USA. */ +#if HAVE_CONFIG_H +# include "config.h" +#endif + #include "mutt.h" #include "mutt_socket.h" #include "mutt_tunnel.h" @@ -29,56 +33,53 @@ #include /* -- data types -- */ -typedef struct -{ +typedef struct { pid_t pid; int readfd; int writefd; } TUNNEL_DATA; /* forward declarations */ -static int tunnel_socket_open (CONNECTION*); -static int tunnel_socket_close (CONNECTION*); -static int tunnel_socket_read (CONNECTION* conn, char* buf, size_t len); -static int tunnel_socket_write (CONNECTION* conn, const char* buf, size_t len); +static int tunnel_socket_open (CONNECTION *); +static int tunnel_socket_close (CONNECTION *); +static int tunnel_socket_read (CONNECTION * conn, char *buf, size_t len); +static int tunnel_socket_write (CONNECTION * conn, const char *buf, + size_t len); /* -- public functions -- */ -int mutt_tunnel_socket_setup (CONNECTION *conn) +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; } -static int tunnel_socket_open (CONNECTION *conn) +static int tunnel_socket_open (CONNECTION * conn) { - TUNNEL_DATA* tunnel; + TUNNEL_DATA *tunnel; int pid; int rc; int pin[2], pout[2]; - tunnel = (TUNNEL_DATA*) safe_malloc (sizeof (TUNNEL_DATA)); + tunnel = (TUNNEL_DATA *) safe_malloc (sizeof (TUNNEL_DATA)); conn->sockdata = tunnel; mutt_message (_("Connecting with \"%s\"..."), Tunnel); - if ((rc = pipe (pin)) == -1) - { + if ((rc = pipe (pin)) == -1) { mutt_perror ("pipe"); return -1; } - if ((rc = pipe (pout)) == -1) - { + if ((rc = pipe (pout)) == -1) { mutt_perror ("pipe"); return -1; } mutt_block_signals_system (); - if ((pid = fork ()) == 0) - { + if ((pid = fork ()) == 0) { mutt_unblock_signals_system (0); if (dup2 (pout[0], STDIN_FILENO) < 0 || dup2 (pin[1], STDOUT_FILENO) < 0) _exit (127); @@ -96,8 +97,7 @@ static int tunnel_socket_open (CONNECTION *conn) } mutt_unblock_signals_system (1); - if (pid == -1) - { + if (pid == -1) { close (pin[0]); close (pin[1]); close (pout[0]); @@ -115,14 +115,14 @@ static int tunnel_socket_open (CONNECTION *conn) tunnel->writefd = pout[1]; tunnel->pid = pid; - conn->fd = 42; /* stupid hack */ + conn->fd = 42; /* stupid hack */ return 0; } -static int tunnel_socket_close (CONNECTION* conn) +static int tunnel_socket_close (CONNECTION * conn) { - TUNNEL_DATA* tunnel = (TUNNEL_DATA*) conn->sockdata; + TUNNEL_DATA *tunnel = (TUNNEL_DATA *) conn->sockdata; close (tunnel->readfd); close (tunnel->writefd); @@ -132,32 +132,31 @@ static int tunnel_socket_close (CONNECTION* conn) return 0; } -static int tunnel_socket_read (CONNECTION* conn, char* buf, size_t len) +static int tunnel_socket_read (CONNECTION * conn, char *buf, size_t len) { - TUNNEL_DATA* tunnel = (TUNNEL_DATA*) conn->sockdata; + TUNNEL_DATA *tunnel = (TUNNEL_DATA *) conn->sockdata; int rc; rc = read (tunnel->readfd, buf, len); - if (rc == -1) - { + if (rc == -1) { mutt_error (_("Tunnel error talking to %s: %s"), conn->account.host, - strerror (errno)); + strerror (errno)); mutt_sleep (1); } return rc; } -static int tunnel_socket_write (CONNECTION* conn, const char* buf, size_t len) +static int tunnel_socket_write (CONNECTION * conn, const char *buf, + size_t len) { - TUNNEL_DATA* tunnel = (TUNNEL_DATA*) conn->sockdata; + TUNNEL_DATA *tunnel = (TUNNEL_DATA *) conn->sockdata; int rc; rc = write (tunnel->writefd, buf, len); - if (rc == -1) - { + if (rc == -1) { mutt_error (_("Tunnel error talking to %s: %s"), conn->account.host, - strerror (errno)); + strerror (errno)); mutt_sleep (1); }