25
|
1 #ifndef __CONNWRAP_H__ |
|
2 #define __CONNWRAP_H__ |
|
3 |
69
|
4 #if HAVE_CONFIG_H |
|
5 # include <config.h> |
|
6 #endif |
|
7 |
25
|
8 #ifdef __cplusplus |
|
9 extern "C" { |
|
10 #endif |
|
11 |
|
12 #include <sys/types.h> |
|
13 #include <sys/socket.h> |
|
14 |
|
15 int cw_connect(int sockfd, const struct sockaddr *serv_addr, int addrlen, int ssl); |
|
16 |
|
17 #define CW_CONNECT_STARTED 0x1 |
|
18 #define CW_CONNECT_SSL 0x2 |
|
19 #define CW_CONNECT_WANT_READ 0x4 |
|
20 #define CW_CONNECT_WANT_WRITE 0x8 |
|
21 #define CW_CONNECT_WANT_SOMETHING 0xC |
|
22 #define CW_CONNECT_BLOCKING 0x10 |
|
23 |
|
24 /* non-blocking socket |
|
25 state should be initialized with 0, subsequent calls should keep the modified state (state is a bitwise OR between CW_CONNECT_XXX) |
|
26 returns 0 for OK, or if it wants subsequent calls |
|
27 -1 for a fatal error |
|
28 */ |
|
29 int cw_nb_connect(int sockfd, const struct sockaddr *serv_addr, int addrlen, int ssl, int *state); |
|
30 int cw_accept(int s, struct sockaddr *addr, int *addrlen, int ssl); |
|
31 |
|
32 int cw_write(int fd, const void *buf, int count, int ssl); |
|
33 int cw_read(int fd, void *buf, int count, int ssl); |
|
34 |
235
|
35 void cw_close(int fd); |
25
|
36 |
|
37 void cw_setproxy(const char *aproxyhost, int aproxyport, const char *aproxyuser, const char *aproxypass); |
|
38 void cw_setbind(const char *abindaddr); |
|
39 |
|
40 char *cw_base64_encode(const char *in); |
|
41 |
|
42 #ifdef __cplusplus |
|
43 } |
|
44 #endif |
|
45 |
|
46 #endif |