ekg2  GIT master
jabber_dcc.h
Idź do dokumentacji tego pliku.
1 #ifndef __JABBER_DCC_H
2 #define __JABBER_DCC_H
3 
4 #define JABBER_DEFAULT_DCC_PORT 6000 /* XXX */
5 
6 #include <stdio.h>
7 
8 
11  JABBER_DCC_PROTOCOL_BYTESTREAMS, /* http://www.jabber.org/jeps/jep-0065.html */
12  JABBER_DCC_PROTOCOL_IBB, /* http://www.jabber.org/jeps/jep-0047.html */
13  JABBER_DCC_PROTOCOL_WEBDAV, /* http://www.jabber.org/jeps/jep-0129.html */ /* DON'T IMPLEMENT IT UNTILL IT WILL BE STARNDARD DRAFT */
14 };
15 
21 };
22 
23 /* <JABBER_DCC_PROTOCOL_BYTESTREAMS> */
25  char *jid;
26  char *ip;
27  int port;
28 };
29 
30 typedef struct {
31  int validate; /* should be: JABBER_DCC_PROTOCOL_BYTESTREAMS */
33 
37 
38 /* </JABBER_DCC_PROTOCOL_BYTESTREAMS> */
39 
40 
41 typedef struct {
42  FILE *fd;
43  int sfd;
45 
46  char *req;
47  char *sid;
49  union { /* priv_data data based on protocol */
50  jabber_dcc_bytestream_t *bytestream; /* for JABBER_DCC_PROTOCOL_BYTESTREAMS */
51  void *other; /* XXX */
52  } priv_data;
53 } jabber_dcc_t;
54 
55 
56 dcc_t *jabber_dcc_find(const char *uin, const char *id, const char *sid);
57 void jabber_dcc_close_handler(struct dcc_s *d);
58 
60 
62 extern int jabber_dcc;
63 extern int jabber_dcc_port;
64 extern char *jabber_dcc_ip;
65 extern int jabber_dcc;
66 
67 #endif
char * sid
Definition: jabber_dcc.h:47
Definition: sessions.h:127
FILE * fd
Definition: jabber_dcc.h:42
jabber_dcc_protocol_type_t
Definition: jabber_dcc.h:9
Definition: jabber_dcc.h:20
Definition: jabber_dcc.h:17
Definition: jabber_dcc.h:11
char * jabber_dcc_ip
Definition: jabber_dcc.c:5
char * ip
Definition: jabber_dcc.h:26
char * jid
Definition: jabber_dcc.h:25
Definition: jabber_dcc.h:19
Definition: jabber_dcc.h:13
int jabber_dcc_port
Definition: jabber_dcc.c:4
Definition: jabber_dcc.h:18
list_t streamlist
Definition: jabber_dcc.h:35
void * other
Definition: jabber_dcc.h:51
struct jabber_streamhost_item * streamhost
Definition: jabber_dcc.h:34
jabber_dcc_bytestream_t * bytestream
Definition: jabber_dcc.h:50
session_t * session
Definition: jabber_dcc.h:44
Definition: jabber_dcc.h:30
Definition: jabber_dcc.h:12
jabber_socks5_step_t
Definition: jabber_dcc.h:16
int jabber_dcc_postinit(void *data, va_list ap)
Definition: jabber_dcc.c:387
Definition: jabber_dcc.h:10
int port
Definition: jabber_dcc.h:27
int validate
Definition: jabber_dcc.h:31
Definition: protocol.h:115
Definition: jabber_dcc.h:24
Definition: jabber_dcc.h:41
int jabber_dcc
Definition: jabber_dcc.h:65
QUERY(jabber_dcc_postinit)
Definition: ekg_hash_benchmark.c:14
dcc_t * jabber_dcc_find(const char *uin, const char *id, const char *sid)
Definition: jabber_dcc.c:370
char * req
Definition: jabber_dcc.h:46
int sfd
Definition: jabber_dcc.h:43
int jabber_dcc_handle_recv(int type, int fd, watch_type_t watch, void *data)
Definition: jabber_dcc.c:21
WATCHER(jabber_dcc_handle_recv)
void jabber_dcc_close_handler(struct dcc_s *d)
Definition: jabber_dcc.c:333