summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorMarcel Holtmann <marcel@holtmann.org>2006-09-20 08:40:26 +0000
committerMarcel Holtmann <marcel@holtmann.org>2006-09-20 08:40:26 +0000
commit8f7072550e48fd36d47d8b0d7ba442d9ccd200ff (patch)
treea018333a436b01824f31dd48bd92b665732c89a2
parentd389437b875a46fdc136e11b81a781d04380d518 (diff)
Make opcode packing endian safe
-rw-r--r--hcid/security.c6
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);