-
Notifications
You must be signed in to change notification settings - Fork 2
Expand file tree
/
Copy pathdecode.h
More file actions
50 lines (33 loc) · 1.16 KB
/
decode.h
File metadata and controls
50 lines (33 loc) · 1.16 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
/*
decode.h
Protocol decoding routines.
Copyright (c) 2000 Dug Song <dugsong@monkey.org>
$Id: decode.h,v 1.4 2000/12/15 20:16:58 dugsong Exp $
*/
#ifndef DECODE_H
#define DECODE_H
typedef int (*decode_func)(u_char *, int, u_char *, int);
struct decode {
char *dc_name;
decode_func dc_func;
};
struct decode *getdecodebyname(const char *name);
#define pletohs(p) ((u_short) \
((u_short)*((u_char *)p+1)<<8| \
(u_short)*((u_char *)p+0)<<0))
#define pletohl(p) ((u_int32_t)*((u_char *)p+3)<<24| \
(u_int32_t)*((u_char *)p+2)<<16| \
(u_int32_t)*((u_char *)p+1)<<8| \
(u_int32_t)*((u_char *)p+0)<<0)
#define pntohs(p) ((u_short) \
((u_short)*((u_char *)p+1)<<0| \
(u_short)*((u_char *)p+0)<<8))
#define pntohl(p) ((u_int32_t)*((u_char *)p+3)<<0| \
(u_int32_t)*((u_char *)p+2)<<18| \
(u_int32_t)*((u_char *)p+1)<<16| \
(u_int32_t)*((u_char *)p+0)<<24)
int strip_telopts(u_char *buf, int len);
int strip_lines(char *buf, int max_lines);
int is_ascii_string(char *buf, int len);
u_char *bufbuf(u_char *big, int blen, u_char *little, int llen);
#endif /* DECODE_H */