summaryrefslogtreecommitdiffstats
path: root/src/shared/libosmocore/src/gsm/gsm48.c
diff options
context:
space:
mode:
authorSylvain Munaut <tnt@246tNt.com>2012-11-14 20:17:37 +0100
committerSylvain Munaut <tnt@246tNt.com>2012-11-14 20:17:37 +0100
commit5c036d59831d013099ba6f750c25018f4bc3bef9 (patch)
tree02718ab4a266f7243e5c25c0fdb57c180779bb8e /src/shared/libosmocore/src/gsm/gsm48.c
parent63cb795d22a25fc3992b9723039b6ec75e964cd8 (diff)
parent5905d5be60249b2d9ca9abce4c801bc3bceed6d9 (diff)
Merge commit '5905d5be60249b2d9ca9abce4c801bc3bceed6d9'
Diffstat (limited to 'src/shared/libosmocore/src/gsm/gsm48.c')
-rw-r--r--src/shared/libosmocore/src/gsm/gsm48.c4
1 files changed, 3 insertions, 1 deletions
diff --git a/src/shared/libosmocore/src/gsm/gsm48.c b/src/shared/libosmocore/src/gsm/gsm48.c
index fe62dee7..ea05d450 100644
--- a/src/shared/libosmocore/src/gsm/gsm48.c
+++ b/src/shared/libosmocore/src/gsm/gsm48.c
@@ -416,6 +416,7 @@ int gsm48_construct_ra(uint8_t *buf, const struct gprs_ra_id *raid)
{
uint16_t mcc = raid->mcc;
uint16_t mnc = raid->mnc;
+ uint16_t _lac;
buf[0] = ((mcc / 100) % 10) | (((mcc / 10) % 10) << 4);
buf[1] = (mcc % 10);
@@ -430,7 +431,8 @@ int gsm48_construct_ra(uint8_t *buf, const struct gprs_ra_id *raid)
buf[2] = ((mnc / 100) % 10) | (((mnc / 10) % 10) << 4);
}
- *(uint16_t *)(buf+3) = htons(raid->lac);
+ _lac = htons(raid->lac);
+ memcpy(buf + 3, &_lac, 2);
buf[5] = raid->rac;