Bluetooth: Add define for the maximum name length on HCI level
This patch adds a clear define for the maximum device name length in HCI messages and thereby avoids magic numbers in the code. Signed-off-by: Johan Hedberg <johan.hedberg@nokia.com> Signed-off-by: Gustavo F. Padovan <padovan@profusion.mobi>
This commit is contained in:
parent
f0681a68dd
commit
1f6c6378c5
|
@ -535,15 +535,17 @@ struct hci_cp_delete_stored_link_key {
|
||||||
__u8 delete_all;
|
__u8 delete_all;
|
||||||
} __packed;
|
} __packed;
|
||||||
|
|
||||||
|
#define HCI_MAX_NAME_LENGTH 248
|
||||||
|
|
||||||
#define HCI_OP_WRITE_LOCAL_NAME 0x0c13
|
#define HCI_OP_WRITE_LOCAL_NAME 0x0c13
|
||||||
struct hci_cp_write_local_name {
|
struct hci_cp_write_local_name {
|
||||||
__u8 name[248];
|
__u8 name[HCI_MAX_NAME_LENGTH];
|
||||||
} __packed;
|
} __packed;
|
||||||
|
|
||||||
#define HCI_OP_READ_LOCAL_NAME 0x0c14
|
#define HCI_OP_READ_LOCAL_NAME 0x0c14
|
||||||
struct hci_rp_read_local_name {
|
struct hci_rp_read_local_name {
|
||||||
__u8 status;
|
__u8 status;
|
||||||
__u8 name[248];
|
__u8 name[HCI_MAX_NAME_LENGTH];
|
||||||
} __packed;
|
} __packed;
|
||||||
|
|
||||||
#define HCI_OP_WRITE_CA_TIMEOUT 0x0c16
|
#define HCI_OP_WRITE_CA_TIMEOUT 0x0c16
|
||||||
|
@ -745,7 +747,7 @@ struct hci_ev_auth_complete {
|
||||||
struct hci_ev_remote_name {
|
struct hci_ev_remote_name {
|
||||||
__u8 status;
|
__u8 status;
|
||||||
bdaddr_t bdaddr;
|
bdaddr_t bdaddr;
|
||||||
__u8 name[248];
|
__u8 name[HCI_MAX_NAME_LENGTH];
|
||||||
} __packed;
|
} __packed;
|
||||||
|
|
||||||
#define HCI_EV_ENCRYPT_CHANGE 0x08
|
#define HCI_EV_ENCRYPT_CHANGE 0x08
|
||||||
|
|
|
@ -94,7 +94,7 @@ struct hci_dev {
|
||||||
__u8 bus;
|
__u8 bus;
|
||||||
__u8 dev_type;
|
__u8 dev_type;
|
||||||
bdaddr_t bdaddr;
|
bdaddr_t bdaddr;
|
||||||
__u8 dev_name[248];
|
__u8 dev_name[HCI_MAX_NAME_LENGTH];
|
||||||
__u8 dev_class[3];
|
__u8 dev_class[3];
|
||||||
__u8 major_class;
|
__u8 major_class;
|
||||||
__u8 minor_class;
|
__u8 minor_class;
|
||||||
|
|
|
@ -200,7 +200,7 @@ static void hci_cc_write_local_name(struct hci_dev *hdev, struct sk_buff *skb)
|
||||||
if (!sent)
|
if (!sent)
|
||||||
return;
|
return;
|
||||||
|
|
||||||
memcpy(hdev->dev_name, sent, 248);
|
memcpy(hdev->dev_name, sent, HCI_MAX_NAME_LENGTH);
|
||||||
}
|
}
|
||||||
|
|
||||||
static void hci_cc_read_local_name(struct hci_dev *hdev, struct sk_buff *skb)
|
static void hci_cc_read_local_name(struct hci_dev *hdev, struct sk_buff *skb)
|
||||||
|
@ -212,7 +212,7 @@ static void hci_cc_read_local_name(struct hci_dev *hdev, struct sk_buff *skb)
|
||||||
if (rp->status)
|
if (rp->status)
|
||||||
return;
|
return;
|
||||||
|
|
||||||
memcpy(hdev->dev_name, rp->name, 248);
|
memcpy(hdev->dev_name, rp->name, HCI_MAX_NAME_LENGTH);
|
||||||
}
|
}
|
||||||
|
|
||||||
static void hci_cc_write_auth_enable(struct hci_dev *hdev, struct sk_buff *skb)
|
static void hci_cc_write_auth_enable(struct hci_dev *hdev, struct sk_buff *skb)
|
||||||
|
|
|
@ -216,13 +216,13 @@ static ssize_t show_type(struct device *dev, struct device_attribute *attr, char
|
||||||
static ssize_t show_name(struct device *dev, struct device_attribute *attr, char *buf)
|
static ssize_t show_name(struct device *dev, struct device_attribute *attr, char *buf)
|
||||||
{
|
{
|
||||||
struct hci_dev *hdev = dev_get_drvdata(dev);
|
struct hci_dev *hdev = dev_get_drvdata(dev);
|
||||||
char name[249];
|
char name[HCI_MAX_NAME_LENGTH + 1];
|
||||||
int i;
|
int i;
|
||||||
|
|
||||||
for (i = 0; i < 248; i++)
|
for (i = 0; i < HCI_MAX_NAME_LENGTH; i++)
|
||||||
name[i] = hdev->dev_name[i];
|
name[i] = hdev->dev_name[i];
|
||||||
|
|
||||||
name[248] = '\0';
|
name[HCI_MAX_NAME_LENGTH] = '\0';
|
||||||
return sprintf(buf, "%s\n", name);
|
return sprintf(buf, "%s\n", name);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
Loading…
Reference in a new issue