diff options
author | Changli Gao <xiaosuo@gmail.com> | 2011-01-06 13:37:36 +0000 |
---|---|---|
committer | David S. Miller <davem@davemloft.net> | 2011-01-10 16:13:33 -0800 |
commit | 96545aeb7b4457594d764af4d689a738e97f14b8 (patch) | |
tree | f916a4b5e95a336db645ab725a4301cc0d71001a /drivers/net/ppp_async.c | |
parent | d7b92affba524e0ca848a5ab60649fb91190d9b5 (diff) | |
download | kernel_goldelico_gta04-96545aeb7b4457594d764af4d689a738e97f14b8.zip kernel_goldelico_gta04-96545aeb7b4457594d764af4d689a738e97f14b8.tar.gz kernel_goldelico_gta04-96545aeb7b4457594d764af4d689a738e97f14b8.tar.bz2 |
net: ppp: use {get,put}_unaligned_be{16,32}
Signed-off-by: Changli Gao <xiaosuo@gmail.com>
Reviewed-by: Harvey Harrison <harvey.harrison@gmail.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
Diffstat (limited to 'drivers/net/ppp_async.c')
-rw-r--r-- | drivers/net/ppp_async.c | 10 |
1 files changed, 5 insertions, 5 deletions
diff --git a/drivers/net/ppp_async.c b/drivers/net/ppp_async.c index 78d70a6..a1b82c9 100644 --- a/drivers/net/ppp_async.c +++ b/drivers/net/ppp_async.c @@ -32,6 +32,7 @@ #include <linux/init.h> #include <linux/jiffies.h> #include <linux/slab.h> +#include <asm/unaligned.h> #include <asm/uaccess.h> #include <asm/string.h> @@ -542,7 +543,7 @@ ppp_async_encode(struct asyncppp *ap) data = ap->tpkt->data; count = ap->tpkt->len; fcs = ap->tfcs; - proto = (data[0] << 8) + data[1]; + proto = get_unaligned_be16(data); /* * LCP packets with code values between 1 (configure-reqest) @@ -963,7 +964,7 @@ static void async_lcp_peek(struct asyncppp *ap, unsigned char *data, code = data[0]; if (code != CONFACK && code != CONFREQ) return; - dlen = (data[2] << 8) + data[3]; + dlen = get_unaligned_be16(data + 2); if (len < dlen) return; /* packet got truncated or length is bogus */ @@ -997,15 +998,14 @@ static void async_lcp_peek(struct asyncppp *ap, unsigned char *data, while (dlen >= 2 && dlen >= data[1] && data[1] >= 2) { switch (data[0]) { case LCP_MRU: - val = (data[2] << 8) + data[3]; + val = get_unaligned_be16(data + 2); if (inbound) ap->mru = val; else ap->chan.mtu = val; break; case LCP_ASYNCMAP: - val = (data[2] << 24) + (data[3] << 16) - + (data[4] << 8) + data[5]; + val = get_unaligned_be32(data + 2); if (inbound) ap->raccm = val; else |