wash: add support for device_password_id in json mode
this field, if present, and having the value 0x0004 indicates that the push button method was activated. ref: https://github.com/wiire-a/pixiewps/issues/107
This commit is contained in:
parent
fa3fc51a5a
commit
a668362986
|
@ -109,6 +109,13 @@ char *wps_data_to_json(const char*bssid, const char *ssid, int channel, int rssi
|
||||||
json_str = append_and_free(old, buf, 1);
|
json_str = append_and_free(old, buf, 1);
|
||||||
old = json_str;
|
old = json_str;
|
||||||
}
|
}
|
||||||
|
if(*wps->device_password_id) {
|
||||||
|
tmp = sanitize_string(wps->device_password_id);
|
||||||
|
nl = snprintf(buf, sizeof buf, "\"wps_device_password_id\" : \"%s\", ", tmp);
|
||||||
|
free(tmp);
|
||||||
|
json_str = append_and_free(old, buf, 1);
|
||||||
|
old = json_str;
|
||||||
|
}
|
||||||
if(*wps->ssid) {
|
if(*wps->ssid) {
|
||||||
tmp = sanitize_string(wps->ssid);
|
tmp = sanitize_string(wps->ssid);
|
||||||
nl = snprintf(buf, sizeof buf, "\"wps_ssid\" : \"%s\", ", tmp);
|
nl = snprintf(buf, sizeof buf, "\"wps_ssid\" : \"%s\", ", tmp);
|
||||||
|
@ -248,6 +255,7 @@ int parse_wps_tag(const u_char *tags, size_t len, struct libwps_data *wps)
|
||||||
MODEL_NAME,
|
MODEL_NAME,
|
||||||
MODEL_NUMBER,
|
MODEL_NUMBER,
|
||||||
DEVICE_NAME,
|
DEVICE_NAME,
|
||||||
|
DEVICE_PASSWORD_ID,
|
||||||
SSID,
|
SSID,
|
||||||
UUID,
|
UUID,
|
||||||
SERIAL,
|
SERIAL,
|
||||||
|
@ -319,6 +327,10 @@ int parse_wps_tag(const u_char *tags, size_t len, struct libwps_data *wps)
|
||||||
src = hex2str(el, el_len);
|
src = hex2str(el, el_len);
|
||||||
ptr = wps->selected_registrar_config_methods;
|
ptr = wps->selected_registrar_config_methods;
|
||||||
break;
|
break;
|
||||||
|
case DEVICE_PASSWORD_ID:
|
||||||
|
src = hex2str(el, el_len);
|
||||||
|
ptr = wps->device_password_id;
|
||||||
|
break;
|
||||||
case RESPONSE_TYPE:
|
case RESPONSE_TYPE:
|
||||||
src = hex2str(el, el_len);
|
src = hex2str(el, el_len);
|
||||||
ptr = wps->response_type;
|
ptr = wps->response_type;
|
||||||
|
|
|
@ -39,6 +39,7 @@ struct libwps_data
|
||||||
char model_name[LIBWPS_MAX_STR_LEN];
|
char model_name[LIBWPS_MAX_STR_LEN];
|
||||||
char model_number[LIBWPS_MAX_STR_LEN];
|
char model_number[LIBWPS_MAX_STR_LEN];
|
||||||
char device_name[LIBWPS_MAX_STR_LEN];
|
char device_name[LIBWPS_MAX_STR_LEN];
|
||||||
|
char device_password_id[LIBWPS_MAX_STR_LEN];
|
||||||
char ssid[LIBWPS_MAX_STR_LEN];
|
char ssid[LIBWPS_MAX_STR_LEN];
|
||||||
char uuid[LIBWPS_MAX_STR_LEN];
|
char uuid[LIBWPS_MAX_STR_LEN];
|
||||||
char serial[LIBWPS_MAX_STR_LEN];
|
char serial[LIBWPS_MAX_STR_LEN];
|
||||||
|
@ -77,6 +78,7 @@ enum wps_el_number
|
||||||
MODEL_NAME = 0x1023,
|
MODEL_NAME = 0x1023,
|
||||||
MODEL_NUMBER = 0x1024,
|
MODEL_NUMBER = 0x1024,
|
||||||
DEVICE_NAME = 0x1011,
|
DEVICE_NAME = 0x1011,
|
||||||
|
DEVICE_PASSWORD_ID = 0x1012,
|
||||||
SSID = 0x1045,
|
SSID = 0x1045,
|
||||||
UUID = 0x1047,
|
UUID = 0x1047,
|
||||||
SERIAL = 0x1042,
|
SERIAL = 0x1042,
|
||||||
|
|
Loading…
Reference in New Issue