ekg2
Strona główna
Dodatkowe strony
Moduły
Struktury Danych
Pliki
Lista plików
Globalne
All
Struktury Danych
Pliki
Funkcje
Zmienne
Definicje typów
Wyliczenia
Wartości wyliczeń
Definicje
Grupay
Strony
plugins
jabber
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 <
ekg/plugins.h
>
7
8
#include <stdio.h>
9
10
#include <
ekg/dynstuff.h
>
11
#include <
ekg/protocol.h
>
12
13
enum
jabber_dcc_protocol_type_t
{
14
JABBER_DCC_PROTOCOL_UNKNOWN
= 0,
15
JABBER_DCC_PROTOCOL_BYTESTREAMS
,
/* http://www.jabber.org/jeps/jep-0065.html */
16
JABBER_DCC_PROTOCOL_IBB
,
/* http://www.jabber.org/jeps/jep-0047.html */
17
JABBER_DCC_PROTOCOL_WEBDAV
,
/* http://www.jabber.org/jeps/jep-0129.html */
/* DON'T IMPLEMENT IT UNTILL IT WILL BE STARNDARD DRAFT */
18
};
19
20
enum
jabber_socks5_step_t
{
21
SOCKS5_UNKNOWN
= 0,
22
SOCKS5_CONNECT
,
23
SOCKS5_AUTH
,
24
SOCKS5_DATA
,
25
};
26
27
/* <JABBER_DCC_PROTOCOL_BYTESTREAMS> */
28
struct
jabber_streamhost_item
{
29
char
*
jid
;
30
char
*
ip
;
31
int
port
;
32
};
33
34
typedef
struct
{
35
int
validate
;
/* should be: JABBER_DCC_PROTOCOL_BYTESTREAMS */
36
enum
jabber_socks5_step_t
step
;
37
38
struct
jabber_streamhost_item
*
streamhost
;
39
list_t
streamlist
;
40
}
jabber_dcc_bytestream_t
;
41
42
/* </JABBER_DCC_PROTOCOL_BYTESTREAMS> */
43
44
45
typedef
struct
{
46
FILE *
fd
;
47
int
sfd
;
48
session_t
*
session
;
49
50
char
*
req
;
51
char
*
sid
;
52
enum
jabber_dcc_protocol_type_t
protocol
;
53
union
{
/* priv_data data based on protocol */
54
jabber_dcc_bytestream_t
*
bytestream
;
/* for JABBER_DCC_PROTOCOL_BYTESTREAMS */
55
void
*
other
;
/* XXX */
56
} priv_data;
57
}
jabber_dcc_t
;
58
59
60
dcc_t
*
jabber_dcc_find
(
const
char
*uin,
const
char
*
id
,
const
char
*sid);
61
void
jabber_dcc_close_handler
(
struct
dcc_s
*d);
62
63
WATCHER
(
jabber_dcc_handle_recv
);
64
65
QUERY
(
jabber_dcc_postinit
);
66
extern
int
jabber_dcc
;
67
extern
int
jabber_dcc_port
;
68
extern
char
*
jabber_dcc_ip
;
69
extern
int
jabber_dcc
;
70
71
#endif
Wygenerowano Pt, 21 mar 2014 17:50:26 dla ekg2 programem
1.8.1.2