Skip to content

Commit

Permalink
---
Browse files Browse the repository at this point in the history
yaml
---
r: 40807
b: refs/heads/master
c: 375d9d7
h: refs/heads/master
i:
  40805: ae34cce
  40803: a799d92
  40799: 7a80950
v: v3
  • Loading branch information
Steven Whitehouse authored and David S. Miller committed Nov 7, 2006
1 parent 3641082 commit ab8cf2a
Show file tree
Hide file tree
Showing 5 changed files with 21 additions and 20 deletions.
2 changes: 1 addition & 1 deletion [refs]
Original file line number Diff line number Diff line change
@@ -1,2 +1,2 @@
---
refs/heads/master: af2c6a4aaa2253f1e29df8fb59a3d92174d30a33
refs/heads/master: 375d9d71838970030c8e0bf0ac2abcc1a3487df8
25 changes: 13 additions & 12 deletions trunk/net/decnet/af_decnet.c
Original file line number Diff line number Diff line change
Expand Up @@ -166,7 +166,7 @@ static struct hlist_head *dn_find_list(struct sock *sk)
if (scp->addr.sdn_flags & SDF_WILD)
return hlist_empty(&dn_wild_sk) ? &dn_wild_sk : NULL;

return &dn_sk_hash[scp->addrloc & DN_SK_HASH_MASK];
return &dn_sk_hash[dn_ntohs(scp->addrloc) & DN_SK_HASH_MASK];
}

/*
Expand All @@ -180,7 +180,7 @@ static int check_port(__le16 port)
if (port == 0)
return -1;

sk_for_each(sk, node, &dn_sk_hash[port & DN_SK_HASH_MASK]) {
sk_for_each(sk, node, &dn_sk_hash[dn_ntohs(port) & DN_SK_HASH_MASK]) {
struct dn_scp *scp = DN_SK(sk);
if (scp->addrloc == port)
return -1;
Expand All @@ -194,12 +194,12 @@ static unsigned short port_alloc(struct sock *sk)
static unsigned short port = 0x2000;
unsigned short i_port = port;

while(check_port(++port) != 0) {
while(check_port(dn_htons(++port)) != 0) {
if (port == i_port)
return 0;
}

scp->addrloc = port;
scp->addrloc = dn_htons(port);

return 1;
}
Expand Down Expand Up @@ -418,7 +418,7 @@ struct sock *dn_find_by_skb(struct sk_buff *skb)
struct dn_scp *scp;

read_lock(&dn_hash_lock);
sk_for_each(sk, node, &dn_sk_hash[cb->dst_port & DN_SK_HASH_MASK]) {
sk_for_each(sk, node, &dn_sk_hash[dn_ntohs(cb->dst_port) & DN_SK_HASH_MASK]) {
scp = DN_SK(sk);
if (cb->src != dn_saddr2dn(&scp->peer))
continue;
Expand Down Expand Up @@ -1016,13 +1016,14 @@ static void dn_access_copy(struct sk_buff *skb, struct accessdata_dn *acc)

static void dn_user_copy(struct sk_buff *skb, struct optdata_dn *opt)
{
unsigned char *ptr = skb->data;

opt->opt_optl = *ptr++;
opt->opt_status = 0;
memcpy(opt->opt_data, ptr, opt->opt_optl);
skb_pull(skb, dn_ntohs(opt->opt_optl) + 1);

unsigned char *ptr = skb->data;
u16 len = *ptr++; /* yes, it's 8bit on the wire */

BUG_ON(len > 16); /* we've checked the contents earlier */
opt->opt_optl = dn_htons(len);
opt->opt_status = 0;
memcpy(opt->opt_data, ptr, len);
skb_pull(skb, len + 1);
}

static struct sk_buff *dn_wait_for_connect(struct sock *sk, long *timeo)
Expand Down
8 changes: 4 additions & 4 deletions trunk/net/decnet/dn_nsp_in.c
Original file line number Diff line number Diff line change
Expand Up @@ -360,9 +360,9 @@ static void dn_nsp_conn_conf(struct sock *sk, struct sk_buff *skb)
scp->max_window = decnet_no_fc_max_cwnd;

if (skb->len > 0) {
unsigned char dlen = *skb->data;
u16 dlen = *skb->data;
if ((dlen <= 16) && (dlen <= skb->len)) {
scp->conndata_in.opt_optl = dn_htons((__u16)dlen);
scp->conndata_in.opt_optl = dn_htons(dlen);
memcpy(scp->conndata_in.opt_data, skb->data + 1, dlen);
}
}
Expand Down Expand Up @@ -404,9 +404,9 @@ static void dn_nsp_disc_init(struct sock *sk, struct sk_buff *skb)
memset(scp->discdata_in.opt_data, 0, 16);

if (skb->len > 0) {
unsigned char dlen = *skb->data;
u16 dlen = *skb->data;
if ((dlen <= 16) && (dlen <= skb->len)) {
scp->discdata_in.opt_optl = dn_htons((__u16)dlen);
scp->discdata_in.opt_optl = dn_htons(dlen);
memcpy(scp->discdata_in.opt_data, skb->data + 1, dlen);
}
}
Expand Down
2 changes: 1 addition & 1 deletion trunk/net/decnet/dn_nsp_out.c
Original file line number Diff line number Diff line change
Expand Up @@ -526,7 +526,7 @@ void dn_send_conn_conf(struct sock *sk, gfp_t gfp)
struct nsp_conn_init_msg *msg;
__u8 len = (__u8)dn_ntohs(scp->conndata_out.opt_optl);

if ((skb = dn_alloc_skb(sk, 50 + dn_ntohs(scp->conndata_out.opt_optl), gfp)) == NULL)
if ((skb = dn_alloc_skb(sk, 50 + len, gfp)) == NULL)
return;

msg = (struct nsp_conn_init_msg *)skb_put(skb, sizeof(*msg));
Expand Down
4 changes: 2 additions & 2 deletions trunk/net/decnet/dn_rules.c
Original file line number Diff line number Diff line change
Expand Up @@ -124,8 +124,8 @@ static struct nla_policy dn_fib_rule_policy[FRA_MAX+1] __read_mostly = {
static int dn_fib_rule_match(struct fib_rule *rule, struct flowi *fl, int flags)
{
struct dn_fib_rule *r = (struct dn_fib_rule *)rule;
u16 daddr = fl->fld_dst;
u16 saddr = fl->fld_src;
__le16 daddr = fl->fld_dst;
__le16 saddr = fl->fld_src;

if (((saddr ^ r->src) & r->srcmask) ||
((daddr ^ r->dst) & r->dstmask))
Expand Down

0 comments on commit ab8cf2a

Please sign in to comment.