NDEF: Mark input data const when it is not modified

Signed-hostap: Jouni Malinen <j@w1.fi>
This commit is contained in:
Jouni Malinen 2012-06-27 19:51:11 +03:00
parent 2f425090fb
commit 8a13732f83
2 changed files with 12 additions and 11 deletions

View file

@ -20,9 +20,9 @@
#define FLAG_TNF_RFC2046 (0x02) #define FLAG_TNF_RFC2046 (0x02)
struct ndef_record { struct ndef_record {
u8 *type; const u8 *type;
u8 *id; const u8 *id;
u8 *payload; const u8 *payload;
u8 type_length; u8 type_length;
u8 id_length; u8 id_length;
u32 payload_length; u32 payload_length;
@ -31,9 +31,10 @@ struct ndef_record {
static char wifi_handover_type[] = "application/vnd.wfa.wsc"; static char wifi_handover_type[] = "application/vnd.wfa.wsc";
static int ndef_parse_record(u8 *data, u32 size, struct ndef_record *record) static int ndef_parse_record(const u8 *data, u32 size,
struct ndef_record *record)
{ {
u8 *pos = data + 1; const u8 *pos = data + 1;
if (size < 2) if (size < 2)
return -1; return -1;
@ -72,12 +73,12 @@ static int ndef_parse_record(u8 *data, u32 size, struct ndef_record *record)
} }
static struct wpabuf * ndef_parse_records(struct wpabuf *buf, static struct wpabuf * ndef_parse_records(const struct wpabuf *buf,
int (*filter)(struct ndef_record *)) int (*filter)(struct ndef_record *))
{ {
struct ndef_record record; struct ndef_record record;
int len = wpabuf_len(buf); int len = wpabuf_len(buf);
u8 *data = wpabuf_mhead(buf); const u8 *data = wpabuf_head(buf);
while (len > 0) { while (len > 0) {
if (ndef_parse_record(data, len, &record) < 0) { if (ndef_parse_record(data, len, &record) < 0) {
@ -155,13 +156,13 @@ static int wifi_filter(struct ndef_record *record)
} }
struct wpabuf * ndef_parse_wifi(struct wpabuf *buf) struct wpabuf * ndef_parse_wifi(const struct wpabuf *buf)
{ {
return ndef_parse_records(buf, wifi_filter); return ndef_parse_records(buf, wifi_filter);
} }
struct wpabuf * ndef_build_wifi(struct wpabuf *buf) struct wpabuf * ndef_build_wifi(const struct wpabuf *buf)
{ {
return ndef_build_record(FLAG_MESSAGE_BEGIN | FLAG_MESSAGE_END | return ndef_build_record(FLAG_MESSAGE_BEGIN | FLAG_MESSAGE_END |
FLAG_TNF_RFC2046, wifi_handover_type, FLAG_TNF_RFC2046, wifi_handover_type,

View file

@ -834,8 +834,8 @@ void uuid_gen_mac_addr(const u8 *mac_addr, u8 *uuid);
u16 wps_config_methods_str2bin(const char *str); u16 wps_config_methods_str2bin(const char *str);
/* ndef.c */ /* ndef.c */
struct wpabuf * ndef_parse_wifi(struct wpabuf *buf); struct wpabuf * ndef_parse_wifi(const struct wpabuf *buf);
struct wpabuf * ndef_build_wifi(struct wpabuf *buf); struct wpabuf * ndef_build_wifi(const struct wpabuf *buf);
#ifdef CONFIG_WPS_STRICT #ifdef CONFIG_WPS_STRICT
int wps_validate_beacon(const struct wpabuf *wps_ie); int wps_validate_beacon(const struct wpabuf *wps_ie);