[NETFILTER]: h323 annotations
Signed-off-by: Al Viro <viro@zeniv.linux.org.uk> Signed-off-by: David S. Miller <davem@davemloft.net>
This commit is contained in:
parent
6a19d61472
commit
d4263cde88
3 changed files with 53 additions and 53 deletions
|
@ -30,7 +30,7 @@ struct ip_ct_h323_master {
|
||||||
struct ip_conntrack_expect;
|
struct ip_conntrack_expect;
|
||||||
|
|
||||||
extern int get_h225_addr(unsigned char *data, TransportAddress * addr,
|
extern int get_h225_addr(unsigned char *data, TransportAddress * addr,
|
||||||
u_int32_t * ip, u_int16_t * port);
|
__be32 * ip, u_int16_t * port);
|
||||||
extern void ip_conntrack_h245_expect(struct ip_conntrack *new,
|
extern void ip_conntrack_h245_expect(struct ip_conntrack *new,
|
||||||
struct ip_conntrack_expect *this);
|
struct ip_conntrack_expect *this);
|
||||||
extern void ip_conntrack_q931_expect(struct ip_conntrack *new,
|
extern void ip_conntrack_q931_expect(struct ip_conntrack *new,
|
||||||
|
@ -38,11 +38,11 @@ extern void ip_conntrack_q931_expect(struct ip_conntrack *new,
|
||||||
extern int (*set_h245_addr_hook) (struct sk_buff ** pskb,
|
extern int (*set_h245_addr_hook) (struct sk_buff ** pskb,
|
||||||
unsigned char **data, int dataoff,
|
unsigned char **data, int dataoff,
|
||||||
H245_TransportAddress * addr,
|
H245_TransportAddress * addr,
|
||||||
u_int32_t ip, u_int16_t port);
|
__be32 ip, u_int16_t port);
|
||||||
extern int (*set_h225_addr_hook) (struct sk_buff ** pskb,
|
extern int (*set_h225_addr_hook) (struct sk_buff ** pskb,
|
||||||
unsigned char **data, int dataoff,
|
unsigned char **data, int dataoff,
|
||||||
TransportAddress * addr,
|
TransportAddress * addr,
|
||||||
u_int32_t ip, u_int16_t port);
|
__be32 ip, u_int16_t port);
|
||||||
extern int (*set_sig_addr_hook) (struct sk_buff ** pskb,
|
extern int (*set_sig_addr_hook) (struct sk_buff ** pskb,
|
||||||
struct ip_conntrack * ct,
|
struct ip_conntrack * ct,
|
||||||
enum ip_conntrack_info ctinfo,
|
enum ip_conntrack_info ctinfo,
|
||||||
|
|
|
@ -49,11 +49,11 @@ MODULE_PARM_DESC(callforward_filter, "only create call forwarding expectations "
|
||||||
int (*set_h245_addr_hook) (struct sk_buff ** pskb,
|
int (*set_h245_addr_hook) (struct sk_buff ** pskb,
|
||||||
unsigned char **data, int dataoff,
|
unsigned char **data, int dataoff,
|
||||||
H245_TransportAddress * addr,
|
H245_TransportAddress * addr,
|
||||||
u_int32_t ip, u_int16_t port);
|
__be32 ip, u_int16_t port);
|
||||||
int (*set_h225_addr_hook) (struct sk_buff ** pskb,
|
int (*set_h225_addr_hook) (struct sk_buff ** pskb,
|
||||||
unsigned char **data, int dataoff,
|
unsigned char **data, int dataoff,
|
||||||
TransportAddress * addr,
|
TransportAddress * addr,
|
||||||
u_int32_t ip, u_int16_t port);
|
__be32 ip, u_int16_t port);
|
||||||
int (*set_sig_addr_hook) (struct sk_buff ** pskb,
|
int (*set_sig_addr_hook) (struct sk_buff ** pskb,
|
||||||
struct ip_conntrack * ct,
|
struct ip_conntrack * ct,
|
||||||
enum ip_conntrack_info ctinfo,
|
enum ip_conntrack_info ctinfo,
|
||||||
|
@ -209,7 +209,7 @@ static int get_tpkt_data(struct sk_buff **pskb, struct ip_conntrack *ct,
|
||||||
|
|
||||||
/****************************************************************************/
|
/****************************************************************************/
|
||||||
static int get_h245_addr(unsigned char *data, H245_TransportAddress * addr,
|
static int get_h245_addr(unsigned char *data, H245_TransportAddress * addr,
|
||||||
u_int32_t * ip, u_int16_t * port)
|
__be32 * ip, u_int16_t * port)
|
||||||
{
|
{
|
||||||
unsigned char *p;
|
unsigned char *p;
|
||||||
|
|
||||||
|
@ -232,7 +232,7 @@ static int expect_rtp_rtcp(struct sk_buff **pskb, struct ip_conntrack *ct,
|
||||||
{
|
{
|
||||||
int dir = CTINFO2DIR(ctinfo);
|
int dir = CTINFO2DIR(ctinfo);
|
||||||
int ret = 0;
|
int ret = 0;
|
||||||
u_int32_t ip;
|
__be32 ip;
|
||||||
u_int16_t port;
|
u_int16_t port;
|
||||||
u_int16_t rtp_port;
|
u_int16_t rtp_port;
|
||||||
struct ip_conntrack_expect *rtp_exp;
|
struct ip_conntrack_expect *rtp_exp;
|
||||||
|
@ -254,10 +254,10 @@ static int expect_rtp_rtcp(struct sk_buff **pskb, struct ip_conntrack *ct,
|
||||||
rtp_exp->tuple.dst.ip = ct->tuplehash[!dir].tuple.dst.ip;
|
rtp_exp->tuple.dst.ip = ct->tuplehash[!dir].tuple.dst.ip;
|
||||||
rtp_exp->tuple.dst.u.udp.port = htons(rtp_port);
|
rtp_exp->tuple.dst.u.udp.port = htons(rtp_port);
|
||||||
rtp_exp->tuple.dst.protonum = IPPROTO_UDP;
|
rtp_exp->tuple.dst.protonum = IPPROTO_UDP;
|
||||||
rtp_exp->mask.src.ip = 0xFFFFFFFF;
|
rtp_exp->mask.src.ip = htonl(0xFFFFFFFF);
|
||||||
rtp_exp->mask.src.u.udp.port = 0;
|
rtp_exp->mask.src.u.udp.port = 0;
|
||||||
rtp_exp->mask.dst.ip = 0xFFFFFFFF;
|
rtp_exp->mask.dst.ip = htonl(0xFFFFFFFF);
|
||||||
rtp_exp->mask.dst.u.udp.port = 0xFFFF;
|
rtp_exp->mask.dst.u.udp.port = htons(0xFFFF);
|
||||||
rtp_exp->mask.dst.protonum = 0xFF;
|
rtp_exp->mask.dst.protonum = 0xFF;
|
||||||
rtp_exp->flags = 0;
|
rtp_exp->flags = 0;
|
||||||
|
|
||||||
|
@ -271,10 +271,10 @@ static int expect_rtp_rtcp(struct sk_buff **pskb, struct ip_conntrack *ct,
|
||||||
rtcp_exp->tuple.dst.ip = ct->tuplehash[!dir].tuple.dst.ip;
|
rtcp_exp->tuple.dst.ip = ct->tuplehash[!dir].tuple.dst.ip;
|
||||||
rtcp_exp->tuple.dst.u.udp.port = htons(rtp_port + 1);
|
rtcp_exp->tuple.dst.u.udp.port = htons(rtp_port + 1);
|
||||||
rtcp_exp->tuple.dst.protonum = IPPROTO_UDP;
|
rtcp_exp->tuple.dst.protonum = IPPROTO_UDP;
|
||||||
rtcp_exp->mask.src.ip = 0xFFFFFFFF;
|
rtcp_exp->mask.src.ip = htonl(0xFFFFFFFF);
|
||||||
rtcp_exp->mask.src.u.udp.port = 0;
|
rtcp_exp->mask.src.u.udp.port = 0;
|
||||||
rtcp_exp->mask.dst.ip = 0xFFFFFFFF;
|
rtcp_exp->mask.dst.ip = htonl(0xFFFFFFFF);
|
||||||
rtcp_exp->mask.dst.u.udp.port = 0xFFFF;
|
rtcp_exp->mask.dst.u.udp.port = htons(0xFFFF);
|
||||||
rtcp_exp->mask.dst.protonum = 0xFF;
|
rtcp_exp->mask.dst.protonum = 0xFF;
|
||||||
rtcp_exp->flags = 0;
|
rtcp_exp->flags = 0;
|
||||||
|
|
||||||
|
@ -325,7 +325,7 @@ static int expect_t120(struct sk_buff **pskb,
|
||||||
{
|
{
|
||||||
int dir = CTINFO2DIR(ctinfo);
|
int dir = CTINFO2DIR(ctinfo);
|
||||||
int ret = 0;
|
int ret = 0;
|
||||||
u_int32_t ip;
|
__be32 ip;
|
||||||
u_int16_t port;
|
u_int16_t port;
|
||||||
struct ip_conntrack_expect *exp = NULL;
|
struct ip_conntrack_expect *exp = NULL;
|
||||||
|
|
||||||
|
@ -342,10 +342,10 @@ static int expect_t120(struct sk_buff **pskb,
|
||||||
exp->tuple.dst.ip = ct->tuplehash[!dir].tuple.dst.ip;
|
exp->tuple.dst.ip = ct->tuplehash[!dir].tuple.dst.ip;
|
||||||
exp->tuple.dst.u.tcp.port = htons(port);
|
exp->tuple.dst.u.tcp.port = htons(port);
|
||||||
exp->tuple.dst.protonum = IPPROTO_TCP;
|
exp->tuple.dst.protonum = IPPROTO_TCP;
|
||||||
exp->mask.src.ip = 0xFFFFFFFF;
|
exp->mask.src.ip = htonl(0xFFFFFFFF);
|
||||||
exp->mask.src.u.tcp.port = 0;
|
exp->mask.src.u.tcp.port = 0;
|
||||||
exp->mask.dst.ip = 0xFFFFFFFF;
|
exp->mask.dst.ip = htonl(0xFFFFFFFF);
|
||||||
exp->mask.dst.u.tcp.port = 0xFFFF;
|
exp->mask.dst.u.tcp.port = htons(0xFFFF);
|
||||||
exp->mask.dst.protonum = 0xFF;
|
exp->mask.dst.protonum = 0xFF;
|
||||||
exp->flags = IP_CT_EXPECT_PERMANENT; /* Accept multiple channels */
|
exp->flags = IP_CT_EXPECT_PERMANENT; /* Accept multiple channels */
|
||||||
|
|
||||||
|
@ -626,7 +626,7 @@ void ip_conntrack_h245_expect(struct ip_conntrack *new,
|
||||||
|
|
||||||
/****************************************************************************/
|
/****************************************************************************/
|
||||||
int get_h225_addr(unsigned char *data, TransportAddress * addr,
|
int get_h225_addr(unsigned char *data, TransportAddress * addr,
|
||||||
u_int32_t * ip, u_int16_t * port)
|
__be32 * ip, u_int16_t * port)
|
||||||
{
|
{
|
||||||
unsigned char *p;
|
unsigned char *p;
|
||||||
|
|
||||||
|
@ -648,7 +648,7 @@ static int expect_h245(struct sk_buff **pskb, struct ip_conntrack *ct,
|
||||||
{
|
{
|
||||||
int dir = CTINFO2DIR(ctinfo);
|
int dir = CTINFO2DIR(ctinfo);
|
||||||
int ret = 0;
|
int ret = 0;
|
||||||
u_int32_t ip;
|
__be32 ip;
|
||||||
u_int16_t port;
|
u_int16_t port;
|
||||||
struct ip_conntrack_expect *exp = NULL;
|
struct ip_conntrack_expect *exp = NULL;
|
||||||
|
|
||||||
|
@ -665,10 +665,10 @@ static int expect_h245(struct sk_buff **pskb, struct ip_conntrack *ct,
|
||||||
exp->tuple.dst.ip = ct->tuplehash[!dir].tuple.dst.ip;
|
exp->tuple.dst.ip = ct->tuplehash[!dir].tuple.dst.ip;
|
||||||
exp->tuple.dst.u.tcp.port = htons(port);
|
exp->tuple.dst.u.tcp.port = htons(port);
|
||||||
exp->tuple.dst.protonum = IPPROTO_TCP;
|
exp->tuple.dst.protonum = IPPROTO_TCP;
|
||||||
exp->mask.src.ip = 0xFFFFFFFF;
|
exp->mask.src.ip = htonl(0xFFFFFFFF);
|
||||||
exp->mask.src.u.tcp.port = 0;
|
exp->mask.src.u.tcp.port = 0;
|
||||||
exp->mask.dst.ip = 0xFFFFFFFF;
|
exp->mask.dst.ip = htonl(0xFFFFFFFF);
|
||||||
exp->mask.dst.u.tcp.port = 0xFFFF;
|
exp->mask.dst.u.tcp.port = htons(0xFFFF);
|
||||||
exp->mask.dst.protonum = 0xFF;
|
exp->mask.dst.protonum = 0xFF;
|
||||||
exp->flags = 0;
|
exp->flags = 0;
|
||||||
|
|
||||||
|
@ -709,7 +709,7 @@ static int expect_callforwarding(struct sk_buff **pskb,
|
||||||
{
|
{
|
||||||
int dir = CTINFO2DIR(ctinfo);
|
int dir = CTINFO2DIR(ctinfo);
|
||||||
int ret = 0;
|
int ret = 0;
|
||||||
u_int32_t ip;
|
__be32 ip;
|
||||||
u_int16_t port;
|
u_int16_t port;
|
||||||
struct ip_conntrack_expect *exp = NULL;
|
struct ip_conntrack_expect *exp = NULL;
|
||||||
|
|
||||||
|
@ -751,10 +751,10 @@ static int expect_callforwarding(struct sk_buff **pskb,
|
||||||
exp->tuple.dst.ip = ip;
|
exp->tuple.dst.ip = ip;
|
||||||
exp->tuple.dst.u.tcp.port = htons(port);
|
exp->tuple.dst.u.tcp.port = htons(port);
|
||||||
exp->tuple.dst.protonum = IPPROTO_TCP;
|
exp->tuple.dst.protonum = IPPROTO_TCP;
|
||||||
exp->mask.src.ip = 0xFFFFFFFF;
|
exp->mask.src.ip = htonl(0xFFFFFFFF);
|
||||||
exp->mask.src.u.tcp.port = 0;
|
exp->mask.src.u.tcp.port = 0;
|
||||||
exp->mask.dst.ip = 0xFFFFFFFF;
|
exp->mask.dst.ip = htonl(0xFFFFFFFF);
|
||||||
exp->mask.dst.u.tcp.port = 0xFFFF;
|
exp->mask.dst.u.tcp.port = htons(0xFFFF);
|
||||||
exp->mask.dst.protonum = 0xFF;
|
exp->mask.dst.protonum = 0xFF;
|
||||||
exp->flags = 0;
|
exp->flags = 0;
|
||||||
|
|
||||||
|
@ -791,7 +791,7 @@ static int process_setup(struct sk_buff **pskb, struct ip_conntrack *ct,
|
||||||
int dir = CTINFO2DIR(ctinfo);
|
int dir = CTINFO2DIR(ctinfo);
|
||||||
int ret;
|
int ret;
|
||||||
int i;
|
int i;
|
||||||
u_int32_t ip;
|
__be32 ip;
|
||||||
u_int16_t port;
|
u_int16_t port;
|
||||||
|
|
||||||
DEBUGP("ip_ct_q931: Setup\n");
|
DEBUGP("ip_ct_q931: Setup\n");
|
||||||
|
@ -1188,7 +1188,7 @@ static unsigned char *get_udp_data(struct sk_buff **pskb, int *datalen)
|
||||||
|
|
||||||
/****************************************************************************/
|
/****************************************************************************/
|
||||||
static struct ip_conntrack_expect *find_expect(struct ip_conntrack *ct,
|
static struct ip_conntrack_expect *find_expect(struct ip_conntrack *ct,
|
||||||
u_int32_t ip, u_int16_t port)
|
__be32 ip, u_int16_t port)
|
||||||
{
|
{
|
||||||
struct ip_conntrack_expect *exp;
|
struct ip_conntrack_expect *exp;
|
||||||
struct ip_conntrack_tuple tuple;
|
struct ip_conntrack_tuple tuple;
|
||||||
|
@ -1228,7 +1228,7 @@ static int expect_q931(struct sk_buff **pskb, struct ip_conntrack *ct,
|
||||||
int dir = CTINFO2DIR(ctinfo);
|
int dir = CTINFO2DIR(ctinfo);
|
||||||
int ret = 0;
|
int ret = 0;
|
||||||
int i;
|
int i;
|
||||||
u_int32_t ip;
|
__be32 ip;
|
||||||
u_int16_t port;
|
u_int16_t port;
|
||||||
struct ip_conntrack_expect *exp;
|
struct ip_conntrack_expect *exp;
|
||||||
|
|
||||||
|
@ -1251,10 +1251,10 @@ static int expect_q931(struct sk_buff **pskb, struct ip_conntrack *ct,
|
||||||
exp->tuple.dst.ip = ct->tuplehash[!dir].tuple.dst.ip;
|
exp->tuple.dst.ip = ct->tuplehash[!dir].tuple.dst.ip;
|
||||||
exp->tuple.dst.u.tcp.port = htons(port);
|
exp->tuple.dst.u.tcp.port = htons(port);
|
||||||
exp->tuple.dst.protonum = IPPROTO_TCP;
|
exp->tuple.dst.protonum = IPPROTO_TCP;
|
||||||
exp->mask.src.ip = gkrouted_only ? 0xFFFFFFFF : 0;
|
exp->mask.src.ip = gkrouted_only ? htonl(0xFFFFFFFF) : 0;
|
||||||
exp->mask.src.u.tcp.port = 0;
|
exp->mask.src.u.tcp.port = 0;
|
||||||
exp->mask.dst.ip = 0xFFFFFFFF;
|
exp->mask.dst.ip = htonl(0xFFFFFFFF);
|
||||||
exp->mask.dst.u.tcp.port = 0xFFFF;
|
exp->mask.dst.u.tcp.port = htons(0xFFFF);
|
||||||
exp->mask.dst.protonum = 0xFF;
|
exp->mask.dst.protonum = 0xFF;
|
||||||
exp->flags = IP_CT_EXPECT_PERMANENT; /* Accept multiple calls */
|
exp->flags = IP_CT_EXPECT_PERMANENT; /* Accept multiple calls */
|
||||||
|
|
||||||
|
@ -1307,7 +1307,7 @@ static int process_gcf(struct sk_buff **pskb, struct ip_conntrack *ct,
|
||||||
{
|
{
|
||||||
int dir = CTINFO2DIR(ctinfo);
|
int dir = CTINFO2DIR(ctinfo);
|
||||||
int ret = 0;
|
int ret = 0;
|
||||||
u_int32_t ip;
|
__be32 ip;
|
||||||
u_int16_t port;
|
u_int16_t port;
|
||||||
struct ip_conntrack_expect *exp;
|
struct ip_conntrack_expect *exp;
|
||||||
|
|
||||||
|
@ -1333,10 +1333,10 @@ static int process_gcf(struct sk_buff **pskb, struct ip_conntrack *ct,
|
||||||
exp->tuple.dst.ip = ip;
|
exp->tuple.dst.ip = ip;
|
||||||
exp->tuple.dst.u.tcp.port = htons(port);
|
exp->tuple.dst.u.tcp.port = htons(port);
|
||||||
exp->tuple.dst.protonum = IPPROTO_UDP;
|
exp->tuple.dst.protonum = IPPROTO_UDP;
|
||||||
exp->mask.src.ip = 0xFFFFFFFF;
|
exp->mask.src.ip = htonl(0xFFFFFFFF);
|
||||||
exp->mask.src.u.tcp.port = 0;
|
exp->mask.src.u.tcp.port = 0;
|
||||||
exp->mask.dst.ip = 0xFFFFFFFF;
|
exp->mask.dst.ip = htonl(0xFFFFFFFF);
|
||||||
exp->mask.dst.u.tcp.port = 0xFFFF;
|
exp->mask.dst.u.tcp.port = htons(0xFFFF);
|
||||||
exp->mask.dst.protonum = 0xFF;
|
exp->mask.dst.protonum = 0xFF;
|
||||||
exp->flags = 0;
|
exp->flags = 0;
|
||||||
exp->expectfn = ip_conntrack_ras_expect;
|
exp->expectfn = ip_conntrack_ras_expect;
|
||||||
|
@ -1477,7 +1477,7 @@ static int process_arq(struct sk_buff **pskb, struct ip_conntrack *ct,
|
||||||
{
|
{
|
||||||
struct ip_ct_h323_master *info = &ct->help.ct_h323_info;
|
struct ip_ct_h323_master *info = &ct->help.ct_h323_info;
|
||||||
int dir = CTINFO2DIR(ctinfo);
|
int dir = CTINFO2DIR(ctinfo);
|
||||||
u_int32_t ip;
|
__be32 ip;
|
||||||
u_int16_t port;
|
u_int16_t port;
|
||||||
|
|
||||||
DEBUGP("ip_ct_ras: ARQ\n");
|
DEBUGP("ip_ct_ras: ARQ\n");
|
||||||
|
@ -1513,7 +1513,7 @@ static int process_acf(struct sk_buff **pskb, struct ip_conntrack *ct,
|
||||||
{
|
{
|
||||||
int dir = CTINFO2DIR(ctinfo);
|
int dir = CTINFO2DIR(ctinfo);
|
||||||
int ret = 0;
|
int ret = 0;
|
||||||
u_int32_t ip;
|
__be32 ip;
|
||||||
u_int16_t port;
|
u_int16_t port;
|
||||||
struct ip_conntrack_expect *exp;
|
struct ip_conntrack_expect *exp;
|
||||||
|
|
||||||
|
@ -1538,10 +1538,10 @@ static int process_acf(struct sk_buff **pskb, struct ip_conntrack *ct,
|
||||||
exp->tuple.dst.ip = ip;
|
exp->tuple.dst.ip = ip;
|
||||||
exp->tuple.dst.u.tcp.port = htons(port);
|
exp->tuple.dst.u.tcp.port = htons(port);
|
||||||
exp->tuple.dst.protonum = IPPROTO_TCP;
|
exp->tuple.dst.protonum = IPPROTO_TCP;
|
||||||
exp->mask.src.ip = 0xFFFFFFFF;
|
exp->mask.src.ip = htonl(0xFFFFFFFF);
|
||||||
exp->mask.src.u.tcp.port = 0;
|
exp->mask.src.u.tcp.port = 0;
|
||||||
exp->mask.dst.ip = 0xFFFFFFFF;
|
exp->mask.dst.ip = htonl(0xFFFFFFFF);
|
||||||
exp->mask.dst.u.tcp.port = 0xFFFF;
|
exp->mask.dst.u.tcp.port = htons(0xFFFF);
|
||||||
exp->mask.dst.protonum = 0xFF;
|
exp->mask.dst.protonum = 0xFF;
|
||||||
exp->flags = IP_CT_EXPECT_PERMANENT;
|
exp->flags = IP_CT_EXPECT_PERMANENT;
|
||||||
exp->expectfn = ip_conntrack_q931_expect;
|
exp->expectfn = ip_conntrack_q931_expect;
|
||||||
|
@ -1581,7 +1581,7 @@ static int process_lcf(struct sk_buff **pskb, struct ip_conntrack *ct,
|
||||||
{
|
{
|
||||||
int dir = CTINFO2DIR(ctinfo);
|
int dir = CTINFO2DIR(ctinfo);
|
||||||
int ret = 0;
|
int ret = 0;
|
||||||
u_int32_t ip;
|
__be32 ip;
|
||||||
u_int16_t port;
|
u_int16_t port;
|
||||||
struct ip_conntrack_expect *exp = NULL;
|
struct ip_conntrack_expect *exp = NULL;
|
||||||
|
|
||||||
|
@ -1598,10 +1598,10 @@ static int process_lcf(struct sk_buff **pskb, struct ip_conntrack *ct,
|
||||||
exp->tuple.dst.ip = ip;
|
exp->tuple.dst.ip = ip;
|
||||||
exp->tuple.dst.u.tcp.port = htons(port);
|
exp->tuple.dst.u.tcp.port = htons(port);
|
||||||
exp->tuple.dst.protonum = IPPROTO_TCP;
|
exp->tuple.dst.protonum = IPPROTO_TCP;
|
||||||
exp->mask.src.ip = 0xFFFFFFFF;
|
exp->mask.src.ip = htonl(0xFFFFFFFF);
|
||||||
exp->mask.src.u.tcp.port = 0;
|
exp->mask.src.u.tcp.port = 0;
|
||||||
exp->mask.dst.ip = 0xFFFFFFFF;
|
exp->mask.dst.ip = htonl(0xFFFFFFFF);
|
||||||
exp->mask.dst.u.tcp.port = 0xFFFF;
|
exp->mask.dst.u.tcp.port = htons(0xFFFF);
|
||||||
exp->mask.dst.protonum = 0xFF;
|
exp->mask.dst.protonum = 0xFF;
|
||||||
exp->flags = IP_CT_EXPECT_PERMANENT;
|
exp->flags = IP_CT_EXPECT_PERMANENT;
|
||||||
exp->expectfn = ip_conntrack_q931_expect;
|
exp->expectfn = ip_conntrack_q931_expect;
|
||||||
|
|
|
@ -32,13 +32,13 @@
|
||||||
/****************************************************************************/
|
/****************************************************************************/
|
||||||
static int set_addr(struct sk_buff **pskb,
|
static int set_addr(struct sk_buff **pskb,
|
||||||
unsigned char **data, int dataoff,
|
unsigned char **data, int dataoff,
|
||||||
unsigned int addroff, u_int32_t ip, u_int16_t port)
|
unsigned int addroff, __be32 ip, u_int16_t port)
|
||||||
{
|
{
|
||||||
enum ip_conntrack_info ctinfo;
|
enum ip_conntrack_info ctinfo;
|
||||||
struct ip_conntrack *ct = ip_conntrack_get(*pskb, &ctinfo);
|
struct ip_conntrack *ct = ip_conntrack_get(*pskb, &ctinfo);
|
||||||
struct {
|
struct {
|
||||||
u_int32_t ip;
|
__be32 ip;
|
||||||
u_int16_t port;
|
__be16 port;
|
||||||
} __attribute__ ((__packed__)) buf;
|
} __attribute__ ((__packed__)) buf;
|
||||||
struct tcphdr _tcph, *th;
|
struct tcphdr _tcph, *th;
|
||||||
|
|
||||||
|
@ -86,7 +86,7 @@ static int set_addr(struct sk_buff **pskb,
|
||||||
static int set_h225_addr(struct sk_buff **pskb,
|
static int set_h225_addr(struct sk_buff **pskb,
|
||||||
unsigned char **data, int dataoff,
|
unsigned char **data, int dataoff,
|
||||||
TransportAddress * addr,
|
TransportAddress * addr,
|
||||||
u_int32_t ip, u_int16_t port)
|
__be32 ip, u_int16_t port)
|
||||||
{
|
{
|
||||||
return set_addr(pskb, data, dataoff, addr->ipAddress.ip, ip, port);
|
return set_addr(pskb, data, dataoff, addr->ipAddress.ip, ip, port);
|
||||||
}
|
}
|
||||||
|
@ -95,7 +95,7 @@ static int set_h225_addr(struct sk_buff **pskb,
|
||||||
static int set_h245_addr(struct sk_buff **pskb,
|
static int set_h245_addr(struct sk_buff **pskb,
|
||||||
unsigned char **data, int dataoff,
|
unsigned char **data, int dataoff,
|
||||||
H245_TransportAddress * addr,
|
H245_TransportAddress * addr,
|
||||||
u_int32_t ip, u_int16_t port)
|
__be32 ip, u_int16_t port)
|
||||||
{
|
{
|
||||||
return set_addr(pskb, data, dataoff,
|
return set_addr(pskb, data, dataoff,
|
||||||
addr->unicastAddress.iPAddress.network, ip, port);
|
addr->unicastAddress.iPAddress.network, ip, port);
|
||||||
|
@ -110,7 +110,7 @@ static int set_sig_addr(struct sk_buff **pskb, struct ip_conntrack *ct,
|
||||||
struct ip_ct_h323_master *info = &ct->help.ct_h323_info;
|
struct ip_ct_h323_master *info = &ct->help.ct_h323_info;
|
||||||
int dir = CTINFO2DIR(ctinfo);
|
int dir = CTINFO2DIR(ctinfo);
|
||||||
int i;
|
int i;
|
||||||
u_int32_t ip;
|
__be32 ip;
|
||||||
u_int16_t port;
|
u_int16_t port;
|
||||||
|
|
||||||
for (i = 0; i < count; i++) {
|
for (i = 0; i < count; i++) {
|
||||||
|
@ -164,7 +164,7 @@ static int set_ras_addr(struct sk_buff **pskb, struct ip_conntrack *ct,
|
||||||
{
|
{
|
||||||
int dir = CTINFO2DIR(ctinfo);
|
int dir = CTINFO2DIR(ctinfo);
|
||||||
int i;
|
int i;
|
||||||
u_int32_t ip;
|
__be32 ip;
|
||||||
u_int16_t port;
|
u_int16_t port;
|
||||||
|
|
||||||
for (i = 0; i < count; i++) {
|
for (i = 0; i < count; i++) {
|
||||||
|
@ -433,7 +433,7 @@ static int nat_q931(struct sk_buff **pskb, struct ip_conntrack *ct,
|
||||||
struct ip_ct_h323_master *info = &ct->help.ct_h323_info;
|
struct ip_ct_h323_master *info = &ct->help.ct_h323_info;
|
||||||
int dir = CTINFO2DIR(ctinfo);
|
int dir = CTINFO2DIR(ctinfo);
|
||||||
u_int16_t nated_port = port;
|
u_int16_t nated_port = port;
|
||||||
u_int32_t ip;
|
__be32 ip;
|
||||||
|
|
||||||
/* Set expectations for NAT */
|
/* Set expectations for NAT */
|
||||||
exp->saved_proto.tcp.port = exp->tuple.dst.u.tcp.port;
|
exp->saved_proto.tcp.port = exp->tuple.dst.u.tcp.port;
|
||||||
|
|
Loading…
Add table
Reference in a new issue