diff options
author | Marcel Holtmann <marcel@holtmann.org> | 2006-09-20 08:40:26 +0000 |
---|---|---|
committer | Marcel Holtmann <marcel@holtmann.org> | 2006-09-20 08:40:26 +0000 |
commit | 8f7072550e48fd36d47d8b0d7ba442d9ccd200ff (patch) | |
tree | a018333a436b01824f31dd48bd92b665732c89a2 /hcid | |
parent | d389437b875a46fdc136e11b81a781d04380d518 (diff) |
Make opcode packing endian safe
Diffstat (limited to 'hcid')
-rw-r--r-- | hcid/security.c | 6 |
1 files changed, 4 insertions, 2 deletions
diff --git a/hcid/security.c b/hcid/security.c index e1c29ea9..1b14dfac 100644 --- a/hcid/security.c +++ b/hcid/security.c @@ -416,20 +416,22 @@ reject: static inline void cmd_status(int dev, bdaddr_t *sba, void *ptr) { evt_cmd_status *evt = ptr; + uint16_t opcode = btohs(evt->opcode); if (evt->status) return; - if (evt->opcode == cmd_opcode_pack(OGF_LINK_CTL, OCF_INQUIRY)) + if (opcode == cmd_opcode_pack(OGF_LINK_CTL, OCF_INQUIRY)) hcid_dbus_inquiry_start(sba); } static inline void cmd_complete(int dev, bdaddr_t *sba, void *ptr) { evt_cmd_complete *evt = ptr; + uint16_t opcode = btohs(evt->opcode); uint8_t status; - switch (evt->opcode) { + switch (opcode) { case cmd_opcode_pack(OGF_LINK_CTL, OCF_PERIODIC_INQUIRY): status = *((uint8_t *) ptr + EVT_CMD_COMPLETE_SIZE); hcid_dbus_periodic_inquiry_start(sba, status); |