From 3c7edc827704b44886a6d2a74e690513f44f24d0 Mon Sep 17 00:00:00 2001 From: Erwan Velu Date: Tue, 29 Mar 2011 21:39:00 +0200 Subject: [PATCH] hdt: Improving base_board dump Some items were missing --- com32/hdt/hdt-dump-dmi.c | 35 +++++++++++++++++++++++++---------- 1 file changed, 25 insertions(+), 10 deletions(-) diff --git a/com32/hdt/hdt-dump-dmi.c b/com32/hdt/hdt-dump-dmi.c index 9bebb97..f348b9b 100644 --- a/com32/hdt/hdt-dump-dmi.c +++ b/com32/hdt/hdt-dump-dmi.c @@ -294,16 +294,31 @@ void dump_base_board(struct s_hardware *hardware, ZZJSON_CONFIG *config, ZZJSON return; } - APPEND_ARRAY - add_as("dmi.item","base_board") - add_ahs(dmi.base_board.manufacturer) - add_ahs(dmi.base_board.product_name) - add_ahs(dmi.base_board.version) - add_ahs(dmi.base_board.serial) - add_ahs(dmi.base_board.asset_tag) - add_ahs(dmi.base_board.location) - add_ahs(dmi.base_board.type) - END_OF_APPEND; + CREATE_TEMP_OBJECT; + add_ts("dmi.item","base_board"); + add_ths(dmi.base_board.manufacturer); + add_ths(dmi.base_board.product_name); + add_ths(dmi.base_board.version); + add_ths(dmi.base_board.serial); + add_ths(dmi.base_board.asset_tag); + add_ths(dmi.base_board.location); + add_ths(dmi.base_board.type); + for (int i = 0; i < BASE_BOARD_NB_ELEMENTS; i++) { + if (((bool *) (&hardware->dmi.base_board.features))[i] == true) { + add_ts("dmi.base_board.features",(char *)base_board_features_strings[i]); + } + } + + for (unsigned int i = 0; i < sizeof hardware->dmi.base_board.devices_information / + sizeof *hardware->dmi.base_board.devices_information; i++) { + if (strlen(hardware->dmi.base_board.devices_information[i].type)) { + add_ts("dmi.base_board.devices_information.type", hardware->dmi.base_board.devices_information[i].type); + add_ti("dmi.base_board.devices_information.status", hardware->dmi.base_board.devices_information[i].status); + add_ts("dmi.base_board.devices_information.description", hardware->dmi.base_board.devices_information[i].description); + } + } + + APPEND_TEMP_OBJECT_ARRAY; } -- 2.7.4