30 |
struct short_ip |
struct short_ip |
31 |
{ |
{ |
32 |
u_int8_t ipnum; |
u_int8_t ipnum; |
33 |
u_int8_t len; |
#if __BYTE_ORDER == __LITTLE_ENDIAN |
34 |
|
u_int8_t len :7; |
35 |
|
u_int8_t long_bit :1; |
36 |
|
#elif __BYTE_ORDER == __BIG_ENDIAN |
37 |
|
u_int8_t long_bit :1; |
38 |
|
u_int8_t len :7; |
39 |
|
#else |
40 |
|
# error "Please fix <bits/endian.h>" |
41 |
|
#endif |
42 |
}; |
}; |
43 |
|
|
44 |
struct long_ip |
struct long_ip |
45 |
{ |
{ |
46 |
u_int8_t ipnum; |
u_int8_t ipnum; |
47 |
u_int16_t len; |
#if __BYTE_ORDER == __LITTLE_ENDIAN |
48 |
|
u_int16_t len :15; |
49 |
|
u_int16_t long_bit :1; |
50 |
|
#elif __BYTE_ORDER == __BIG_ENDIAN |
51 |
|
u_int16_t long_bit :1; |
52 |
|
u_int16_t len :15; |
53 |
|
#else |
54 |
|
# error "Please fix <bits/endian.h>" |
55 |
|
#endif |
56 |
} |
} |
57 |
__attribute__ ((packed)); |
__attribute__ ((packed)); |
58 |
|
|
|
#define LONG_IP_BIT 0x80 |
|
|
#define LONG_IP_MASK 0x7fff |
|
59 |
|
|
60 |
extern struct vjcompress vj_comp; |
extern struct vjcompress vj_comp; |
61 |
extern buffer_t *acout, *ifout; |
extern buffer_t *acout, *ifout; |