mirror of
https://github.com/vanhoefm/fragattacks.git
synced 2024-11-25 00:38:24 -05:00
HS 2.0: Do not require devinfo.xml for all hs20-osu-client operations
hs20-osu-client refused to do anything if it could not find devinfo.xml from the current working directory. This is a bit excessive since that file was used in init_ctx() only to fill in ctx->devid which is used when constructing OMA DM messages. Move the check for ctx->devid into OMA DM specific code so that other hs20-osu-client functionality can be used without the devinfo.xml file. Signed-off-by: Jouni Malinen <jouni@codeaurora.org>
This commit is contained in:
parent
21895884ea
commit
1695b4dc37
@ -111,6 +111,12 @@ static xml_node_t * oma_dm_build_hdr(struct hs20_osu_client *ctx,
|
||||
xml_node_t *syncml, *synchdr;
|
||||
xml_namespace_t *ns;
|
||||
|
||||
if (!ctx->devid) {
|
||||
wpa_printf(MSG_ERROR,
|
||||
"DevId from devinfo.xml is not available - cannot use OMA DM");
|
||||
return NULL;
|
||||
}
|
||||
|
||||
syncml = xml_node_create_root(ctx->xml, "SYNCML:SYNCML1.2", NULL, &ns,
|
||||
"SyncML");
|
||||
|
||||
|
@ -3068,24 +3068,17 @@ static int init_ctx(struct hs20_osu_client *ctx)
|
||||
return -1;
|
||||
|
||||
devinfo = node_from_file(ctx->xml, "devinfo.xml");
|
||||
if (!devinfo) {
|
||||
wpa_printf(MSG_ERROR, "devinfo.xml not found");
|
||||
return -1;
|
||||
}
|
||||
if (devinfo) {
|
||||
devid = get_node(ctx->xml, devinfo, "DevId");
|
||||
if (devid) {
|
||||
char *tmp = xml_node_get_text(ctx->xml, devid);
|
||||
|
||||
devid = get_node(ctx->xml, devinfo, "DevId");
|
||||
if (devid) {
|
||||
char *tmp = xml_node_get_text(ctx->xml, devid);
|
||||
if (tmp) {
|
||||
ctx->devid = os_strdup(tmp);
|
||||
xml_node_get_text_free(ctx->xml, tmp);
|
||||
if (tmp) {
|
||||
ctx->devid = os_strdup(tmp);
|
||||
xml_node_get_text_free(ctx->xml, tmp);
|
||||
}
|
||||
}
|
||||
}
|
||||
xml_node_free(ctx->xml, devinfo);
|
||||
|
||||
if (ctx->devid == NULL) {
|
||||
wpa_printf(MSG_ERROR, "Could not fetch DevId from devinfo.xml");
|
||||
return -1;
|
||||
xml_node_free(ctx->xml, devinfo);
|
||||
}
|
||||
|
||||
ctx->http = http_init_ctx(ctx, ctx->xml);
|
||||
|
Loading…
Reference in New Issue
Block a user