typedef struct plug_function_table **Plug;
struct socket_function_table {
- Plug (*plug) (Socket s, Plug p);
- /* use a different plug (return the old one) */
- /* if p is NULL, it doesn't change the plug */
- /* but it does return the one it's using */
+ Plug(*plug) (Socket s, Plug p);
+ /* use a different plug (return the old one) */
+ /* if p is NULL, it doesn't change the plug */
+ /* but it does return the one it's using */
void (*close) (Socket s);
void (*write) (Socket s, char *data, int len);
void (*write_oob) (Socket s, char *data, int len);
void (*flush) (Socket s);
- /* ignored by tcp, but vital for ssl */
+ /* ignored by tcp, but vital for ssl */
char *(*socket_error) (Socket s);
};
struct plug_function_table {
int (*closing)
- (Plug p, char *error_msg, int error_code, int calling_back);
- /* error_msg is NULL iff it is not an error (ie it closed normally) */
- /* calling_back != 0 iff there is a Plug function */
- /* currently running (would cure the fixme in try_send()) */
+ (Plug p, char *error_msg, int error_code, int calling_back);
+ /* error_msg is NULL iff it is not an error (ie it closed normally) */
+ /* calling_back != 0 iff there is a Plug function */
+ /* currently running (would cure the fixme in try_send()) */
int (*receive) (Plug p, int urgent, char *data, int len);
- /*
- * - urgent==0. `data' points to `len' bytes of perfectly
- * ordinary data.
- *
- * - urgent==1. `data' points to `len' bytes of data,
- * which were read from before an Urgent pointer.
- *
- * - urgent==2. `data' points to `len' bytes of data,
- * the first of which was the one at the Urgent mark.
- */
+ /*
+ * - urgent==0. `data' points to `len' bytes of perfectly
+ * ordinary data.
+ *
+ * - urgent==1. `data' points to `len' bytes of data,
+ * which were read from before an Urgent pointer.
+ *
+ * - urgent==2. `data' points to `len' bytes of data,
+ * the first of which was the one at the Urgent mark.
+ */
};
SockAddr sk_namelookup(char *host, char **canonicalname);
void sk_addr_free(SockAddr addr);
-Socket sk_new(SockAddr addr, int port, int privport, int oobinline, Plug p);
+Socket sk_new(SockAddr addr, int port, int privport, int oobinline,
+ Plug p);
#define sk_plug(s,p) (((*s)->plug) (s, p))
#define sk_close(s) (((*s)->close) (s))
struct ssl_client_socket_function_table {
struct socket_function_table base;
void (*renegotiate) (SSL_Client_Socket s);
- /* renegotiate the cipher spec */
+ /* renegotiate the cipher spec */
};
struct ssl_client_plug_function_table {
struct plug_function_table base;
int (*refuse_cert) (SSL_Client_Plug p, Certificate cert[]);
- /* do we accept this certificate chain? If not, why not? */
- /* cert[0] is the server's certificate, cert[] is NULL-terminated */
- /* the last certificate may or may not be the root certificate */
- Our_Certificate (*client_cert) (SSL_Client_Plug p);
- /* the server wants us to identify ourselves */
- /* may return NULL if we want anonymity */
+ /* do we accept this certificate chain? If not, why not? */
+ /* cert[0] is the server's certificate, cert[] is NULL-terminated */
+ /* the last certificate may or may not be the root certificate */
+ Our_Certificate(*client_cert) (SSL_Client_Plug p);
+ /* the server wants us to identify ourselves */
+ /* may return NULL if we want anonymity */
};
-SSL_Client_Socket sk_ssl_client_over (
- Socket s, /* pre-existing (tcp) connection */
- SSL_Client_Plug p
-);
+SSL_Client_Socket sk_ssl_client_over(Socket s, /* pre-existing (tcp) connection */
+ SSL_Client_Plug p);
#define sk_renegotiate(s) (((*s)->renegotiate) (s))