Remove global packet_info* current_pinfo
svn path=/trunk/; revision=49143
This commit is contained in:
parent
f25ebae549
commit
b542526248
|
@ -414,7 +414,7 @@ static const value_string vals_XX_auth[] = {
|
|||
/* Get Device ID.
|
||||
*/
|
||||
static void
|
||||
rs01(tvbuff_t *tvb, proto_tree *tree)
|
||||
rs01(tvbuff_t *tvb, packet_info *pinfo _U_, proto_tree *tree)
|
||||
{
|
||||
static const gint *byte2[] = { &hf_ipmi_app_01_dev_prov_sdr, &hf_ipmi_app_01_dev_rev, NULL };
|
||||
static const gint *byte3[] = { &hf_ipmi_app_01_dev_avail, &hf_ipmi_app_01_fw_rev_maj, NULL };
|
||||
|
@ -446,7 +446,7 @@ rs01(tvbuff_t *tvb, proto_tree *tree)
|
|||
/* Get Self Test Results.
|
||||
*/
|
||||
static void
|
||||
rs04(tvbuff_t *tvb, proto_tree *tree)
|
||||
rs04(tvbuff_t *tvb, packet_info *pinfo _U_, proto_tree *tree)
|
||||
{
|
||||
static const gint *byte2[] = { &hf_ipmi_app_04_fail_sel, &hf_ipmi_app_04_fail_sdr,
|
||||
&hf_ipmi_app_04_fail_bmc_fru, &hf_ipmi_app_04_fail_ipmb_sig, &hf_ipmi_app_04_fail_sdr_empty,
|
||||
|
@ -481,7 +481,7 @@ rs04(tvbuff_t *tvb, proto_tree *tree)
|
|||
/* Manufacturing Test On.
|
||||
*/
|
||||
static void
|
||||
rq05(tvbuff_t *tvb, proto_tree *tree)
|
||||
rq05(tvbuff_t *tvb, packet_info *pinfo _U_, proto_tree *tree)
|
||||
{
|
||||
proto_tree_add_item(tree, hf_ipmi_app_05_devspec, tvb, 0, tvb_length(tvb), ENC_NA);
|
||||
}
|
||||
|
@ -489,7 +489,7 @@ rq05(tvbuff_t *tvb, proto_tree *tree)
|
|||
/* Set ACPI Power State.
|
||||
*/
|
||||
static void
|
||||
rq06(tvbuff_t *tvb, proto_tree *tree)
|
||||
rq06(tvbuff_t *tvb, packet_info *pinfo _U_, proto_tree *tree)
|
||||
{
|
||||
static const gint *byte1[] = { &hf_ipmi_app_06_syspwr_set, &hf_ipmi_app_06_syspwr_enum, NULL };
|
||||
static const gint *byte2[] = { &hf_ipmi_app_06_devpwr_set, &hf_ipmi_app_06_devpwr_enum, NULL };
|
||||
|
@ -503,7 +503,7 @@ rq06(tvbuff_t *tvb, proto_tree *tree)
|
|||
/* Get ACPI Power State.
|
||||
*/
|
||||
static void
|
||||
rs07(tvbuff_t *tvb, proto_tree *tree)
|
||||
rs07(tvbuff_t *tvb, packet_info *pinfo _U_, proto_tree *tree)
|
||||
{
|
||||
static const gint *byte1[] = { &hf_ipmi_app_07_syspwr_enum, NULL };
|
||||
static const gint *byte2[] = { &hf_ipmi_app_07_devpwr_enum, NULL };
|
||||
|
@ -517,7 +517,7 @@ rs07(tvbuff_t *tvb, proto_tree *tree)
|
|||
/* Get Device GUID.
|
||||
*/
|
||||
static void
|
||||
rs08(tvbuff_t *tvb, proto_tree *tree)
|
||||
rs08(tvbuff_t *tvb, packet_info *pinfo _U_, proto_tree *tree)
|
||||
{
|
||||
ipmi_add_guid(tree, hf_ipmi_app_08_guid, tvb, 0);
|
||||
}
|
||||
|
@ -532,7 +532,7 @@ static const value_string cc22[] = {
|
|||
/* Set Watchdog Timer.
|
||||
*/
|
||||
static void
|
||||
rq24(tvbuff_t *tvb, proto_tree *tree)
|
||||
rq24(tvbuff_t *tvb, packet_info *pinfo _U_, proto_tree *tree)
|
||||
{
|
||||
static const gint *byte1[] = { &hf_ipmi_app_24_timer_use_dont_log,
|
||||
&hf_ipmi_app_24_timer_use_dont_stop, &hf_ipmi_app_24_timer_use_timer_use, NULL };
|
||||
|
@ -555,7 +555,7 @@ rq24(tvbuff_t *tvb, proto_tree *tree)
|
|||
/* Get Watchdog Timer.
|
||||
*/
|
||||
static void
|
||||
rs25(tvbuff_t *tvb, proto_tree *tree)
|
||||
rs25(tvbuff_t *tvb, packet_info *pinfo _U_, proto_tree *tree)
|
||||
{
|
||||
static const gint *byte1[] = { &hf_ipmi_app_25_timer_use_dont_log,
|
||||
&hf_ipmi_app_25_timer_use_started, &hf_ipmi_app_25_timer_use_timer_use, NULL };
|
||||
|
@ -579,7 +579,7 @@ rs25(tvbuff_t *tvb, proto_tree *tree)
|
|||
/* Set BMC Global Enables.
|
||||
*/
|
||||
static void
|
||||
rq2e(tvbuff_t *tvb, proto_tree *tree)
|
||||
rq2e(tvbuff_t *tvb, packet_info *pinfo _U_, proto_tree *tree)
|
||||
{
|
||||
static const gint *byte1[] = { &hf_ipmi_app_2e_byte1_oem2, &hf_ipmi_app_2e_byte1_oem1,
|
||||
&hf_ipmi_app_2e_byte1_oem0, &hf_ipmi_app_2e_byte1_sel, &hf_ipmi_app_2e_byte1_emb,
|
||||
|
@ -592,7 +592,7 @@ rq2e(tvbuff_t *tvb, proto_tree *tree)
|
|||
/* Get BMC Global Enables.
|
||||
*/
|
||||
static void
|
||||
rs2f(tvbuff_t *tvb, proto_tree *tree)
|
||||
rs2f(tvbuff_t *tvb, packet_info *pinfo _U_, proto_tree *tree)
|
||||
{
|
||||
static const gint *byte1[] = { &hf_ipmi_app_2f_byte1_oem2, &hf_ipmi_app_2f_byte1_oem1,
|
||||
&hf_ipmi_app_2f_byte1_oem0, &hf_ipmi_app_2f_byte1_sel, &hf_ipmi_app_2f_byte1_emb,
|
||||
|
@ -605,7 +605,7 @@ rs2f(tvbuff_t *tvb, proto_tree *tree)
|
|||
/* Clear Message Flags.
|
||||
*/
|
||||
static void
|
||||
rq30(tvbuff_t *tvb, proto_tree *tree)
|
||||
rq30(tvbuff_t *tvb, packet_info *pinfo _U_, proto_tree *tree)
|
||||
{
|
||||
static const gint *byte1[] = { &hf_ipmi_app_30_byte1_oem2, &hf_ipmi_app_30_byte1_oem1,
|
||||
&hf_ipmi_app_30_byte1_oem0, &hf_ipmi_app_30_byte1_wd_pretimeout,
|
||||
|
@ -618,7 +618,7 @@ rq30(tvbuff_t *tvb, proto_tree *tree)
|
|||
/* Get Message Flags.
|
||||
*/
|
||||
static void
|
||||
rs31(tvbuff_t *tvb, proto_tree *tree)
|
||||
rs31(tvbuff_t *tvb, packet_info *pinfo _U_, proto_tree *tree)
|
||||
{
|
||||
static const gint *byte1[] = { &hf_ipmi_app_31_byte1_oem2, &hf_ipmi_app_31_byte1_oem1,
|
||||
&hf_ipmi_app_31_byte1_oem0, &hf_ipmi_app_31_byte1_wd_pretimeout,
|
||||
|
@ -631,7 +631,7 @@ rs31(tvbuff_t *tvb, proto_tree *tree)
|
|||
/* Enable Message Channel Receive.
|
||||
*/
|
||||
static void
|
||||
rq32(tvbuff_t *tvb, proto_tree *tree)
|
||||
rq32(tvbuff_t *tvb, packet_info *pinfo _U_, proto_tree *tree)
|
||||
{
|
||||
static const gint *byte1[] = { &hf_ipmi_app_32_rq_chno, NULL };
|
||||
static const gint *byte2[] = { &hf_ipmi_app_32_rq_state, NULL };
|
||||
|
@ -643,7 +643,7 @@ rq32(tvbuff_t *tvb, proto_tree *tree)
|
|||
}
|
||||
|
||||
static void
|
||||
rs32(tvbuff_t *tvb, proto_tree *tree)
|
||||
rs32(tvbuff_t *tvb, packet_info *pinfo _U_, proto_tree *tree)
|
||||
{
|
||||
static const gint *byte1[] = { &hf_ipmi_app_32_rs_chno, NULL };
|
||||
static const gint *byte2[] = { &hf_ipmi_app_32_rs_state, NULL };
|
||||
|
@ -664,7 +664,7 @@ static const value_string cc33[] = {
|
|||
/* Send Message
|
||||
*/
|
||||
static void
|
||||
rq34(tvbuff_t *tvb, proto_tree *tree)
|
||||
rq34(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree)
|
||||
{
|
||||
static const gint *byte1[] = { &hf_ipmi_app_34_track, &hf_ipmi_app_34_encrypt,
|
||||
&hf_ipmi_app_34_auth, &hf_ipmi_app_34_chan, NULL };
|
||||
|
@ -686,12 +686,12 @@ rq34(tvbuff_t *tvb, proto_tree *tree)
|
|||
dfmt.getmoreheaders = ipmi_sendmsg_getheaders;
|
||||
dfmt.whichresponse = ipmi_sendmsg_whichresponse;
|
||||
dfmt.otheridx = ipmi_sendmsg_otheridx;
|
||||
ipmi_do_dissect(next, s_tree, &dfmt);
|
||||
ipmi_do_dissect(next, pinfo, s_tree, &dfmt);
|
||||
proto_item_set_text(ti, "%s", dfmt.info);
|
||||
}
|
||||
|
||||
static void
|
||||
rs34(tvbuff_t *tvb, proto_tree *tree)
|
||||
rs34(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree)
|
||||
{
|
||||
ipmi_dissect_format_t dfmt;
|
||||
proto_tree *s_tree;
|
||||
|
@ -703,7 +703,7 @@ rs34(tvbuff_t *tvb, proto_tree *tree)
|
|||
if (tvb_length(tvb)) {
|
||||
memset(&dfmt, 0, sizeof(dfmt));
|
||||
dfmt.flags = ipmi_guess_dissect_flags(tvb);
|
||||
ipmi_do_dissect(tvb, s_tree, &dfmt);
|
||||
ipmi_do_dissect(tvb, pinfo, s_tree, &dfmt);
|
||||
proto_item_set_text(ti, "%s", dfmt.info);
|
||||
}
|
||||
}
|
||||
|
@ -726,7 +726,7 @@ static const value_string cc35[] = {
|
|||
/* Get Channel Authentication Capabilities
|
||||
*/
|
||||
static void
|
||||
rq38(tvbuff_t *tvb, proto_tree *tree)
|
||||
rq38(tvbuff_t *tvb, packet_info *pinfo _U_, proto_tree *tree)
|
||||
{
|
||||
static const gint *byte1[] = { &hf_ipmi_app_38_rq_ipmi20, &hf_ipmi_app_38_rq_chan, NULL };
|
||||
static const gint *byte2[] = { &hf_ipmi_app_38_rq_priv, NULL };
|
||||
|
@ -736,7 +736,7 @@ rq38(tvbuff_t *tvb, proto_tree *tree)
|
|||
}
|
||||
|
||||
static void
|
||||
rs38(tvbuff_t *tvb, proto_tree *tree)
|
||||
rs38(tvbuff_t *tvb, packet_info *pinfo _U_, proto_tree *tree)
|
||||
{
|
||||
static const gint *byte1[] = { &hf_ipmi_app_38_rs_chan, NULL };
|
||||
static const gint *byte2[] = { &hf_ipmi_app_38_rs_ipmi20, &hf_ipmi_app_38_rs_auth_oem,
|
||||
|
@ -758,7 +758,7 @@ rs38(tvbuff_t *tvb, proto_tree *tree)
|
|||
/* Get Session Challenge
|
||||
*/
|
||||
static void
|
||||
rq39(tvbuff_t *tvb, proto_tree *tree)
|
||||
rq39(tvbuff_t *tvb, packet_info *pinfo _U_, proto_tree *tree)
|
||||
{
|
||||
static const gint *byte1[] = { &hf_ipmi_app_39_authtype, NULL };
|
||||
|
||||
|
@ -768,7 +768,7 @@ rq39(tvbuff_t *tvb, proto_tree *tree)
|
|||
}
|
||||
|
||||
static void
|
||||
rs39(tvbuff_t *tvb, proto_tree *tree)
|
||||
rs39(tvbuff_t *tvb, packet_info *pinfo _U_, proto_tree *tree)
|
||||
{
|
||||
proto_tree_add_item(tree, hf_ipmi_app_39_temp_session, tvb, 0, 4, ENC_LITTLE_ENDIAN);
|
||||
proto_tree_add_item(tree, hf_ipmi_app_39_challenge, tvb, 4, 16, ENC_NA);
|
||||
|
@ -783,7 +783,7 @@ static const value_string cc39[] = {
|
|||
/* Activate Session
|
||||
*/
|
||||
static void
|
||||
rq3a(tvbuff_t *tvb, proto_tree *tree)
|
||||
rq3a(tvbuff_t *tvb, packet_info *pinfo _U_, proto_tree *tree)
|
||||
{
|
||||
static const gint *byte1[] = { &hf_ipmi_app_3a_authtype, NULL };
|
||||
static const gint *byte2[] = { &hf_ipmi_app_3a_privlevel, NULL };
|
||||
|
@ -797,7 +797,7 @@ rq3a(tvbuff_t *tvb, proto_tree *tree)
|
|||
}
|
||||
|
||||
static void
|
||||
rs3a(tvbuff_t *tvb, proto_tree *tree)
|
||||
rs3a(tvbuff_t *tvb, packet_info *pinfo _U_, proto_tree *tree)
|
||||
{
|
||||
static const gint *byte1[] = { &hf_ipmi_app_3a_authtype_session, NULL };
|
||||
static const gint *byte10[] = { &hf_ipmi_app_3a_maxpriv_session, NULL };
|
||||
|
@ -823,7 +823,7 @@ static const value_string cc3a[] = {
|
|||
/* Set Session Privilege Level
|
||||
*/
|
||||
static void
|
||||
rq3b(tvbuff_t *tvb, proto_tree *tree)
|
||||
rq3b(tvbuff_t *tvb, packet_info *pinfo _U_, proto_tree *tree)
|
||||
{
|
||||
static const gint *byte1[] = { &hf_ipmi_app_3b_req_priv, NULL };
|
||||
|
||||
|
@ -832,7 +832,7 @@ rq3b(tvbuff_t *tvb, proto_tree *tree)
|
|||
}
|
||||
|
||||
static void
|
||||
rs3b(tvbuff_t *tvb, proto_tree *tree)
|
||||
rs3b(tvbuff_t *tvb, packet_info *pinfo _U_, proto_tree *tree)
|
||||
{
|
||||
static const gint *byte1[] = { &hf_ipmi_app_3b_new_priv, NULL };
|
||||
|
||||
|
@ -850,7 +850,7 @@ static const value_string cc3b[] = {
|
|||
/* Close Session
|
||||
*/
|
||||
static void
|
||||
rq3c(tvbuff_t *tvb, proto_tree *tree)
|
||||
rq3c(tvbuff_t *tvb, packet_info *pinfo _U_, proto_tree *tree)
|
||||
{
|
||||
proto_tree_add_item(tree, hf_ipmi_app_3c_session_id, tvb, 0, 4, ENC_LITTLE_ENDIAN);
|
||||
if (tvb_length(tvb) > 4) {
|
||||
|
|
|
@ -428,7 +428,7 @@ static struct {
|
|||
/* Get Chassis Capabilities (response)
|
||||
*/
|
||||
static void
|
||||
rs00(tvbuff_t *tvb, proto_tree *tree)
|
||||
rs00(tvbuff_t *tvb, packet_info *pinfo _U_, proto_tree *tree)
|
||||
{
|
||||
static const int *byte1[] = { &hf_ipmi_chs_00_capflags_ppi, &hf_ipmi_chs_00_capflags_di,
|
||||
&hf_ipmi_chs_00_capflags_fpl, &hf_ipmi_chs_00_capflags_is, NULL };
|
||||
|
@ -448,7 +448,7 @@ rs00(tvbuff_t *tvb, proto_tree *tree)
|
|||
/* Get Chassis Status.
|
||||
*/
|
||||
static void
|
||||
rs01(tvbuff_t *tvb, proto_tree *tree)
|
||||
rs01(tvbuff_t *tvb, packet_info *pinfo _U_, proto_tree *tree)
|
||||
{
|
||||
static const int *byte1[] = { &hf_ipmi_chs_01_pwr_state_policy,
|
||||
&hf_ipmi_chs_01_pwr_state_ctl_fault, &hf_ipmi_chs_01_pwr_state_fault,
|
||||
|
@ -481,7 +481,7 @@ rs01(tvbuff_t *tvb, proto_tree *tree)
|
|||
/* Chassis Control.
|
||||
*/
|
||||
static void
|
||||
rq02(tvbuff_t *tvb, proto_tree *tree)
|
||||
rq02(tvbuff_t *tvb, packet_info *pinfo _U_, proto_tree *tree)
|
||||
{
|
||||
static const int *byte1[] = { &hf_ipmi_chs_02_cctrl, NULL };
|
||||
|
||||
|
@ -492,7 +492,7 @@ rq02(tvbuff_t *tvb, proto_tree *tree)
|
|||
/* Chassis Identify
|
||||
*/
|
||||
static void
|
||||
rq04(tvbuff_t *tvb, proto_tree *tree)
|
||||
rq04(tvbuff_t *tvb, packet_info *pinfo _U_, proto_tree *tree)
|
||||
{
|
||||
static const int *byte2[] = { &hf_ipmi_chs_04_perm_on, NULL };
|
||||
|
||||
|
@ -509,7 +509,7 @@ rq04(tvbuff_t *tvb, proto_tree *tree)
|
|||
/* Set Chassis Capabilities.
|
||||
*/
|
||||
static void
|
||||
rq05(tvbuff_t *tvb, proto_tree *tree)
|
||||
rq05(tvbuff_t *tvb, packet_info *pinfo _U_, proto_tree *tree)
|
||||
{
|
||||
static const int *byte1[] = { &hf_ipmi_chs_05_flags_fpl, &hf_ipmi_chs_05_flags_intrusion, NULL };
|
||||
|
||||
|
@ -528,7 +528,7 @@ rq05(tvbuff_t *tvb, proto_tree *tree)
|
|||
/* Set Power Restore Policy
|
||||
*/
|
||||
static void
|
||||
rq06(tvbuff_t *tvb, proto_tree *tree)
|
||||
rq06(tvbuff_t *tvb, packet_info *pinfo _U_, proto_tree *tree)
|
||||
{
|
||||
static const int *byte1[] = { &hf_ipmi_chs_06_rq_policy, NULL };
|
||||
|
||||
|
@ -539,7 +539,7 @@ rq06(tvbuff_t *tvb, proto_tree *tree)
|
|||
/* Get Power Restore Policy
|
||||
*/
|
||||
static void
|
||||
rs06(tvbuff_t *tvb, proto_tree *tree)
|
||||
rs06(tvbuff_t *tvb, packet_info *pinfo _U_, proto_tree *tree)
|
||||
{
|
||||
static const int *byte1[] = { &hf_ipmi_chs_06_rs_policy_support_powerup,
|
||||
&hf_ipmi_chs_06_rs_policy_support_restore, &hf_ipmi_chs_06_rs_policy_support_poweroff, NULL };
|
||||
|
@ -551,7 +551,7 @@ rs06(tvbuff_t *tvb, proto_tree *tree)
|
|||
/* Get System Restart Cause
|
||||
*/
|
||||
static void
|
||||
rs07(tvbuff_t *tvb, proto_tree *tree)
|
||||
rs07(tvbuff_t *tvb, packet_info *pinfo _U_, proto_tree *tree)
|
||||
{
|
||||
static const int *byte1[] = { &hf_ipmi_chs_07_cause, NULL };
|
||||
|
||||
|
@ -563,7 +563,7 @@ rs07(tvbuff_t *tvb, proto_tree *tree)
|
|||
/* Set System Boot Options
|
||||
*/
|
||||
static void
|
||||
rq08(tvbuff_t *tvb, proto_tree *tree)
|
||||
rq08(tvbuff_t *tvb, packet_info *pinfo _U_, proto_tree *tree)
|
||||
{
|
||||
proto_item *ti;
|
||||
proto_tree *s_tree;
|
||||
|
@ -611,7 +611,7 @@ static const value_string cc08[] = {
|
|||
/* Get System Boot Options
|
||||
*/
|
||||
static void
|
||||
rq09(tvbuff_t *tvb, proto_tree *tree)
|
||||
rq09(tvbuff_t *tvb, packet_info *pinfo _U_, proto_tree *tree)
|
||||
{
|
||||
proto_item *ti;
|
||||
proto_tree *s_tree;
|
||||
|
@ -641,7 +641,7 @@ rq09(tvbuff_t *tvb, proto_tree *tree)
|
|||
}
|
||||
|
||||
static void
|
||||
rs09(tvbuff_t *tvb, proto_tree *tree)
|
||||
rs09(tvbuff_t *tvb, packet_info *pinfo _U_, proto_tree *tree)
|
||||
{
|
||||
static const int *byte1[] = { &hf_ipmi_chs_09_rs_param_version, NULL };
|
||||
proto_item *ti;
|
||||
|
@ -688,7 +688,7 @@ static const value_string cc09[] = {
|
|||
/* Get POH Counter
|
||||
*/
|
||||
static void
|
||||
rs0f(tvbuff_t *tvb, proto_tree *tree)
|
||||
rs0f(tvbuff_t *tvb, packet_info *pinfo _U_, proto_tree *tree)
|
||||
{
|
||||
proto_tree_add_item(tree, hf_ipmi_chs_0f_minpercnt, tvb, 0, 1, ENC_LITTLE_ENDIAN);
|
||||
proto_tree_add_item(tree, hf_ipmi_chs_0f_counter, tvb, 1, 4, ENC_LITTLE_ENDIAN);
|
||||
|
|
|
@ -524,7 +524,7 @@ static const struct true_false_string tfs_36_fail_unknown = {
|
|||
/* Get PICMG Properties.
|
||||
*/
|
||||
static void
|
||||
rs00(tvbuff_t *tvb, proto_tree *tree)
|
||||
rs00(tvbuff_t *tvb, packet_info *pinfo _U_, proto_tree *tree)
|
||||
{
|
||||
proto_tree_add_item(tree, hf_ipmi_picmg_00_version, tvb, 0, 1, ENC_LITTLE_ENDIAN);
|
||||
proto_tree_add_item(tree, hf_ipmi_picmg_00_max_fruid, tvb, 1, 1, ENC_LITTLE_ENDIAN);
|
||||
|
@ -534,7 +534,7 @@ rs00(tvbuff_t *tvb, proto_tree *tree)
|
|||
/* Get Address Info Command.
|
||||
*/
|
||||
static void
|
||||
rq01(tvbuff_t *tvb, proto_tree *tree)
|
||||
rq01(tvbuff_t *tvb, packet_info *pinfo _U_, proto_tree *tree)
|
||||
{
|
||||
if (tvb_length(tvb) > 0) {
|
||||
proto_tree_add_item(tree, hf_ipmi_picmg_01_rq_fruid, tvb, 0, 1, ENC_LITTLE_ENDIAN);
|
||||
|
@ -551,7 +551,7 @@ rq01(tvbuff_t *tvb, proto_tree *tree)
|
|||
}
|
||||
|
||||
static void
|
||||
rs01(tvbuff_t *tvb, proto_tree *tree)
|
||||
rs01(tvbuff_t *tvb, packet_info *pinfo _U_, proto_tree *tree)
|
||||
{
|
||||
proto_tree_add_item(tree, hf_ipmi_picmg_01_rs_hwaddr, tvb, 0, 1, ENC_LITTLE_ENDIAN);
|
||||
proto_tree_add_item(tree, hf_ipmi_picmg_01_rs_ipmbaddr, tvb, 1, 1, ENC_LITTLE_ENDIAN);
|
||||
|
@ -565,7 +565,7 @@ rs01(tvbuff_t *tvb, proto_tree *tree)
|
|||
/* Get Shelf Address Info
|
||||
*/
|
||||
static void
|
||||
rs02(tvbuff_t *tvb, proto_tree *tree)
|
||||
rs02(tvbuff_t *tvb, packet_info *pinfo _U_, proto_tree *tree)
|
||||
{
|
||||
ipmi_add_typelen(tree, "Shelf Address", tvb, 0, TRUE);
|
||||
}
|
||||
|
@ -573,7 +573,7 @@ rs02(tvbuff_t *tvb, proto_tree *tree)
|
|||
/* Set Shelf Address Info
|
||||
*/
|
||||
static void
|
||||
rq03(tvbuff_t *tvb, proto_tree *tree)
|
||||
rq03(tvbuff_t *tvb, packet_info *pinfo _U_, proto_tree *tree)
|
||||
{
|
||||
ipmi_add_typelen(tree, "Shelf Address", tvb, 0, TRUE);
|
||||
}
|
||||
|
@ -581,7 +581,7 @@ rq03(tvbuff_t *tvb, proto_tree *tree)
|
|||
/* FRU Control.
|
||||
*/
|
||||
static void
|
||||
rq04(tvbuff_t *tvb, proto_tree *tree)
|
||||
rq04(tvbuff_t *tvb, packet_info *pinfo _U_, proto_tree *tree)
|
||||
{
|
||||
proto_tree_add_item(tree, hf_ipmi_picmg_04_fruid, tvb, 0, 1, ENC_LITTLE_ENDIAN);
|
||||
proto_tree_add_item(tree, hf_ipmi_picmg_04_cmd, tvb, 1, 1, ENC_LITTLE_ENDIAN);
|
||||
|
@ -590,13 +590,13 @@ rq04(tvbuff_t *tvb, proto_tree *tree)
|
|||
/* Get FRU LED Properties
|
||||
*/
|
||||
static void
|
||||
rq05(tvbuff_t *tvb, proto_tree *tree)
|
||||
rq05(tvbuff_t *tvb, packet_info *pinfo _U_, proto_tree *tree)
|
||||
{
|
||||
proto_tree_add_item(tree, hf_ipmi_picmg_05_fruid, tvb, 0, 1, ENC_LITTLE_ENDIAN);
|
||||
}
|
||||
|
||||
static void
|
||||
rs05(tvbuff_t *tvb, proto_tree *tree)
|
||||
rs05(tvbuff_t *tvb, packet_info *pinfo _U_, proto_tree *tree)
|
||||
{
|
||||
static const int *byte1[] = { &hf_ipmi_picmg_05_led3, &hf_ipmi_picmg_05_led2,
|
||||
&hf_ipmi_picmg_05_led1, &hf_ipmi_picmg_05_blue_led, NULL };
|
||||
|
@ -609,14 +609,14 @@ rs05(tvbuff_t *tvb, proto_tree *tree)
|
|||
/* Get LED Color Capabilities
|
||||
*/
|
||||
static void
|
||||
rq06(tvbuff_t *tvb, proto_tree *tree)
|
||||
rq06(tvbuff_t *tvb, packet_info *pinfo _U_, proto_tree *tree)
|
||||
{
|
||||
proto_tree_add_item(tree, hf_ipmi_picmg_06_fruid, tvb, 0, 1, ENC_LITTLE_ENDIAN);
|
||||
proto_tree_add_item(tree, hf_ipmi_picmg_06_ledid, tvb, 1, 1, ENC_LITTLE_ENDIAN);
|
||||
}
|
||||
|
||||
static void
|
||||
rs06(tvbuff_t *tvb, proto_tree *tree)
|
||||
rs06(tvbuff_t *tvb, packet_info *pinfo _U_, proto_tree *tree)
|
||||
{
|
||||
static const int *byte1[] = { &hf_ipmi_picmg_06_cap_white, &hf_ipmi_picmg_06_cap_orange,
|
||||
&hf_ipmi_picmg_06_cap_amber, &hf_ipmi_picmg_06_cap_green, &hf_ipmi_picmg_06_cap_red,
|
||||
|
@ -665,7 +665,7 @@ parse_led_state(proto_tree *tree, tvbuff_t *tvb, guint offs, const char *desc)
|
|||
/* Set FRU LED State
|
||||
*/
|
||||
static void
|
||||
rq07(tvbuff_t *tvb, proto_tree *tree)
|
||||
rq07(tvbuff_t *tvb, packet_info *pinfo _U_, proto_tree *tree)
|
||||
{
|
||||
proto_tree_add_item(tree, hf_ipmi_picmg_07_fruid, tvb, 0, 1, ENC_LITTLE_ENDIAN);
|
||||
proto_tree_add_item(tree, hf_ipmi_picmg_07_ledid, tvb, 1, 1, ENC_LITTLE_ENDIAN);
|
||||
|
@ -675,14 +675,14 @@ rq07(tvbuff_t *tvb, proto_tree *tree)
|
|||
/* Get FRU LED State
|
||||
*/
|
||||
static void
|
||||
rq08(tvbuff_t *tvb, proto_tree *tree)
|
||||
rq08(tvbuff_t *tvb, packet_info *pinfo _U_, proto_tree *tree)
|
||||
{
|
||||
proto_tree_add_item(tree, hf_ipmi_picmg_08_fruid, tvb, 0, 1, ENC_LITTLE_ENDIAN);
|
||||
proto_tree_add_item(tree, hf_ipmi_picmg_08_ledid, tvb, 1, 1, ENC_LITTLE_ENDIAN);
|
||||
}
|
||||
|
||||
static void
|
||||
rs08(tvbuff_t *tvb, proto_tree *tree)
|
||||
rs08(tvbuff_t *tvb, packet_info *pinfo _U_, proto_tree *tree)
|
||||
{
|
||||
static const int *byte1[] = { &hf_ipmi_picmg_08_state_lamptest, &hf_ipmi_picmg_08_state_override,
|
||||
&hf_ipmi_picmg_08_state_local, NULL };
|
||||
|
@ -734,7 +734,7 @@ parse_ipmb_state(proto_tree *tree, tvbuff_t *tvb, guint offs, int hf, int ett)
|
|||
}
|
||||
|
||||
static void
|
||||
rq09(tvbuff_t *tvb, proto_tree *tree)
|
||||
rq09(tvbuff_t *tvb, packet_info *pinfo _U_, proto_tree *tree)
|
||||
{
|
||||
parse_ipmb_state(tree, tvb, 0, hf_ipmi_picmg_09_ipmba, ett_ipmi_picmg_09_ipmba);
|
||||
parse_ipmb_state(tree, tvb, 1, hf_ipmi_picmg_09_ipmbb, ett_ipmi_picmg_09_ipmbb);
|
||||
|
@ -743,7 +743,7 @@ rq09(tvbuff_t *tvb, proto_tree *tree)
|
|||
/* Set FRU Activation Policy
|
||||
*/
|
||||
static void
|
||||
rq0a(tvbuff_t *tvb, proto_tree *tree)
|
||||
rq0a(tvbuff_t *tvb, packet_info *pinfo _U_, proto_tree *tree)
|
||||
{
|
||||
static const int *byte2[] = { &hf_ipmi_picmg_0a_msk_d_locked, &hf_ipmi_picmg_0a_msk_locked, NULL };
|
||||
static const int *byte3[] = { &hf_ipmi_picmg_0a_d_locked, &hf_ipmi_picmg_0a_locked, NULL };
|
||||
|
@ -758,13 +758,13 @@ rq0a(tvbuff_t *tvb, proto_tree *tree)
|
|||
/* Get FRU Activation Policy
|
||||
*/
|
||||
static void
|
||||
rq0b(tvbuff_t *tvb, proto_tree *tree)
|
||||
rq0b(tvbuff_t *tvb, packet_info *pinfo _U_, proto_tree *tree)
|
||||
{
|
||||
proto_tree_add_item(tree, hf_ipmi_picmg_0b_fruid, tvb, 0, 1, ENC_LITTLE_ENDIAN);
|
||||
}
|
||||
|
||||
static void
|
||||
rs0b(tvbuff_t *tvb, proto_tree *tree)
|
||||
rs0b(tvbuff_t *tvb, packet_info *pinfo _U_, proto_tree *tree)
|
||||
{
|
||||
static const int *byte1[] = { &hf_ipmi_picmg_0b_d_locked, &hf_ipmi_picmg_0b_locked, NULL };
|
||||
|
||||
|
@ -776,7 +776,7 @@ rs0b(tvbuff_t *tvb, proto_tree *tree)
|
|||
/* Set FRU Activation
|
||||
*/
|
||||
static void
|
||||
rq0c(tvbuff_t *tvb, proto_tree *tree)
|
||||
rq0c(tvbuff_t *tvb, packet_info *pinfo _U_, proto_tree *tree)
|
||||
{
|
||||
proto_tree_add_item(tree, hf_ipmi_picmg_0c_fruid, tvb, 0, 1, ENC_LITTLE_ENDIAN);
|
||||
proto_tree_add_item(tree, hf_ipmi_picmg_0c_cmd, tvb, 1, 1, ENC_LITTLE_ENDIAN);
|
||||
|
@ -785,7 +785,7 @@ rq0c(tvbuff_t *tvb, proto_tree *tree)
|
|||
/* Get Device Locator Record ID
|
||||
*/
|
||||
static void
|
||||
rq0d(tvbuff_t *tvb, proto_tree *tree)
|
||||
rq0d(tvbuff_t *tvb, packet_info *pinfo _U_, proto_tree *tree)
|
||||
{
|
||||
proto_tree_add_item(tree, hf_ipmi_picmg_0d_fruid, tvb, 0, 1, ENC_LITTLE_ENDIAN);
|
||||
if (tvb_length(tvb) > 1) {
|
||||
|
@ -794,7 +794,7 @@ rq0d(tvbuff_t *tvb, proto_tree *tree)
|
|||
}
|
||||
|
||||
static void
|
||||
rs0d(tvbuff_t *tvb, proto_tree *tree)
|
||||
rs0d(tvbuff_t *tvb, packet_info *pinfo _U_, proto_tree *tree)
|
||||
{
|
||||
proto_tree_add_item(tree, hf_ipmi_picmg_0d_recordid, tvb, 0, 2, ENC_LITTLE_ENDIAN);
|
||||
}
|
||||
|
@ -818,7 +818,7 @@ parse_link_info_state(proto_tree *tree, tvbuff_t *tvb, guint offs, const char *n
|
|||
/* Set Port State
|
||||
*/
|
||||
static void
|
||||
rq0e(tvbuff_t *tvb, proto_tree *tree)
|
||||
rq0e(tvbuff_t *tvb, packet_info *pinfo _U_, proto_tree *tree)
|
||||
{
|
||||
static const value_string state_vals[] = {
|
||||
{ 0x00, "Disable" },
|
||||
|
@ -832,7 +832,7 @@ rq0e(tvbuff_t *tvb, proto_tree *tree)
|
|||
/* Get Port State
|
||||
*/
|
||||
static void
|
||||
rq0f(tvbuff_t *tvb, proto_tree *tree)
|
||||
rq0f(tvbuff_t *tvb, packet_info *pinfo _U_, proto_tree *tree)
|
||||
{
|
||||
static const int *chan[] = { &hf_ipmi_picmg_0f_iface, &hf_ipmi_picmg_0f_chan, NULL };
|
||||
|
||||
|
@ -840,7 +840,7 @@ rq0f(tvbuff_t *tvb, proto_tree *tree)
|
|||
}
|
||||
|
||||
static void
|
||||
rs0f(tvbuff_t *tvb, proto_tree *tree)
|
||||
rs0f(tvbuff_t *tvb, packet_info *pinfo _U_, proto_tree *tree)
|
||||
{
|
||||
static const value_string state_vals[] = {
|
||||
{ 0x00, "Disabled" },
|
||||
|
@ -865,13 +865,13 @@ rs0f(tvbuff_t *tvb, proto_tree *tree)
|
|||
/* Compute Power Properties
|
||||
*/
|
||||
static void
|
||||
rq10(tvbuff_t *tvb, proto_tree *tree)
|
||||
rq10(tvbuff_t *tvb, packet_info *pinfo _U_, proto_tree *tree)
|
||||
{
|
||||
proto_tree_add_item(tree, hf_ipmi_picmg_10_fruid, tvb, 0, 1, ENC_LITTLE_ENDIAN);
|
||||
}
|
||||
|
||||
static void
|
||||
rs10(tvbuff_t *tvb, proto_tree *tree)
|
||||
rs10(tvbuff_t *tvb, packet_info *pinfo _U_, proto_tree *tree)
|
||||
{
|
||||
proto_tree_add_item(tree, hf_ipmi_picmg_10_nslots, tvb, 0, 1, ENC_LITTLE_ENDIAN);
|
||||
proto_tree_add_item(tree, hf_ipmi_picmg_10_ipmc_loc, tvb, 1, 1, ENC_LITTLE_ENDIAN);
|
||||
|
@ -880,7 +880,7 @@ rs10(tvbuff_t *tvb, proto_tree *tree)
|
|||
/* Set Power Level
|
||||
*/
|
||||
static void
|
||||
rq11(tvbuff_t *tvb, proto_tree *tree)
|
||||
rq11(tvbuff_t *tvb, packet_info *pinfo _U_, proto_tree *tree)
|
||||
{
|
||||
static const value_string plvl_vals[] = {
|
||||
{ 0x00, "Power Off" },
|
||||
|
@ -898,14 +898,14 @@ rq11(tvbuff_t *tvb, proto_tree *tree)
|
|||
/* Get Power Level
|
||||
*/
|
||||
static void
|
||||
rq12(tvbuff_t *tvb, proto_tree *tree)
|
||||
rq12(tvbuff_t *tvb, packet_info *pinfo _U_, proto_tree *tree)
|
||||
{
|
||||
proto_tree_add_item(tree, hf_ipmi_picmg_12_fruid, tvb, 0, 1, ENC_LITTLE_ENDIAN);
|
||||
proto_tree_add_item(tree, hf_ipmi_picmg_12_pwr_type, tvb, 1, 1, ENC_LITTLE_ENDIAN);
|
||||
}
|
||||
|
||||
static void
|
||||
rs12(tvbuff_t *tvb, proto_tree *tree)
|
||||
rs12(tvbuff_t *tvb, packet_info *pinfo _U_, proto_tree *tree)
|
||||
{
|
||||
static const int *byte1[] = { &hf_ipmi_picmg_12_dynamic, &hf_ipmi_picmg_12_pwr_lvl, NULL };
|
||||
guint8 v, v2, i, max;
|
||||
|
@ -935,7 +935,7 @@ rs12(tvbuff_t *tvb, proto_tree *tree)
|
|||
/* Renegotiate Power
|
||||
*/
|
||||
static void
|
||||
rq13(tvbuff_t *tvb, proto_tree *tree)
|
||||
rq13(tvbuff_t *tvb, packet_info *pinfo _U_, proto_tree *tree)
|
||||
{
|
||||
if (tvb_length(tvb) > 0) {
|
||||
proto_tree_add_item(tree, hf_ipmi_picmg_13_fruid, tvb, 0, 1, ENC_LITTLE_ENDIAN);
|
||||
|
@ -945,13 +945,13 @@ rq13(tvbuff_t *tvb, proto_tree *tree)
|
|||
/* Get Fan Speed Properties
|
||||
*/
|
||||
static void
|
||||
rq14(tvbuff_t *tvb, proto_tree *tree)
|
||||
rq14(tvbuff_t *tvb, packet_info *pinfo _U_, proto_tree *tree)
|
||||
{
|
||||
proto_tree_add_item(tree, hf_ipmi_picmg_14_fruid, tvb, 0, 1, ENC_LITTLE_ENDIAN);
|
||||
}
|
||||
|
||||
static void
|
||||
rs14(tvbuff_t *tvb, proto_tree *tree)
|
||||
rs14(tvbuff_t *tvb, packet_info *pinfo _U_, proto_tree *tree)
|
||||
{
|
||||
static const int *prop[] = { &hf_ipmi_picmg_14_local_control, NULL };
|
||||
|
||||
|
@ -965,7 +965,7 @@ rs14(tvbuff_t *tvb, proto_tree *tree)
|
|||
/* Set Fan Level
|
||||
*/
|
||||
static void
|
||||
rq15(tvbuff_t *tvb, proto_tree *tree)
|
||||
rq15(tvbuff_t *tvb, packet_info *pinfo _U_, proto_tree *tree)
|
||||
{
|
||||
guint8 v = tvb_get_guint8(tvb, 1);
|
||||
|
||||
|
@ -980,13 +980,13 @@ rq15(tvbuff_t *tvb, proto_tree *tree)
|
|||
/* Get Fan Level
|
||||
*/
|
||||
static void
|
||||
rq16(tvbuff_t *tvb, proto_tree *tree)
|
||||
rq16(tvbuff_t *tvb, packet_info *pinfo _U_, proto_tree *tree)
|
||||
{
|
||||
proto_tree_add_item(tree, hf_ipmi_picmg_16_fruid, tvb, 0, 1, ENC_LITTLE_ENDIAN);
|
||||
}
|
||||
|
||||
static void
|
||||
rs16(tvbuff_t *tvb, proto_tree *tree)
|
||||
rs16(tvbuff_t *tvb, packet_info *pinfo _U_, proto_tree *tree)
|
||||
{
|
||||
guint8 v;
|
||||
|
||||
|
@ -1004,7 +1004,7 @@ rs16(tvbuff_t *tvb, proto_tree *tree)
|
|||
/* Bused Resource Control
|
||||
*/
|
||||
static void
|
||||
rq17(tvbuff_t *tvb, proto_tree *tree)
|
||||
rq17(tvbuff_t *tvb, packet_info *pinfo _U_, proto_tree *tree)
|
||||
{
|
||||
static const value_string vals_17_cmd_fromshmm[] = {
|
||||
{ 0x00, "Query" },
|
||||
|
@ -1037,7 +1037,7 @@ rq17(tvbuff_t *tvb, proto_tree *tree)
|
|||
}
|
||||
|
||||
static void
|
||||
rs17(tvbuff_t *tvb, proto_tree *tree)
|
||||
rs17(tvbuff_t *tvb, packet_info *pinfo _U_, proto_tree *tree)
|
||||
{
|
||||
/* Key is 3 bytes: direction, command, status */
|
||||
static const value_string response_vals[] = {
|
||||
|
@ -1079,14 +1079,14 @@ rs17(tvbuff_t *tvb, proto_tree *tree)
|
|||
/* Get IPMB Link Info
|
||||
*/
|
||||
static void
|
||||
rq18(tvbuff_t *tvb, proto_tree *tree)
|
||||
rq18(tvbuff_t *tvb, packet_info *pinfo _U_, proto_tree *tree)
|
||||
{
|
||||
proto_tree_add_item(tree, hf_ipmi_picmg_18_li_key_type, tvb, 0, 1, ENC_LITTLE_ENDIAN);
|
||||
proto_tree_add_item(tree, hf_ipmi_picmg_18_li_key, tvb, 1, 1, ENC_LITTLE_ENDIAN);
|
||||
}
|
||||
|
||||
static void
|
||||
rs18(tvbuff_t *tvb, proto_tree *tree)
|
||||
rs18(tvbuff_t *tvb, packet_info *pinfo _U_, proto_tree *tree)
|
||||
{
|
||||
proto_tree_add_item(tree, hf_ipmi_picmg_18_link_num, tvb, 0, 1, ENC_LITTLE_ENDIAN);
|
||||
proto_tree_add_item(tree, hf_ipmi_picmg_18_sensor_num, tvb, 1, 1, ENC_LITTLE_ENDIAN);
|
||||
|
@ -1095,7 +1095,7 @@ rs18(tvbuff_t *tvb, proto_tree *tree)
|
|||
/* Get Shelf Manager IPMB Address
|
||||
*/
|
||||
static void
|
||||
rs1b(tvbuff_t *tvb, proto_tree *tree)
|
||||
rs1b(tvbuff_t *tvb, packet_info *pinfo _U_, proto_tree *tree)
|
||||
{
|
||||
proto_tree_add_item(tree, hf_ipmi_picmg_1b_addr_active, tvb, 0, 1, ENC_LITTLE_ENDIAN);
|
||||
proto_tree_add_item(tree, hf_ipmi_picmg_1b_addr_backup, tvb, 0, 1, ENC_LITTLE_ENDIAN);
|
||||
|
@ -1104,7 +1104,7 @@ rs1b(tvbuff_t *tvb, proto_tree *tree)
|
|||
/* Set Fan Policy
|
||||
*/
|
||||
static void
|
||||
rq1c(tvbuff_t *tvb, proto_tree *tree)
|
||||
rq1c(tvbuff_t *tvb, packet_info *pinfo _U_, proto_tree *tree)
|
||||
{
|
||||
proto_tree_add_item(tree, hf_ipmi_picmg_1c_fan_site_number, tvb, 0, 1, ENC_LITTLE_ENDIAN);
|
||||
proto_tree_add_item(tree, hf_ipmi_picmg_1c_fan_enable_state, tvb, 1, 1, ENC_LITTLE_ENDIAN);
|
||||
|
@ -1118,7 +1118,7 @@ rq1c(tvbuff_t *tvb, proto_tree *tree)
|
|||
/* Get Fan Policy
|
||||
*/
|
||||
static void
|
||||
rq1d(tvbuff_t *tvb, proto_tree *tree)
|
||||
rq1d(tvbuff_t *tvb, packet_info *pinfo _U_, proto_tree *tree)
|
||||
{
|
||||
proto_tree_add_item(tree, hf_ipmi_picmg_1d_fan_site_number, tvb, 0, 1, ENC_LITTLE_ENDIAN);
|
||||
if (tvb_length(tvb) > 1) {
|
||||
|
@ -1128,7 +1128,7 @@ rq1d(tvbuff_t *tvb, proto_tree *tree)
|
|||
}
|
||||
|
||||
static void
|
||||
rs1d(tvbuff_t *tvb, proto_tree *tree)
|
||||
rs1d(tvbuff_t *tvb, packet_info *pinfo _U_, proto_tree *tree)
|
||||
{
|
||||
proto_tree_add_item(tree, hf_ipmi_picmg_1d_policy, tvb, 0, 1, ENC_LITTLE_ENDIAN);
|
||||
if (tvb_length(tvb) > 1) {
|
||||
|
@ -1139,13 +1139,13 @@ rs1d(tvbuff_t *tvb, proto_tree *tree)
|
|||
/* FRU Control Capabilities
|
||||
*/
|
||||
static void
|
||||
rq1e(tvbuff_t *tvb, proto_tree *tree)
|
||||
rq1e(tvbuff_t *tvb, packet_info *pinfo _U_, proto_tree *tree)
|
||||
{
|
||||
proto_tree_add_item(tree, hf_ipmi_picmg_1e_fruid, tvb, 0, 1, ENC_LITTLE_ENDIAN);
|
||||
}
|
||||
|
||||
static void
|
||||
rs1e(tvbuff_t *tvb, proto_tree *tree)
|
||||
rs1e(tvbuff_t *tvb, packet_info *pinfo _U_, proto_tree *tree)
|
||||
{
|
||||
static const int *byte1[] = { &hf_ipmi_picmg_1e_cap_diagintr,
|
||||
&hf_ipmi_picmg_1e_cap_graceful_reboot, &hf_ipmi_picmg_1e_cap_warm_reset, NULL };
|
||||
|
@ -1157,7 +1157,7 @@ rs1e(tvbuff_t *tvb, proto_tree *tree)
|
|||
/* FRU Inventory Device Lock Control
|
||||
*/
|
||||
static void
|
||||
rq1f(tvbuff_t *tvb, proto_tree *tree)
|
||||
rq1f(tvbuff_t *tvb, packet_info *pinfo _U_, proto_tree *tree)
|
||||
{
|
||||
proto_tree_add_item(tree, hf_ipmi_picmg_1f_rq_fruid, tvb, 0, 1, ENC_LITTLE_ENDIAN);
|
||||
proto_tree_add_item(tree, hf_ipmi_picmg_1f_rq_op, tvb, 1, 1, ENC_LITTLE_ENDIAN);
|
||||
|
@ -1165,7 +1165,7 @@ rq1f(tvbuff_t *tvb, proto_tree *tree)
|
|||
}
|
||||
|
||||
static void
|
||||
rs1f(tvbuff_t *tvb, proto_tree *tree)
|
||||
rs1f(tvbuff_t *tvb, packet_info *pinfo _U_, proto_tree *tree)
|
||||
{
|
||||
proto_tree_add_item(tree, hf_ipmi_picmg_1f_rs_lockid, tvb, 0, 2, ENC_LITTLE_ENDIAN);
|
||||
ipmi_add_timestamp(tree, hf_ipmi_picmg_1f_rs_tstamp, tvb, 2);
|
||||
|
@ -1180,7 +1180,7 @@ static const value_string cc1f[] = {
|
|||
/* FRU Inventory Device Write
|
||||
*/
|
||||
static void
|
||||
rq20(tvbuff_t *tvb, proto_tree *tree)
|
||||
rq20(tvbuff_t *tvb, packet_info *pinfo _U_, proto_tree *tree)
|
||||
{
|
||||
proto_tree_add_item(tree, hf_ipmi_picmg_20_fruid, tvb, 0, 1, ENC_LITTLE_ENDIAN);
|
||||
proto_tree_add_item(tree, hf_ipmi_picmg_20_lockid, tvb, 1, 2, ENC_LITTLE_ENDIAN);
|
||||
|
@ -1189,7 +1189,7 @@ rq20(tvbuff_t *tvb, proto_tree *tree)
|
|||
}
|
||||
|
||||
static void
|
||||
rs20(tvbuff_t *tvb, proto_tree *tree)
|
||||
rs20(tvbuff_t *tvb, packet_info *pinfo _U_, proto_tree *tree)
|
||||
{
|
||||
proto_tree_add_item(tree, hf_ipmi_picmg_20_count, tvb, 0, 1, ENC_NA);
|
||||
}
|
||||
|
@ -1202,13 +1202,13 @@ static const value_string cc20[] = {
|
|||
/* Get Shelf Manager IP Address
|
||||
*/
|
||||
static void
|
||||
rq21(tvbuff_t *tvb, proto_tree *tree)
|
||||
rq21(tvbuff_t *tvb, packet_info *pinfo _U_, proto_tree *tree)
|
||||
{
|
||||
proto_tree_add_item(tree, hf_ipmi_picmg_21_addr_num, tvb, 0, 1, ENC_LITTLE_ENDIAN);
|
||||
}
|
||||
|
||||
static void
|
||||
rs21(tvbuff_t *tvb, proto_tree *tree)
|
||||
rs21(tvbuff_t *tvb, packet_info *pinfo _U_, proto_tree *tree)
|
||||
{
|
||||
static const int *byte9[] = { &hf_ipmi_picmg_21_is_shm, &hf_ipmi_picmg_21_addr_type, NULL };
|
||||
guint8 addrtype;
|
||||
|
@ -1231,7 +1231,7 @@ rs21(tvbuff_t *tvb, proto_tree *tree)
|
|||
/* Get Shelf Power Allocation
|
||||
*/
|
||||
static void
|
||||
rq22(tvbuff_t *tvb, proto_tree *tree)
|
||||
rq22(tvbuff_t *tvb, packet_info *pinfo _U_, proto_tree *tree)
|
||||
{
|
||||
if (!tree) {
|
||||
ipmi_setsaveddata(0, tvb_get_guint8(tvb, 0));
|
||||
|
@ -1241,7 +1241,7 @@ rq22(tvbuff_t *tvb, proto_tree *tree)
|
|||
}
|
||||
|
||||
static void
|
||||
rs22(tvbuff_t *tvb, proto_tree *tree)
|
||||
rs22(tvbuff_t *tvb, packet_info *pinfo _U_, proto_tree *tree)
|
||||
{
|
||||
guint32 offs = 0;
|
||||
guint16 v;
|
||||
|
@ -1275,7 +1275,7 @@ add_component_bits(proto_tree *tree, tvbuff_t *tvb, guint offs, const char *desc
|
|||
/* Get Target Upgrade Capabilities
|
||||
*/
|
||||
static void
|
||||
rs2e(tvbuff_t *tvb, proto_tree *tree)
|
||||
rs2e(tvbuff_t *tvb, packet_info *pinfo _U_, proto_tree *tree)
|
||||
{
|
||||
static const gint *byte2[] = { &hf_ipmi_picmg_2e_upgrade_undesirable, &hf_ipmi_picmg_2e_auto_rollback_override,
|
||||
&hf_ipmi_picmg_2e_ipmc_degraded, &hf_ipmi_picmg_2e_deferred_activate, &hf_ipmi_picmg_2e_services_affected,
|
||||
|
@ -1342,7 +1342,7 @@ static const struct {
|
|||
};
|
||||
|
||||
static void
|
||||
rq2f(tvbuff_t *tvb, proto_tree *tree)
|
||||
rq2f(tvbuff_t *tvb, packet_info *pinfo _U_, proto_tree *tree)
|
||||
{
|
||||
guint8 pno = tvb_get_guint8(tvb, 1);
|
||||
const char *desc;
|
||||
|
@ -1366,7 +1366,7 @@ rq2f(tvbuff_t *tvb, proto_tree *tree)
|
|||
}
|
||||
|
||||
static void
|
||||
rs2f(tvbuff_t *tvb, proto_tree *tree)
|
||||
rs2f(tvbuff_t *tvb, packet_info *pinfo _U_, proto_tree *tree)
|
||||
{
|
||||
guint32 pno;
|
||||
const char *desc;
|
||||
|
@ -1413,7 +1413,7 @@ static const value_string cc30[] = {
|
|||
/* Initiate upgrade action
|
||||
*/
|
||||
static void
|
||||
rq31(tvbuff_t *tvb, proto_tree *tree)
|
||||
rq31(tvbuff_t *tvb, packet_info *pinfo _U_, proto_tree *tree)
|
||||
{
|
||||
add_component_bits(tree, tvb, 0, "Components: ");
|
||||
proto_tree_add_item(tree, hf_ipmi_picmg_31_action, tvb, 1, 1, ENC_LITTLE_ENDIAN);
|
||||
|
@ -1428,14 +1428,14 @@ static const value_string cc31[] = {
|
|||
/* Upload Firmware Block
|
||||
*/
|
||||
static void
|
||||
rq32(tvbuff_t *tvb, proto_tree *tree)
|
||||
rq32(tvbuff_t *tvb, packet_info *pinfo _U_, proto_tree *tree)
|
||||
{
|
||||
proto_tree_add_item(tree, hf_ipmi_picmg_32_block, tvb, 0, 1, ENC_LITTLE_ENDIAN);
|
||||
proto_tree_add_item(tree, hf_ipmi_picmg_32_data, tvb, 1, tvb_length(tvb) - 1, ENC_NA);
|
||||
}
|
||||
|
||||
static void
|
||||
rs32(tvbuff_t *tvb, proto_tree *tree)
|
||||
rs32(tvbuff_t *tvb, packet_info *pinfo _U_, proto_tree *tree)
|
||||
{
|
||||
if (tvb_length(tvb) > 0) {
|
||||
proto_tree_add_item(tree, hf_ipmi_picmg_32_sec_offs, tvb, 0, 4, ENC_LITTLE_ENDIAN);
|
||||
|
@ -1453,7 +1453,7 @@ static const value_string cc32[] = {
|
|||
/* Finish Firmware Upgrade
|
||||
*/
|
||||
static void
|
||||
rq33(tvbuff_t *tvb, proto_tree *tree)
|
||||
rq33(tvbuff_t *tvb, packet_info *pinfo _U_, proto_tree *tree)
|
||||
{
|
||||
proto_tree_add_item(tree, hf_ipmi_picmg_33_comp_id, tvb, 0, 1, ENC_LITTLE_ENDIAN);
|
||||
proto_tree_add_item(tree, hf_ipmi_picmg_33_img_len, tvb, 1, 4, ENC_LITTLE_ENDIAN);
|
||||
|
@ -1470,7 +1470,7 @@ static const value_string cc33[] = {
|
|||
/* Get Upgrade Status
|
||||
*/
|
||||
static void
|
||||
rs34(tvbuff_t *tvb, proto_tree *tree)
|
||||
rs34(tvbuff_t *tvb, packet_info *pinfo _U_, proto_tree *tree)
|
||||
{
|
||||
static const guint8 sig = 0;
|
||||
static const gint *byte3[] = { &hf_ipmi_picmg_34_percentage, NULL };
|
||||
|
@ -1498,7 +1498,7 @@ static const value_string cc34[] = {
|
|||
/* Activate Firmware
|
||||
*/
|
||||
static void
|
||||
rq35(tvbuff_t *tvb, proto_tree *tree)
|
||||
rq35(tvbuff_t *tvb, packet_info *pinfo _U_, proto_tree *tree)
|
||||
{
|
||||
if (tvb_length(tvb) > 0) {
|
||||
proto_tree_add_item(tree, hf_ipmi_picmg_35_rollback_override, tvb, 0, 1, ENC_LITTLE_ENDIAN);
|
||||
|
@ -1513,7 +1513,7 @@ static const value_string cc35[] = {
|
|||
/* Query Self-test Results
|
||||
*/
|
||||
static void
|
||||
rs36(tvbuff_t *tvb, proto_tree *tree)
|
||||
rs36(tvbuff_t *tvb, packet_info *pinfo _U_, proto_tree *tree)
|
||||
{
|
||||
static const gint *byte2[] = { &hf_ipmi_picmg_36_fail_sel, &hf_ipmi_picmg_36_fail_sdr,
|
||||
&hf_ipmi_picmg_36_fail_bmc_fru, &hf_ipmi_picmg_36_fail_ipmb_sig, &hf_ipmi_picmg_36_fail_sdr_empty,
|
||||
|
@ -1551,7 +1551,7 @@ static const value_string cc36[] = {
|
|||
/* Query Rollback Results
|
||||
*/
|
||||
static void
|
||||
rs37(tvbuff_t *tvb, proto_tree *tree)
|
||||
rs37(tvbuff_t *tvb, packet_info *pinfo _U_, proto_tree *tree)
|
||||
{
|
||||
static const gint *byte2[] = { &hf_ipmi_picmg_37_percent, NULL };
|
||||
const char *desc;
|
||||
|
|
|
@ -2162,7 +2162,7 @@ static const struct true_false_string tfs_2b_enabled = {
|
|||
/* Set event receiver.
|
||||
*/
|
||||
static void
|
||||
rq00(tvbuff_t *tvb, proto_tree *tree)
|
||||
rq00(tvbuff_t *tvb, packet_info *pinfo _U_, proto_tree *tree)
|
||||
{
|
||||
static const int *byte2[] = { &hf_ipmi_se_00_lun, NULL };
|
||||
unsigned int addr;
|
||||
|
@ -2181,7 +2181,7 @@ rq00(tvbuff_t *tvb, proto_tree *tree)
|
|||
/* Get event receiver.
|
||||
*/
|
||||
static void
|
||||
rs01(tvbuff_t *tvb, proto_tree *tree)
|
||||
rs01(tvbuff_t *tvb, packet_info *pinfo _U_, proto_tree *tree)
|
||||
{
|
||||
static const int *byte2[] = { &hf_ipmi_se_01_lun, NULL };
|
||||
unsigned int addr;
|
||||
|
@ -2200,7 +2200,7 @@ rs01(tvbuff_t *tvb, proto_tree *tree)
|
|||
/* Platform event.
|
||||
*/
|
||||
static void
|
||||
rq02(tvbuff_t *tvb, proto_tree *tree)
|
||||
rq02(tvbuff_t *tvb, packet_info *pinfo _U_, proto_tree *tree)
|
||||
{
|
||||
parse_platform_event(tvb, tree);
|
||||
}
|
||||
|
@ -2208,7 +2208,7 @@ rq02(tvbuff_t *tvb, proto_tree *tree)
|
|||
/* Get PEF capabilities.
|
||||
*/
|
||||
static void
|
||||
rs10(tvbuff_t *tvb, proto_tree *tree)
|
||||
rs10(tvbuff_t *tvb, packet_info *pinfo _U_, proto_tree *tree)
|
||||
{
|
||||
static const int *byte2[] = { &hf_ipmi_se_10_action_oem_filter, &hf_ipmi_se_10_action_diag_intr,
|
||||
&hf_ipmi_se_10_action_oem_action, &hf_ipmi_se_10_action_pwr_cycle, &hf_ipmi_se_10_action_reset,
|
||||
|
@ -2223,7 +2223,7 @@ rs10(tvbuff_t *tvb, proto_tree *tree)
|
|||
/* Arm PEF Postpone Timer.
|
||||
*/
|
||||
static void
|
||||
rq11(tvbuff_t *tvb, proto_tree *tree)
|
||||
rq11(tvbuff_t *tvb, packet_info *pinfo _U_, proto_tree *tree)
|
||||
{
|
||||
guint8 val;
|
||||
|
||||
|
@ -2233,7 +2233,7 @@ rq11(tvbuff_t *tvb, proto_tree *tree)
|
|||
}
|
||||
|
||||
static void
|
||||
rs11(tvbuff_t *tvb, proto_tree *tree)
|
||||
rs11(tvbuff_t *tvb, packet_info *pinfo _U_, proto_tree *tree)
|
||||
{
|
||||
guint8 val;
|
||||
|
||||
|
@ -2245,7 +2245,7 @@ rs11(tvbuff_t *tvb, proto_tree *tree)
|
|||
/* Set PEF Configuration Parameters.
|
||||
*/
|
||||
static void
|
||||
rq12(tvbuff_t *tvb, proto_tree *tree)
|
||||
rq12(tvbuff_t *tvb, packet_info *pinfo _U_, proto_tree *tree)
|
||||
{
|
||||
proto_item *ti;
|
||||
proto_tree *s_tree;
|
||||
|
@ -2288,7 +2288,7 @@ static const value_string cc12[] = {
|
|||
/* Get PEF Configuration Parameters.
|
||||
*/
|
||||
static void
|
||||
rq13(tvbuff_t *tvb, proto_tree *tree)
|
||||
rq13(tvbuff_t *tvb, packet_info *pinfo _U_, proto_tree *tree)
|
||||
{
|
||||
proto_item *ti;
|
||||
proto_tree *s_tree;
|
||||
|
@ -2325,7 +2325,7 @@ rq13(tvbuff_t *tvb, proto_tree *tree)
|
|||
}
|
||||
|
||||
static void
|
||||
rs13(tvbuff_t *tvb, proto_tree *tree)
|
||||
rs13(tvbuff_t *tvb, packet_info *pinfo _U_, proto_tree *tree)
|
||||
{
|
||||
static const int *byte1[] = { &hf_ipmi_se_13_rev_present, &hf_ipmi_se_13_rev_compat, NULL };
|
||||
proto_item *ti;
|
||||
|
@ -2382,7 +2382,7 @@ static const value_string cc13[] = {
|
|||
/* Set Last Processed Event ID Command.
|
||||
*/
|
||||
static void
|
||||
rq14(tvbuff_t *tvb, proto_tree *tree)
|
||||
rq14(tvbuff_t *tvb, packet_info *pinfo _U_, proto_tree *tree)
|
||||
{
|
||||
static const gint *byte1[] = { &hf_ipmi_se_14_processed_by, NULL };
|
||||
|
||||
|
@ -2398,7 +2398,7 @@ static const value_string cc14[] = {
|
|||
/* Get Last Processed Event ID Command.
|
||||
*/
|
||||
static void
|
||||
rs15(tvbuff_t *tvb, proto_tree *tree)
|
||||
rs15(tvbuff_t *tvb, packet_info *pinfo _U_, proto_tree *tree)
|
||||
{
|
||||
guint16 tmp;
|
||||
|
||||
|
@ -2428,7 +2428,7 @@ static const value_string cc15[] = {
|
|||
/* Alert Immediate.
|
||||
*/
|
||||
static void
|
||||
rq16(tvbuff_t *tvb, proto_tree *tree)
|
||||
rq16(tvbuff_t *tvb, packet_info *pinfo _U_, proto_tree *tree)
|
||||
{
|
||||
static const gint *byte1[] = { &hf_ipmi_se_16_chan, NULL };
|
||||
static const gint *byte2[] = { &hf_ipmi_se_16_op, &hf_ipmi_se_16_dst, NULL };
|
||||
|
@ -2452,7 +2452,7 @@ rq16(tvbuff_t *tvb, proto_tree *tree)
|
|||
}
|
||||
|
||||
static void
|
||||
rs16(tvbuff_t *tvb, proto_tree *tree)
|
||||
rs16(tvbuff_t *tvb, packet_info *pinfo _U_, proto_tree *tree)
|
||||
{
|
||||
guint32 val;
|
||||
|
||||
|
@ -2472,7 +2472,7 @@ static const value_string cc16[] = {
|
|||
/* PET Acknowledge.
|
||||
*/
|
||||
static void
|
||||
rq17(tvbuff_t *tvb, proto_tree *tree)
|
||||
rq17(tvbuff_t *tvb, packet_info *pinfo _U_, proto_tree *tree)
|
||||
{
|
||||
proto_tree_add_item(tree, hf_ipmi_se_17_seq, tvb, 0, 2, ENC_LITTLE_ENDIAN);
|
||||
ipmi_add_timestamp(tree, hf_ipmi_se_17_tstamp, tvb, 2);
|
||||
|
@ -2487,7 +2487,7 @@ rq17(tvbuff_t *tvb, proto_tree *tree)
|
|||
/* Get Device SDR Info.
|
||||
*/
|
||||
static void
|
||||
rq20(tvbuff_t *tvb, proto_tree *tree)
|
||||
rq20(tvbuff_t *tvb, packet_info *pinfo _U_, proto_tree *tree)
|
||||
{
|
||||
static const int *byte1[] = { &hf_ipmi_se_20_rq_op, NULL };
|
||||
|
||||
|
@ -2499,7 +2499,7 @@ rq20(tvbuff_t *tvb, proto_tree *tree)
|
|||
}
|
||||
|
||||
static void
|
||||
rs20(tvbuff_t *tvb, proto_tree *tree)
|
||||
rs20(tvbuff_t *tvb, packet_info *pinfo _U_, proto_tree *tree)
|
||||
{
|
||||
static const int *byte2[] = { &hf_ipmi_se_20_rs_population, &hf_ipmi_se_20_rs_lun3,
|
||||
&hf_ipmi_se_20_rs_lun2, &hf_ipmi_se_20_rs_lun1, &hf_ipmi_se_20_rs_lun0, NULL };
|
||||
|
@ -2522,7 +2522,7 @@ rs20(tvbuff_t *tvb, proto_tree *tree)
|
|||
/* Get Device SDR.
|
||||
*/
|
||||
static void
|
||||
rq21(tvbuff_t *tvb, proto_tree *tree)
|
||||
rq21(tvbuff_t *tvb, packet_info *pinfo _U_, proto_tree *tree)
|
||||
{
|
||||
guint8 len;
|
||||
|
||||
|
@ -2536,7 +2536,7 @@ rq21(tvbuff_t *tvb, proto_tree *tree)
|
|||
}
|
||||
|
||||
static void
|
||||
rs21(tvbuff_t *tvb, proto_tree *tree)
|
||||
rs21(tvbuff_t *tvb, packet_info *pinfo _U_, proto_tree *tree)
|
||||
{
|
||||
proto_tree_add_item(tree, hf_ipmi_se_21_next, tvb, 0, 2, ENC_LITTLE_ENDIAN);
|
||||
proto_tree_add_item(tree, hf_ipmi_se_21_recdata, tvb, 2, tvb_length(tvb) - 2, ENC_NA);
|
||||
|
@ -2550,7 +2550,7 @@ static const value_string cc21[] = {
|
|||
/* Reserve Device SDR Repository.
|
||||
*/
|
||||
static void
|
||||
rs22(tvbuff_t *tvb, proto_tree *tree)
|
||||
rs22(tvbuff_t *tvb, packet_info *pinfo _U_, proto_tree *tree)
|
||||
{
|
||||
proto_tree_add_item(tree, hf_ipmi_se_22_resid, tvb, 0, 2, ENC_LITTLE_ENDIAN);
|
||||
}
|
||||
|
@ -2558,7 +2558,7 @@ rs22(tvbuff_t *tvb, proto_tree *tree)
|
|||
/* Get Sensor Reading Factors.
|
||||
*/
|
||||
static void
|
||||
rq23(tvbuff_t *tvb, proto_tree *tree)
|
||||
rq23(tvbuff_t *tvb, packet_info *pinfo _U_, proto_tree *tree)
|
||||
{
|
||||
proto_tree_add_item(tree, hf_ipmi_se_23_rq_sensor, tvb, 0, 1, ENC_LITTLE_ENDIAN);
|
||||
proto_tree_add_item(tree, hf_ipmi_se_23_rq_reading, tvb, 1, 1, ENC_LITTLE_ENDIAN);
|
||||
|
@ -2575,7 +2575,7 @@ sign_extend(gint16 v, int bits)
|
|||
}
|
||||
|
||||
static void
|
||||
rs23(tvbuff_t *tvb, proto_tree *tree)
|
||||
rs23(tvbuff_t *tvb, packet_info *pinfo _U_, proto_tree *tree)
|
||||
{
|
||||
proto_item *ti;
|
||||
proto_tree *s_tree, *st2;
|
||||
|
@ -2646,7 +2646,7 @@ rs23(tvbuff_t *tvb, proto_tree *tree)
|
|||
/* Set Sensor Hysteresis.
|
||||
*/
|
||||
static void
|
||||
rq24(tvbuff_t *tvb, proto_tree *tree)
|
||||
rq24(tvbuff_t *tvb, packet_info *pinfo _U_, proto_tree *tree)
|
||||
{
|
||||
proto_tree_add_item(tree, hf_ipmi_se_24_sensor, tvb, 0, 1, ENC_LITTLE_ENDIAN);
|
||||
proto_tree_add_item(tree, hf_ipmi_se_24_mask, tvb, 1, 1, ENC_LITTLE_ENDIAN);
|
||||
|
@ -2657,14 +2657,14 @@ rq24(tvbuff_t *tvb, proto_tree *tree)
|
|||
/* Get Sensor Hysteresis.
|
||||
*/
|
||||
static void
|
||||
rq25(tvbuff_t *tvb, proto_tree *tree)
|
||||
rq25(tvbuff_t *tvb, packet_info *pinfo _U_, proto_tree *tree)
|
||||
{
|
||||
proto_tree_add_item(tree, hf_ipmi_se_25_sensor, tvb, 0, 1, ENC_LITTLE_ENDIAN);
|
||||
proto_tree_add_item(tree, hf_ipmi_se_25_mask, tvb, 1, 1, ENC_LITTLE_ENDIAN);
|
||||
}
|
||||
|
||||
static void
|
||||
rs25(tvbuff_t *tvb, proto_tree *tree)
|
||||
rs25(tvbuff_t *tvb, packet_info *pinfo _U_, proto_tree *tree)
|
||||
{
|
||||
proto_tree_add_item(tree, hf_ipmi_se_25_hyst_pos, tvb, 0, 1, ENC_LITTLE_ENDIAN);
|
||||
proto_tree_add_item(tree, hf_ipmi_se_25_hyst_neg, tvb, 1, 1, ENC_LITTLE_ENDIAN);
|
||||
|
@ -2690,7 +2690,7 @@ add_thresholds(tvbuff_t *tvb, int offs, proto_tree *tree, const char *desc)
|
|||
/* Set Sensor Thresholds.
|
||||
*/
|
||||
static void
|
||||
rq26(tvbuff_t *tvb, proto_tree *tree)
|
||||
rq26(tvbuff_t *tvb, packet_info *pinfo _U_, proto_tree *tree)
|
||||
{
|
||||
proto_tree_add_item(tree, hf_ipmi_se_26_sensor, tvb, 0, 1, ENC_LITTLE_ENDIAN);
|
||||
add_thresholds(tvb, 1, tree, "Set thresholds: ");
|
||||
|
@ -2699,13 +2699,13 @@ rq26(tvbuff_t *tvb, proto_tree *tree)
|
|||
/* Get Sensor Thresholds.
|
||||
*/
|
||||
static void
|
||||
rq27(tvbuff_t *tvb, proto_tree *tree)
|
||||
rq27(tvbuff_t *tvb, packet_info *pinfo _U_, proto_tree *tree)
|
||||
{
|
||||
proto_tree_add_item(tree, hf_ipmi_se_27_sensor, tvb, 0, 1, ENC_LITTLE_ENDIAN);
|
||||
}
|
||||
|
||||
static void
|
||||
rs27(tvbuff_t *tvb, proto_tree *tree)
|
||||
rs27(tvbuff_t *tvb, packet_info *pinfo _U_, proto_tree *tree)
|
||||
{
|
||||
add_thresholds(tvb, 0, tree, "Readable thresholds: ");
|
||||
}
|
||||
|
@ -2751,7 +2751,7 @@ add_events(tvbuff_t *tvb, int offs, proto_tree *tree, const struct true_false_st
|
|||
/* Set Sensor Event Enable.
|
||||
*/
|
||||
static void
|
||||
rq28(tvbuff_t *tvb, proto_tree *tree)
|
||||
rq28(tvbuff_t *tvb, packet_info *pinfo _U_, proto_tree *tree)
|
||||
{
|
||||
static const int *byte2[] = { &hf_ipmi_se_28_fl_evm, &hf_ipmi_se_28_fl_scan, &hf_ipmi_se_28_fl_action, NULL };
|
||||
static const struct true_false_string tfs_lect = { "Select", "Do not select" };
|
||||
|
@ -2764,13 +2764,13 @@ rq28(tvbuff_t *tvb, proto_tree *tree)
|
|||
/* Get Sensor Event Enable.
|
||||
*/
|
||||
static void
|
||||
rq29(tvbuff_t *tvb, proto_tree *tree)
|
||||
rq29(tvbuff_t *tvb, packet_info *pinfo _U_, proto_tree *tree)
|
||||
{
|
||||
proto_tree_add_item(tree, hf_ipmi_se_29_sensor, tvb, 0, 1, ENC_LITTLE_ENDIAN);
|
||||
}
|
||||
|
||||
static void
|
||||
rs29(tvbuff_t *tvb, proto_tree *tree)
|
||||
rs29(tvbuff_t *tvb, packet_info *pinfo _U_, proto_tree *tree)
|
||||
{
|
||||
static const int *byte1[] = { &hf_ipmi_se_29_fl_evm, &hf_ipmi_se_29_fl_scan, NULL };
|
||||
|
||||
|
@ -2781,7 +2781,7 @@ rs29(tvbuff_t *tvb, proto_tree *tree)
|
|||
/* Re-arm Sensor Events.
|
||||
*/
|
||||
static void
|
||||
rq2a(tvbuff_t *tvb, proto_tree *tree)
|
||||
rq2a(tvbuff_t *tvb, packet_info *pinfo _U_, proto_tree *tree)
|
||||
{
|
||||
static const int *byte2[] = { &hf_ipmi_se_2a_fl_sel, NULL };
|
||||
static const struct true_false_string rearm_tfs = { "Re-arm", "Do not re-arm" };
|
||||
|
@ -2794,13 +2794,13 @@ rq2a(tvbuff_t *tvb, proto_tree *tree)
|
|||
/* Get Sensor Event Status.
|
||||
*/
|
||||
static void
|
||||
rq2b(tvbuff_t *tvb, proto_tree *tree)
|
||||
rq2b(tvbuff_t *tvb, packet_info *pinfo _U_, proto_tree *tree)
|
||||
{
|
||||
proto_tree_add_item(tree, hf_ipmi_se_2b_sensor, tvb, 0, 1, ENC_LITTLE_ENDIAN);
|
||||
}
|
||||
|
||||
static void
|
||||
rs2b(tvbuff_t *tvb, proto_tree *tree)
|
||||
rs2b(tvbuff_t *tvb, packet_info *pinfo _U_, proto_tree *tree)
|
||||
{
|
||||
static const int *byte1[] = { &hf_ipmi_se_2b_fl_evm, &hf_ipmi_se_2b_fl_scan, &hf_ipmi_se_2b_fl_unavail, NULL };
|
||||
static const struct true_false_string occur_tfs = { "Occurred", "Did not occur" };
|
||||
|
@ -2812,13 +2812,13 @@ rs2b(tvbuff_t *tvb, proto_tree *tree)
|
|||
/* Get Sensor Reading.
|
||||
*/
|
||||
static void
|
||||
rq2d(tvbuff_t *tvb, proto_tree *tree)
|
||||
rq2d(tvbuff_t *tvb, packet_info *pinfo _U_, proto_tree *tree)
|
||||
{
|
||||
proto_tree_add_item(tree, hf_ipmi_se_2d_sensor, tvb, 0, 1, ENC_LITTLE_ENDIAN);
|
||||
}
|
||||
|
||||
static void
|
||||
rs2d(tvbuff_t *tvb, proto_tree *tree)
|
||||
rs2d(tvbuff_t *tvb, packet_info *pinfo _U_, proto_tree *tree)
|
||||
{
|
||||
/* Reuse flags from Event Status message */
|
||||
static const int *byte2[] = { &hf_ipmi_se_2b_fl_evm, &hf_ipmi_se_2b_fl_scan, &hf_ipmi_se_2b_fl_unavail, NULL };
|
||||
|
@ -2850,7 +2850,7 @@ rs2d(tvbuff_t *tvb, proto_tree *tree)
|
|||
/* Set Sensor Type.
|
||||
*/
|
||||
static void
|
||||
rq2e(tvbuff_t *tvb, proto_tree *tree)
|
||||
rq2e(tvbuff_t *tvb, packet_info *pinfo _U_, proto_tree *tree)
|
||||
{
|
||||
guint8 stype, evtype;
|
||||
const struct sensor_info *si;
|
||||
|
@ -2876,13 +2876,13 @@ rq2e(tvbuff_t *tvb, proto_tree *tree)
|
|||
/* Get Sensor Type.
|
||||
*/
|
||||
static void
|
||||
rq2f(tvbuff_t *tvb, proto_tree *tree)
|
||||
rq2f(tvbuff_t *tvb, packet_info *pinfo _U_, proto_tree *tree)
|
||||
{
|
||||
proto_tree_add_item(tree, hf_ipmi_se_2f_sensor, tvb, 0, 1, ENC_LITTLE_ENDIAN);
|
||||
}
|
||||
|
||||
static void
|
||||
rs2f(tvbuff_t *tvb, proto_tree *tree)
|
||||
rs2f(tvbuff_t *tvb, packet_info *pinfo _U_, proto_tree *tree)
|
||||
{
|
||||
guint8 stype, evtype;
|
||||
const struct sensor_info *si;
|
||||
|
|
|
@ -242,13 +242,13 @@ static const value_string log_type_vals[] = {
|
|||
/* Get FRU Inventory Area Info
|
||||
*/
|
||||
static void
|
||||
rq10(tvbuff_t *tvb, proto_tree *tree)
|
||||
rq10(tvbuff_t *tvb, packet_info *pinfo _U_, proto_tree *tree)
|
||||
{
|
||||
proto_tree_add_item(tree, hf_ipmi_stor_10_fruid, tvb, 0, 1, ENC_LITTLE_ENDIAN);
|
||||
}
|
||||
|
||||
static void
|
||||
rs10(tvbuff_t *tvb, proto_tree *tree)
|
||||
rs10(tvbuff_t *tvb, packet_info *pinfo _U_, proto_tree *tree)
|
||||
{
|
||||
static const int *flags[] = { &hf_ipmi_stor_10_access, NULL };
|
||||
|
||||
|
@ -259,7 +259,7 @@ rs10(tvbuff_t *tvb, proto_tree *tree)
|
|||
/* Read FRU Data
|
||||
*/
|
||||
static void
|
||||
rq11(tvbuff_t *tvb, proto_tree *tree)
|
||||
rq11(tvbuff_t *tvb, packet_info *pinfo _U_, proto_tree *tree)
|
||||
{
|
||||
proto_tree_add_item(tree, hf_ipmi_stor_11_fruid, tvb, 0, 1, ENC_LITTLE_ENDIAN);
|
||||
proto_tree_add_item(tree, hf_ipmi_stor_11_offset, tvb, 1, 2, ENC_LITTLE_ENDIAN);
|
||||
|
@ -267,7 +267,7 @@ rq11(tvbuff_t *tvb, proto_tree *tree)
|
|||
}
|
||||
|
||||
static void
|
||||
rs11(tvbuff_t *tvb, proto_tree *tree)
|
||||
rs11(tvbuff_t *tvb, packet_info *pinfo _U_, proto_tree *tree)
|
||||
{
|
||||
proto_tree_add_item(tree, hf_ipmi_stor_11_ret_count, tvb, 0, 1, ENC_LITTLE_ENDIAN);
|
||||
proto_tree_add_item(tree, hf_ipmi_stor_11_data, tvb, 1, tvb_length(tvb) - 1, ENC_NA);
|
||||
|
@ -281,7 +281,7 @@ static const value_string cc11[] = {
|
|||
/* Write FRU Data
|
||||
*/
|
||||
static void
|
||||
rq12(tvbuff_t *tvb, proto_tree *tree)
|
||||
rq12(tvbuff_t *tvb, packet_info *pinfo _U_, proto_tree *tree)
|
||||
{
|
||||
proto_tree_add_item(tree, hf_ipmi_stor_12_fruid, tvb, 0, 1, ENC_LITTLE_ENDIAN);
|
||||
proto_tree_add_item(tree, hf_ipmi_stor_12_offset, tvb, 1, 2, ENC_LITTLE_ENDIAN);
|
||||
|
@ -289,7 +289,7 @@ rq12(tvbuff_t *tvb, proto_tree *tree)
|
|||
}
|
||||
|
||||
static void
|
||||
rs12(tvbuff_t *tvb, proto_tree *tree)
|
||||
rs12(tvbuff_t *tvb, packet_info *pinfo _U_, proto_tree *tree)
|
||||
{
|
||||
proto_tree_add_item(tree, hf_ipmi_stor_12_ret_count, tvb, 0, 1, ENC_LITTLE_ENDIAN);
|
||||
}
|
||||
|
@ -303,7 +303,7 @@ static const value_string cc12[] = {
|
|||
/* Get SDR Repository Info
|
||||
*/
|
||||
static void
|
||||
rs20(tvbuff_t *tvb, proto_tree *tree)
|
||||
rs20(tvbuff_t *tvb, packet_info *pinfo _U_, proto_tree *tree)
|
||||
{
|
||||
static const int *ops[] = { &hf_ipmi_stor_20_op_overflow, &hf_ipmi_stor_20_op_update,
|
||||
&hf_ipmi_stor_20_op_delete, &hf_ipmi_stor_20_op_partial_add, &hf_ipmi_stor_20_op_reserve,
|
||||
|
@ -321,7 +321,7 @@ rs20(tvbuff_t *tvb, proto_tree *tree)
|
|||
/* Get SDR Repository Allocation Info
|
||||
*/
|
||||
static void
|
||||
rs21(tvbuff_t *tvb, proto_tree *tree)
|
||||
rs21(tvbuff_t *tvb, packet_info *pinfo _U_, proto_tree *tree)
|
||||
{
|
||||
proto_tree_add_item(tree, hf_ipmi_stor_21_units, tvb, 0, 2, ENC_LITTLE_ENDIAN);
|
||||
proto_tree_add_item(tree, hf_ipmi_stor_21_size, tvb, 2, 2, ENC_LITTLE_ENDIAN);
|
||||
|
@ -333,7 +333,7 @@ rs21(tvbuff_t *tvb, proto_tree *tree)
|
|||
/* Reserve SDR Repository
|
||||
*/
|
||||
static void
|
||||
rs22(tvbuff_t *tvb, proto_tree *tree)
|
||||
rs22(tvbuff_t *tvb, packet_info *pinfo _U_, proto_tree *tree)
|
||||
{
|
||||
proto_tree_add_item(tree, hf_ipmi_stor_22_rsrv_id, tvb, 0, 2, ENC_LITTLE_ENDIAN);
|
||||
}
|
||||
|
@ -341,7 +341,7 @@ rs22(tvbuff_t *tvb, proto_tree *tree)
|
|||
/* Get SDR
|
||||
*/
|
||||
static void
|
||||
rq23(tvbuff_t *tvb, proto_tree *tree)
|
||||
rq23(tvbuff_t *tvb, packet_info *pinfo _U_, proto_tree *tree)
|
||||
{
|
||||
guint8 v = tvb_get_guint8(tvb, 5);
|
||||
|
||||
|
@ -353,7 +353,7 @@ rq23(tvbuff_t *tvb, proto_tree *tree)
|
|||
}
|
||||
|
||||
static void
|
||||
rs23(tvbuff_t *tvb, proto_tree *tree)
|
||||
rs23(tvbuff_t *tvb, packet_info *pinfo _U_, proto_tree *tree)
|
||||
{
|
||||
proto_tree_add_item(tree, hf_ipmi_stor_23_next, tvb, 0, 2, ENC_LITTLE_ENDIAN);
|
||||
proto_tree_add_item(tree, hf_ipmi_stor_23_data, tvb, 2, tvb_length(tvb) - 2, ENC_NA);
|
||||
|
@ -362,13 +362,13 @@ rs23(tvbuff_t *tvb, proto_tree *tree)
|
|||
/* Add SDR
|
||||
*/
|
||||
static void
|
||||
rq24(tvbuff_t *tvb, proto_tree *tree)
|
||||
rq24(tvbuff_t *tvb, packet_info *pinfo _U_, proto_tree *tree)
|
||||
{
|
||||
proto_tree_add_item(tree, hf_ipmi_stor_24_data, tvb, 0, tvb_length(tvb), ENC_NA);
|
||||
}
|
||||
|
||||
static void
|
||||
rs24(tvbuff_t *tvb, proto_tree *tree)
|
||||
rs24(tvbuff_t *tvb, packet_info *pinfo _U_, proto_tree *tree)
|
||||
{
|
||||
proto_tree_add_item(tree, hf_ipmi_stor_24_added_rec_id, tvb, 0, 2, ENC_LITTLE_ENDIAN);
|
||||
}
|
||||
|
@ -376,7 +376,7 @@ rs24(tvbuff_t *tvb, proto_tree *tree)
|
|||
/* Partial Add SDR
|
||||
*/
|
||||
static void
|
||||
rq25(tvbuff_t *tvb, proto_tree *tree)
|
||||
rq25(tvbuff_t *tvb, packet_info *pinfo _U_, proto_tree *tree)
|
||||
{
|
||||
static const int *byte6[] = { &hf_ipmi_stor_25_inprogress, NULL };
|
||||
|
||||
|
@ -389,7 +389,7 @@ rq25(tvbuff_t *tvb, proto_tree *tree)
|
|||
}
|
||||
|
||||
static void
|
||||
rs25(tvbuff_t *tvb, proto_tree *tree)
|
||||
rs25(tvbuff_t *tvb, packet_info *pinfo _U_, proto_tree *tree)
|
||||
{
|
||||
proto_tree_add_item(tree, hf_ipmi_stor_25_added_rec_id, tvb, 0, 2, ENC_LITTLE_ENDIAN);
|
||||
}
|
||||
|
@ -402,14 +402,14 @@ static const value_string cc25[] = {
|
|||
/* Delete SDR
|
||||
*/
|
||||
static void
|
||||
rq26(tvbuff_t *tvb, proto_tree *tree)
|
||||
rq26(tvbuff_t *tvb, packet_info *pinfo _U_, proto_tree *tree)
|
||||
{
|
||||
proto_tree_add_item(tree, hf_ipmi_stor_25_rsrv_id, tvb, 0, 2, ENC_LITTLE_ENDIAN);
|
||||
proto_tree_add_item(tree, hf_ipmi_stor_25_rec_id, tvb, 2, 2, ENC_LITTLE_ENDIAN);
|
||||
}
|
||||
|
||||
static void
|
||||
rs26(tvbuff_t *tvb, proto_tree *tree)
|
||||
rs26(tvbuff_t *tvb, packet_info *pinfo _U_, proto_tree *tree)
|
||||
{
|
||||
proto_tree_add_item(tree, hf_ipmi_stor_26_del_rec_id, tvb, 0, 2, ENC_LITTLE_ENDIAN);
|
||||
}
|
||||
|
@ -417,7 +417,7 @@ rs26(tvbuff_t *tvb, proto_tree *tree)
|
|||
/* Clear SDR Repository
|
||||
*/
|
||||
static void
|
||||
rq27(tvbuff_t *tvb, proto_tree *tree)
|
||||
rq27(tvbuff_t *tvb, packet_info *pinfo _U_, proto_tree *tree)
|
||||
{
|
||||
proto_tree_add_item(tree, hf_ipmi_stor_27_rsrv_id, tvb, 0, 2, ENC_LITTLE_ENDIAN);
|
||||
proto_tree_add_item(tree, hf_ipmi_stor_27_clr, tvb, 2, 3, ENC_ASCII|ENC_NA);
|
||||
|
@ -425,7 +425,7 @@ rq27(tvbuff_t *tvb, proto_tree *tree)
|
|||
}
|
||||
|
||||
static void
|
||||
rs27(tvbuff_t *tvb, proto_tree *tree)
|
||||
rs27(tvbuff_t *tvb, packet_info *pinfo _U_, proto_tree *tree)
|
||||
{
|
||||
static const int *status[] = { &hf_ipmi_stor_27_status, NULL };
|
||||
|
||||
|
@ -436,7 +436,7 @@ rs27(tvbuff_t *tvb, proto_tree *tree)
|
|||
/* Get SDR Repository Time
|
||||
*/
|
||||
static void
|
||||
rs28(tvbuff_t *tvb, proto_tree *tree)
|
||||
rs28(tvbuff_t *tvb, packet_info *pinfo _U_, proto_tree *tree)
|
||||
{
|
||||
ipmi_add_timestamp(tree, hf_ipmi_stor_28_time, tvb, 0);
|
||||
}
|
||||
|
@ -444,7 +444,7 @@ rs28(tvbuff_t *tvb, proto_tree *tree)
|
|||
/* Set SDR Repository Time
|
||||
*/
|
||||
static void
|
||||
rq29(tvbuff_t *tvb, proto_tree *tree)
|
||||
rq29(tvbuff_t *tvb, packet_info *pinfo _U_, proto_tree *tree)
|
||||
{
|
||||
ipmi_add_timestamp(tree, hf_ipmi_stor_29_time, tvb, 0);
|
||||
}
|
||||
|
@ -452,7 +452,7 @@ rq29(tvbuff_t *tvb, proto_tree *tree)
|
|||
/* Run Initialization Agent
|
||||
*/
|
||||
static void
|
||||
rq2c(tvbuff_t *tvb, proto_tree *tree)
|
||||
rq2c(tvbuff_t *tvb, packet_info *pinfo _U_, proto_tree *tree)
|
||||
{
|
||||
static const int *byte1[] = { &hf_ipmi_stor_2c_init_agent, NULL };
|
||||
|
||||
|
@ -461,7 +461,7 @@ rq2c(tvbuff_t *tvb, proto_tree *tree)
|
|||
}
|
||||
|
||||
static void
|
||||
rs2c(tvbuff_t *tvb, proto_tree *tree)
|
||||
rs2c(tvbuff_t *tvb, packet_info *pinfo _U_, proto_tree *tree)
|
||||
{
|
||||
static const int *byte1[] = { &hf_ipmi_stor_2c_init_state, NULL };
|
||||
|
||||
|
@ -472,7 +472,7 @@ rs2c(tvbuff_t *tvb, proto_tree *tree)
|
|||
/* Get SEL Info
|
||||
*/
|
||||
static void
|
||||
rs40(tvbuff_t *tvb, proto_tree *tree)
|
||||
rs40(tvbuff_t *tvb, packet_info *pinfo _U_, proto_tree *tree)
|
||||
{
|
||||
static const int *ops[] = { &hf_ipmi_stor_40_op_overflow, &hf_ipmi_stor_40_op_delete,
|
||||
&hf_ipmi_stor_40_op_partial_add, &hf_ipmi_stor_40_op_reserve, &hf_ipmi_stor_40_op_allocinfo, NULL };
|
||||
|
@ -494,7 +494,7 @@ static const value_string cc40[] = {
|
|||
/* Get SEL Allocation Info
|
||||
*/
|
||||
static void
|
||||
rs41(tvbuff_t *tvb, proto_tree *tree)
|
||||
rs41(tvbuff_t *tvb, packet_info *pinfo _U_, proto_tree *tree)
|
||||
{
|
||||
proto_tree_add_item(tree, hf_ipmi_stor_41_units, tvb, 0, 2, ENC_LITTLE_ENDIAN);
|
||||
proto_tree_add_item(tree, hf_ipmi_stor_41_size, tvb, 2, 2, ENC_LITTLE_ENDIAN);
|
||||
|
@ -506,7 +506,7 @@ rs41(tvbuff_t *tvb, proto_tree *tree)
|
|||
/* Reserve SEL
|
||||
*/
|
||||
static void
|
||||
rs42(tvbuff_t *tvb, proto_tree *tree)
|
||||
rs42(tvbuff_t *tvb, packet_info *pinfo _U_, proto_tree *tree)
|
||||
{
|
||||
proto_tree_add_item(tree, hf_ipmi_stor_42_rsrv_id, tvb, 0, 2, ENC_LITTLE_ENDIAN);
|
||||
}
|
||||
|
@ -519,7 +519,7 @@ static const value_string cc42[] = {
|
|||
/* Get SEL Entry
|
||||
*/
|
||||
static void
|
||||
rq43(tvbuff_t *tvb, proto_tree *tree)
|
||||
rq43(tvbuff_t *tvb, packet_info *pinfo _U_, proto_tree *tree)
|
||||
{
|
||||
guint8 v = tvb_get_guint8(tvb, 5);
|
||||
|
||||
|
@ -531,7 +531,7 @@ rq43(tvbuff_t *tvb, proto_tree *tree)
|
|||
}
|
||||
|
||||
static void
|
||||
rs43(tvbuff_t *tvb, proto_tree *tree)
|
||||
rs43(tvbuff_t *tvb, packet_info *pinfo _U_, proto_tree *tree)
|
||||
{
|
||||
proto_tree_add_item(tree, hf_ipmi_stor_43_next, tvb, 0, 2, ENC_LITTLE_ENDIAN);
|
||||
proto_tree_add_item(tree, hf_ipmi_stor_43_data, tvb, 2, tvb_length(tvb) - 2, ENC_NA);
|
||||
|
@ -546,13 +546,13 @@ static const value_string cc43[] = {
|
|||
*/
|
||||
|
||||
static void
|
||||
rq44(tvbuff_t *tvb, proto_tree *tree)
|
||||
rq44(tvbuff_t *tvb, packet_info *pinfo _U_, proto_tree *tree)
|
||||
{
|
||||
proto_tree_add_item(tree, hf_ipmi_stor_44_data, tvb, 0, tvb_length(tvb), ENC_NA);
|
||||
}
|
||||
|
||||
static void
|
||||
rs44(tvbuff_t *tvb, proto_tree *tree)
|
||||
rs44(tvbuff_t *tvb, packet_info *pinfo _U_, proto_tree *tree)
|
||||
{
|
||||
proto_tree_add_item(tree, hf_ipmi_stor_44_added_rec_id, tvb, 0, 2, ENC_LITTLE_ENDIAN);
|
||||
}
|
||||
|
@ -566,7 +566,7 @@ static const value_string cc44[] = {
|
|||
/* Partial Add SEL Entry
|
||||
*/
|
||||
static void
|
||||
rq45(tvbuff_t *tvb, proto_tree *tree)
|
||||
rq45(tvbuff_t *tvb, packet_info *pinfo _U_, proto_tree *tree)
|
||||
{
|
||||
static const int *byte6[] = { &hf_ipmi_stor_45_inprogress, NULL };
|
||||
|
||||
|
@ -579,7 +579,7 @@ rq45(tvbuff_t *tvb, proto_tree *tree)
|
|||
}
|
||||
|
||||
static void
|
||||
rs45(tvbuff_t *tvb, proto_tree *tree)
|
||||
rs45(tvbuff_t *tvb, packet_info *pinfo _U_, proto_tree *tree)
|
||||
{
|
||||
proto_tree_add_item(tree, hf_ipmi_stor_45_added_rec_id, tvb, 0, 2, ENC_LITTLE_ENDIAN);
|
||||
}
|
||||
|
@ -593,14 +593,14 @@ static const value_string cc45[] = {
|
|||
/* Delete SEL Entry
|
||||
*/
|
||||
static void
|
||||
rq46(tvbuff_t *tvb, proto_tree *tree)
|
||||
rq46(tvbuff_t *tvb, packet_info *pinfo _U_, proto_tree *tree)
|
||||
{
|
||||
proto_tree_add_item(tree, hf_ipmi_stor_45_rsrv_id, tvb, 0, 2, ENC_LITTLE_ENDIAN);
|
||||
proto_tree_add_item(tree, hf_ipmi_stor_45_rec_id, tvb, 2, 2, ENC_LITTLE_ENDIAN);
|
||||
}
|
||||
|
||||
static void
|
||||
rs46(tvbuff_t *tvb, proto_tree *tree)
|
||||
rs46(tvbuff_t *tvb, packet_info *pinfo _U_, proto_tree *tree)
|
||||
{
|
||||
proto_tree_add_item(tree, hf_ipmi_stor_46_del_rec_id, tvb, 0, 2, ENC_LITTLE_ENDIAN);
|
||||
}
|
||||
|
@ -614,7 +614,7 @@ static const value_string cc46[] = {
|
|||
/* Clear SEL
|
||||
*/
|
||||
static void
|
||||
rq47(tvbuff_t *tvb, proto_tree *tree)
|
||||
rq47(tvbuff_t *tvb, packet_info *pinfo _U_, proto_tree *tree)
|
||||
{
|
||||
proto_tree_add_item(tree, hf_ipmi_stor_47_rsrv_id, tvb, 0, 2, ENC_LITTLE_ENDIAN);
|
||||
proto_tree_add_item(tree, hf_ipmi_stor_47_clr, tvb, 2, 3, ENC_ASCII|ENC_NA);
|
||||
|
@ -622,7 +622,7 @@ rq47(tvbuff_t *tvb, proto_tree *tree)
|
|||
}
|
||||
|
||||
static void
|
||||
rs47(tvbuff_t *tvb, proto_tree *tree)
|
||||
rs47(tvbuff_t *tvb, packet_info *pinfo _U_, proto_tree *tree)
|
||||
{
|
||||
static const int *status[] = { &hf_ipmi_stor_47_status, NULL };
|
||||
|
||||
|
@ -633,7 +633,7 @@ rs47(tvbuff_t *tvb, proto_tree *tree)
|
|||
/* Get SEL Time
|
||||
*/
|
||||
static void
|
||||
rs48(tvbuff_t *tvb, proto_tree *tree)
|
||||
rs48(tvbuff_t *tvb, packet_info *pinfo _U_, proto_tree *tree)
|
||||
{
|
||||
ipmi_add_timestamp(tree, hf_ipmi_stor_48_time, tvb, 0);
|
||||
}
|
||||
|
@ -641,7 +641,7 @@ rs48(tvbuff_t *tvb, proto_tree *tree)
|
|||
/* Set SEL Time
|
||||
*/
|
||||
static void
|
||||
rq49(tvbuff_t *tvb, proto_tree *tree)
|
||||
rq49(tvbuff_t *tvb, packet_info *pinfo _U_, proto_tree *tree)
|
||||
{
|
||||
ipmi_add_timestamp(tree, hf_ipmi_stor_49_time, tvb, 0);
|
||||
}
|
||||
|
@ -649,7 +649,7 @@ rq49(tvbuff_t *tvb, proto_tree *tree)
|
|||
/* Get Auxiliary Log Status
|
||||
*/
|
||||
static void
|
||||
rq5a(tvbuff_t *tvb, proto_tree *tree)
|
||||
rq5a(tvbuff_t *tvb, packet_info *pinfo _U_, proto_tree *tree)
|
||||
{
|
||||
static const int *byte1[] = { &hf_ipmi_stor_5a_log_type, NULL };
|
||||
|
||||
|
@ -663,7 +663,7 @@ rq5a(tvbuff_t *tvb, proto_tree *tree)
|
|||
}
|
||||
|
||||
static void
|
||||
rs5a(tvbuff_t *tvb, proto_tree *tree)
|
||||
rs5a(tvbuff_t *tvb, packet_info *pinfo _U_, proto_tree *tree)
|
||||
{
|
||||
guint32 v;
|
||||
|
||||
|
@ -684,7 +684,7 @@ rs5a(tvbuff_t *tvb, proto_tree *tree)
|
|||
/* Set Auxiliary Log Status
|
||||
*/
|
||||
static void
|
||||
rq5b(tvbuff_t *tvb, proto_tree *tree)
|
||||
rq5b(tvbuff_t *tvb, packet_info *pinfo _U_, proto_tree *tree)
|
||||
{
|
||||
static const int *byte1[] = { &hf_ipmi_stor_5b_log_type, NULL };
|
||||
guint8 v = tvb_get_guint8(tvb, 0);
|
||||
|
|
|
@ -998,7 +998,7 @@ static struct {
|
|||
/* Set LAN Configuration Parameters
|
||||
*/
|
||||
static void
|
||||
rq01(tvbuff_t *tvb, proto_tree *tree)
|
||||
rq01(tvbuff_t *tvb, packet_info *pinfo _U_, proto_tree *tree)
|
||||
{
|
||||
static const int *byte1[] = { &hf_ipmi_trn_01_chan, NULL };
|
||||
tvbuff_t *next;
|
||||
|
@ -1038,7 +1038,7 @@ static const value_string cc01[] = {
|
|||
/* Get LAN Configuration Parameters
|
||||
*/
|
||||
static void
|
||||
rq02(tvbuff_t *tvb, proto_tree *tree)
|
||||
rq02(tvbuff_t *tvb, packet_info *pinfo _U_, proto_tree *tree)
|
||||
{
|
||||
static const int *byte1[] = { &hf_ipmi_trn_02_getrev, &hf_ipmi_trn_02_chan, NULL };
|
||||
const char *desc;
|
||||
|
@ -1069,7 +1069,7 @@ rq02(tvbuff_t *tvb, proto_tree *tree)
|
|||
}
|
||||
|
||||
static void
|
||||
rs02(tvbuff_t *tvb, proto_tree *tree)
|
||||
rs02(tvbuff_t *tvb, packet_info *pinfo _U_, proto_tree *tree)
|
||||
{
|
||||
static const int *byte1[] = { &hf_ipmi_trn_02_rev_present, &hf_ipmi_trn_02_rev_compat, NULL };
|
||||
proto_item *ti;
|
||||
|
@ -1124,7 +1124,7 @@ static const value_string cc02[] = {
|
|||
};
|
||||
|
||||
static void
|
||||
rq03(tvbuff_t *tvb, proto_tree *tree)
|
||||
rq03(tvbuff_t *tvb, packet_info *pinfo _U_, proto_tree *tree)
|
||||
{
|
||||
static const int *byte1[] = { &hf_ipmi_trn_03_chan, NULL };
|
||||
static const int *byte2[] = { &hf_ipmi_trn_03_arp_resp, &hf_ipmi_trn_03_gratuitous_arp, NULL };
|
||||
|
@ -1136,7 +1136,7 @@ rq03(tvbuff_t *tvb, proto_tree *tree)
|
|||
}
|
||||
|
||||
static void
|
||||
rs03(tvbuff_t *tvb, proto_tree *tree)
|
||||
rs03(tvbuff_t *tvb, packet_info *pinfo _U_, proto_tree *tree)
|
||||
{
|
||||
static const int *byte1[] = { &hf_ipmi_trn_03_status_arp_resp,
|
||||
&hf_ipmi_trn_03_status_gratuitous_arp, NULL };
|
||||
|
@ -1146,7 +1146,7 @@ rs03(tvbuff_t *tvb, proto_tree *tree)
|
|||
}
|
||||
|
||||
static void
|
||||
rq04(tvbuff_t *tvb, proto_tree *tree)
|
||||
rq04(tvbuff_t *tvb, packet_info *pinfo _U_, proto_tree *tree)
|
||||
{
|
||||
static const int *byte1[] = { &hf_ipmi_trn_04_chan, NULL };
|
||||
static const int *byte2[] = { &hf_ipmi_trn_04_clear, NULL };
|
||||
|
@ -1158,7 +1158,7 @@ rq04(tvbuff_t *tvb, proto_tree *tree)
|
|||
}
|
||||
|
||||
static void
|
||||
rs04(tvbuff_t *tvb, proto_tree *tree)
|
||||
rs04(tvbuff_t *tvb, packet_info *pinfo _U_, proto_tree *tree)
|
||||
{
|
||||
proto_tree_add_item(tree, hf_ipmi_trn_04_rx_ippkts, tvb, 0, 2, ENC_LITTLE_ENDIAN);
|
||||
proto_tree_add_item(tree, hf_ipmi_trn_04_rx_iphdr_err, tvb, 2, 2, ENC_LITTLE_ENDIAN);
|
||||
|
@ -1765,7 +1765,7 @@ static struct {
|
|||
/* Set Serial/Modem Configuration Parameters
|
||||
*/
|
||||
static void
|
||||
rq10(tvbuff_t *tvb, proto_tree *tree)
|
||||
rq10(tvbuff_t *tvb, packet_info *pinfo _U_, proto_tree *tree)
|
||||
{
|
||||
static const int *byte1[] = { &hf_ipmi_trn_10_chan, NULL };
|
||||
tvbuff_t *next;
|
||||
|
@ -1805,7 +1805,7 @@ static const value_string cc10[] = {
|
|||
/* Get LAN Configuration Parameters
|
||||
*/
|
||||
static void
|
||||
rq11(tvbuff_t *tvb, proto_tree *tree)
|
||||
rq11(tvbuff_t *tvb, packet_info *pinfo _U_, proto_tree *tree)
|
||||
{
|
||||
static const int *byte1[] = { &hf_ipmi_trn_11_getrev, &hf_ipmi_trn_11_chan, NULL };
|
||||
const char *desc;
|
||||
|
@ -1836,7 +1836,7 @@ rq11(tvbuff_t *tvb, proto_tree *tree)
|
|||
}
|
||||
|
||||
static void
|
||||
rs11(tvbuff_t *tvb, proto_tree *tree)
|
||||
rs11(tvbuff_t *tvb, packet_info *pinfo _U_, proto_tree *tree)
|
||||
{
|
||||
static const int *byte1[] = { &hf_ipmi_trn_11_rev_present, &hf_ipmi_trn_11_rev_compat, NULL };
|
||||
proto_item *ti;
|
||||
|
@ -1893,7 +1893,7 @@ static const value_string cc11[] = {
|
|||
/* Set Serial/Modem Mux
|
||||
*/
|
||||
static void
|
||||
rq12(tvbuff_t *tvb, proto_tree *tree)
|
||||
rq12(tvbuff_t *tvb, packet_info *pinfo _U_, proto_tree *tree)
|
||||
{
|
||||
static const gint *byte1[] = { &hf_ipmi_trn_12_chan, NULL };
|
||||
static const gint *byte2[] = { &hf_ipmi_trn_12_mux_setting, NULL };
|
||||
|
@ -1905,7 +1905,7 @@ rq12(tvbuff_t *tvb, proto_tree *tree)
|
|||
}
|
||||
|
||||
static void
|
||||
rs12(tvbuff_t *tvb, proto_tree *tree)
|
||||
rs12(tvbuff_t *tvb, packet_info *pinfo _U_, proto_tree *tree)
|
||||
{
|
||||
static const gint *byte1[] = { &hf_ipmi_trn_12_sw_to_sys, &hf_ipmi_trn_12_sw_to_bmc,
|
||||
&hf_ipmi_trn_12_alert, &hf_ipmi_trn_12_msg, &hf_ipmi_trn_12_req, &hf_ipmi_trn_12_mux_state, NULL };
|
||||
|
@ -1917,7 +1917,7 @@ rs12(tvbuff_t *tvb, proto_tree *tree)
|
|||
/* Get TAP Response Codes
|
||||
*/
|
||||
static void
|
||||
rq13(tvbuff_t *tvb, proto_tree *tree)
|
||||
rq13(tvbuff_t *tvb, packet_info *pinfo _U_, proto_tree *tree)
|
||||
{
|
||||
static const gint *byte1[] = { &hf_ipmi_trn_13_chan, NULL };
|
||||
|
||||
|
@ -1926,7 +1926,7 @@ rq13(tvbuff_t *tvb, proto_tree *tree)
|
|||
}
|
||||
|
||||
static void
|
||||
rs13(tvbuff_t *tvb, proto_tree *tree)
|
||||
rs13(tvbuff_t *tvb, packet_info *pinfo _U_, proto_tree *tree)
|
||||
{
|
||||
proto_tree_add_item(tree, hf_ipmi_trn_13_code1, tvb, 0, 3, ENC_ASCII|ENC_NA);
|
||||
proto_tree_add_item(tree, hf_ipmi_trn_13_code2, tvb, 3, 3, ENC_ASCII|ENC_NA);
|
||||
|
@ -1938,7 +1938,7 @@ rs13(tvbuff_t *tvb, proto_tree *tree)
|
|||
/* Set PPP UDP Proxy Transmit Data
|
||||
*/
|
||||
static void
|
||||
rq14(tvbuff_t *tvb, proto_tree *tree)
|
||||
rq14(tvbuff_t *tvb, packet_info *pinfo _U_, proto_tree *tree)
|
||||
{
|
||||
static const gint *byte1[] = { &hf_ipmi_trn_14_chan, NULL };
|
||||
|
||||
|
@ -1951,7 +1951,7 @@ rq14(tvbuff_t *tvb, proto_tree *tree)
|
|||
/* Get PPP UDP Proxy Transmit Data
|
||||
*/
|
||||
static void
|
||||
rq15(tvbuff_t *tvb, proto_tree *tree)
|
||||
rq15(tvbuff_t *tvb, packet_info *pinfo _U_, proto_tree *tree)
|
||||
{
|
||||
static const gint *byte1[] = { &hf_ipmi_trn_15_chan, NULL };
|
||||
|
||||
|
@ -1961,7 +1961,7 @@ rq15(tvbuff_t *tvb, proto_tree *tree)
|
|||
}
|
||||
|
||||
static void
|
||||
rs15(tvbuff_t *tvb, proto_tree *tree)
|
||||
rs15(tvbuff_t *tvb, packet_info *pinfo _U_, proto_tree *tree)
|
||||
{
|
||||
proto_tree_add_item(tree, hf_ipmi_trn_15_data, tvb, 0, 16, ENC_NA);
|
||||
}
|
||||
|
@ -1969,7 +1969,7 @@ rs15(tvbuff_t *tvb, proto_tree *tree)
|
|||
/* Send PPP UDP Proxy Packet
|
||||
*/
|
||||
static void
|
||||
rq16(tvbuff_t *tvb, proto_tree *tree)
|
||||
rq16(tvbuff_t *tvb, packet_info *pinfo _U_, proto_tree *tree)
|
||||
{
|
||||
static const gint *byte1[] = { &hf_ipmi_trn_16_chan, NULL };
|
||||
|
||||
|
@ -1998,7 +1998,7 @@ tr17_fmt_blockno(gchar *s, guint32 v)
|
|||
}
|
||||
|
||||
static void
|
||||
rq17(tvbuff_t *tvb, proto_tree *tree)
|
||||
rq17(tvbuff_t *tvb, packet_info *pinfo _U_, proto_tree *tree)
|
||||
{
|
||||
static const gint *byte1[] = { &hf_ipmi_trn_17_chan, NULL };
|
||||
static const gint *byte2[] = { &hf_ipmi_trn_17_clear, &hf_ipmi_trn_17_block_num, NULL };
|
||||
|
@ -2016,7 +2016,7 @@ rq17(tvbuff_t *tvb, proto_tree *tree)
|
|||
}
|
||||
|
||||
static void
|
||||
rs17(tvbuff_t *tvb, proto_tree *tree)
|
||||
rs17(tvbuff_t *tvb, packet_info *pinfo _U_, proto_tree *tree)
|
||||
{
|
||||
guint32 bno;
|
||||
|
||||
|
@ -2037,7 +2037,7 @@ static const value_string cc17[] = {
|
|||
/* Serial/Modem Connection Active
|
||||
*/
|
||||
static void
|
||||
rq18(tvbuff_t *tvb, proto_tree *tree)
|
||||
rq18(tvbuff_t *tvb, packet_info *pinfo _U_, proto_tree *tree)
|
||||
{
|
||||
static const gint *byte1[] = { &hf_ipmi_trn_18_state, NULL };
|
||||
|
||||
|
@ -2049,7 +2049,7 @@ rq18(tvbuff_t *tvb, proto_tree *tree)
|
|||
/* Callback
|
||||
*/
|
||||
static void
|
||||
rq19(tvbuff_t *tvb, proto_tree *tree)
|
||||
rq19(tvbuff_t *tvb, packet_info *pinfo _U_, proto_tree *tree)
|
||||
{
|
||||
static const gint *byte1[] = { &hf_ipmi_trn_19_chan, NULL };
|
||||
static const gint *byte2[] = { &hf_ipmi_trn_19_dest_sel, NULL };
|
||||
|
@ -2089,7 +2089,7 @@ parse_callback_options(tvbuff_t *tvb, guint offs, proto_tree *tree)
|
|||
/* Set User Callback Options
|
||||
*/
|
||||
static void
|
||||
rq1a(tvbuff_t *tvb, proto_tree *tree)
|
||||
rq1a(tvbuff_t *tvb, packet_info *pinfo _U_, proto_tree *tree)
|
||||
{
|
||||
static const gint *byte1[] = { &hf_ipmi_trn_1a_user, NULL };
|
||||
static const gint *byte2[] = { &hf_ipmi_trn_1a_chan, NULL };
|
||||
|
@ -2104,7 +2104,7 @@ rq1a(tvbuff_t *tvb, proto_tree *tree)
|
|||
/* Get User Callback Options
|
||||
*/
|
||||
static void
|
||||
rq1b(tvbuff_t *tvb, proto_tree *tree)
|
||||
rq1b(tvbuff_t *tvb, packet_info *pinfo _U_, proto_tree *tree)
|
||||
{
|
||||
static const gint *byte1[] = { &hf_ipmi_trn_1b_user, NULL };
|
||||
static const gint *byte2[] = { &hf_ipmi_trn_1b_chan, NULL };
|
||||
|
@ -2116,7 +2116,7 @@ rq1b(tvbuff_t *tvb, proto_tree *tree)
|
|||
}
|
||||
|
||||
static void
|
||||
rs1b(tvbuff_t *tvb, proto_tree *tree)
|
||||
rs1b(tvbuff_t *tvb, packet_info *pinfo _U_, proto_tree *tree)
|
||||
{
|
||||
parse_callback_options(tvb, 0, tree);
|
||||
}
|
||||
|
|
|
@ -142,7 +142,6 @@ static gint ett_data = -1;
|
|||
static gint ett_typelen = -1;
|
||||
|
||||
static guint nest_level;
|
||||
static packet_info *current_pinfo;
|
||||
static struct ipmi_saved_data *current_saved_data;
|
||||
static struct ipmi_netfn_root ipmi_cmd_tab[IPMI_NETFN_MAX];
|
||||
|
||||
|
@ -338,7 +337,7 @@ ipmi_sendmsg_getheaders(struct ipmi_header *base, void *arg, guint i)
|
|||
}
|
||||
|
||||
static void
|
||||
maybe_insert_reqresp(ipmi_dissect_format_t *dfmt, struct ipmi_header *hdr)
|
||||
maybe_insert_reqresp(packet_info *pinfo, ipmi_dissect_format_t *dfmt, struct ipmi_header *hdr)
|
||||
{
|
||||
conversation_t *cnv;
|
||||
struct ipmi_keytree *kt;
|
||||
|
@ -346,7 +345,7 @@ maybe_insert_reqresp(ipmi_dissect_format_t *dfmt, struct ipmi_header *hdr)
|
|||
struct ipmi_reqresp *rr;
|
||||
guint32 key, i;
|
||||
|
||||
cnv = find_or_create_conversation(current_pinfo);
|
||||
cnv = find_or_create_conversation(pinfo);
|
||||
|
||||
kt = (struct ipmi_keytree *)conversation_get_proto_data(cnv, proto_ipmi);
|
||||
if (!kt) {
|
||||
|
@ -356,7 +355,7 @@ maybe_insert_reqresp(ipmi_dissect_format_t *dfmt, struct ipmi_header *hdr)
|
|||
conversation_add_proto_data(cnv, proto_ipmi, kt);
|
||||
}
|
||||
|
||||
debug_printf("--> maybe_insert_reqresp( %d )\n", current_pinfo->fd->num);
|
||||
debug_printf("--> maybe_insert_reqresp( %d )\n", pinfo->fd->num);
|
||||
i = 0;
|
||||
do {
|
||||
debug_printf("Checking [ (%02x,%1x <-> %02x,%1x : %02x) %02x %02x ]\n",
|
||||
|
@ -368,7 +367,7 @@ maybe_insert_reqresp(ipmi_dissect_format_t *dfmt, struct ipmi_header *hdr)
|
|||
kh = se_new0(struct ipmi_keyhead);
|
||||
se_tree_insert32(kt->heads, key, kh);
|
||||
}
|
||||
if ((rr = key_lookup_reqresp(kh, hdr, current_pinfo->fd)) != NULL) {
|
||||
if ((rr = key_lookup_reqresp(kh, hdr, pinfo->fd)) != NULL) {
|
||||
/* Already recorded - set frame number and be done. Look no
|
||||
further - even if there are several responses, we have
|
||||
found the right one. */
|
||||
|
@ -379,7 +378,7 @@ maybe_insert_reqresp(ipmi_dissect_format_t *dfmt, struct ipmi_header *hdr)
|
|||
if (!rr->whichresponse) {
|
||||
rr->whichresponse = dfmt->whichresponse;
|
||||
}
|
||||
if (set_framenums(hdr, rr, current_pinfo->fd)) {
|
||||
if (set_framenums(hdr, rr, pinfo->fd)) {
|
||||
debug_printf("Set frames [ <%d,%d,%d> (%02x,%1x <-> %02x,%1x : %02x) %02x %02x ]\n",
|
||||
rr->frames[0].num, rr->frames[1].num, rr->frames[2].num,
|
||||
hdr->trg_sa, hdr->trg_lun, hdr->src_sa, hdr->src_lun, hdr->seq,
|
||||
|
@ -401,7 +400,7 @@ maybe_insert_reqresp(ipmi_dissect_format_t *dfmt, struct ipmi_header *hdr)
|
|||
rr->netfn = hdr->netfn & 0x3e;
|
||||
rr->cmd = hdr->cmd;
|
||||
rr->data = current_saved_data;
|
||||
set_framenums(hdr, rr, current_pinfo->fd);
|
||||
set_framenums(hdr, rr, pinfo->fd);
|
||||
key_insert_reqresp(kh, rr);
|
||||
debug_printf("Inserted [ <%d,%d,%d> (%02x,%1x <-> %02x,%1x : %02x) %02x %02x ]\n",
|
||||
rr->frames[0].num, rr->frames[1].num, rr->frames[2].num,
|
||||
|
@ -414,7 +413,7 @@ maybe_insert_reqresp(ipmi_dissect_format_t *dfmt, struct ipmi_header *hdr)
|
|||
}
|
||||
|
||||
static void
|
||||
add_reqresp_info(ipmi_dissect_format_t *dfmt, struct ipmi_header *hdr, proto_tree *tree, tvbuff_t *tvb)
|
||||
add_reqresp_info(ipmi_dissect_format_t *dfmt, struct ipmi_header *hdr, proto_tree *tree, tvbuff_t *tvb, packet_info *pinfo)
|
||||
{
|
||||
conversation_t *cnv;
|
||||
struct ipmi_keytree *kt;
|
||||
|
@ -424,7 +423,7 @@ add_reqresp_info(ipmi_dissect_format_t *dfmt, struct ipmi_header *hdr, proto_tre
|
|||
proto_item *ti;
|
||||
nstime_t ns;
|
||||
|
||||
debug_printf("--> add_reqresp_info( %d )\n", current_pinfo->fd->num);
|
||||
debug_printf("--> add_reqresp_info( %d )\n", pinfo->fd->num);
|
||||
|
||||
/* [0] is request; [1..MAX_RS_LEVEL] are responses */
|
||||
other_idx = (hdr->netfn & 0x01) ? RQ : dfmt->otheridx ? dfmt->otheridx(hdr) : RS;
|
||||
|
@ -438,9 +437,9 @@ add_reqresp_info(ipmi_dissect_format_t *dfmt, struct ipmi_header *hdr, proto_tre
|
|||
|
||||
/* Here, we don't try to create any object - everything is assumed
|
||||
to be created in maybe_insert_reqresp() */
|
||||
if ((cnv = find_conversation(current_pinfo->fd->num, ¤t_pinfo->src,
|
||||
¤t_pinfo->dst, current_pinfo->ptype,
|
||||
current_pinfo->srcport, current_pinfo->destport, 0)) == NULL) {
|
||||
if ((cnv = find_conversation(pinfo->fd->num, &pinfo->src,
|
||||
&pinfo->dst, pinfo->ptype,
|
||||
pinfo->srcport, pinfo->destport, 0)) == NULL) {
|
||||
goto fallback;
|
||||
}
|
||||
if ((kt = (struct ipmi_keytree *)conversation_get_proto_data(cnv, proto_ipmi)) == NULL) {
|
||||
|
@ -454,7 +453,7 @@ add_reqresp_info(ipmi_dissect_format_t *dfmt, struct ipmi_header *hdr, proto_tre
|
|||
hdr->netfn, hdr->cmd);
|
||||
key = makekey(hdr);
|
||||
if ((kh = (struct ipmi_keyhead *)se_tree_lookup32(kt->heads, key)) != NULL &&
|
||||
(rr = key_lookup_reqresp(kh, hdr, current_pinfo->fd)) != NULL) {
|
||||
(rr = key_lookup_reqresp(kh, hdr, pinfo->fd)) != NULL) {
|
||||
debug_printf("Found [ <%d,%d,%d> (%02x,%1x <-> %02x,%1x : %02x) %02x %02x ]\n",
|
||||
rr->frames[0].num, rr->frames[1].num, rr->frames[2].num,
|
||||
hdr->trg_sa, hdr->trg_lun, hdr->src_sa, hdr->src_lun, hdr->seq,
|
||||
|
@ -476,7 +475,7 @@ add_reqresp_info(ipmi_dissect_format_t *dfmt, struct ipmi_header *hdr, proto_tre
|
|||
ti = proto_tree_add_uint(tree, hf_ipmi_response_to,
|
||||
tvb, 0, 0, rr->frames[RQ].num);
|
||||
PROTO_ITEM_SET_GENERATED(ti);
|
||||
nstime_delta(&ns, ¤t_pinfo->fd->abs_ts, &rr->frames[RQ].time);
|
||||
nstime_delta(&ns, &pinfo->fd->abs_ts, &rr->frames[RQ].time);
|
||||
ti = proto_tree_add_time(tree, hf_ipmi_response_time,
|
||||
tvb, 0, 0, &ns);
|
||||
PROTO_ITEM_SET_GENERATED(ti);
|
||||
|
@ -910,7 +909,7 @@ ipmi_getcmd(ipmi_netfn_t *nf, guint32 cmd)
|
|||
---------------------------------------------------------------- */
|
||||
|
||||
void
|
||||
ipmi_notimpl(tvbuff_t *tvb, proto_tree *tree)
|
||||
ipmi_notimpl(tvbuff_t *tvb, packet_info *pinfo _U_, proto_tree *tree)
|
||||
{
|
||||
if (tree) {
|
||||
proto_tree_add_text(tree, tvb, 0, -1, "[PARSER NOT IMPLEMENTED]");
|
||||
|
@ -1096,7 +1095,7 @@ ipmi_guess_dissect_flags(tvbuff_t *tvb)
|
|||
/* Print out IPMB packet.
|
||||
*/
|
||||
void
|
||||
ipmi_do_dissect(tvbuff_t *tvb, proto_tree *ipmi_tree, ipmi_dissect_format_t *dfmt)
|
||||
ipmi_do_dissect(tvbuff_t *tvb, packet_info *pinfo, proto_tree *ipmi_tree, ipmi_dissect_format_t *dfmt)
|
||||
{
|
||||
proto_tree *hdr_tree, *data_tree, *s_tree;
|
||||
proto_item *ti;
|
||||
|
@ -1122,7 +1121,7 @@ ipmi_do_dissect(tvbuff_t *tvb, proto_tree *ipmi_tree, ipmi_dissect_format_t *dfm
|
|||
offs = 0;
|
||||
memset(&hdr, 0, sizeof(hdr));
|
||||
debug_printf("--> do_dissect(%d, nl %u, tree %s null)\n",
|
||||
current_pinfo->fd->num, nest_level, ipmi_tree ? "IS NOT" : "IS");
|
||||
pinfo->fd->num, nest_level, ipmi_tree ? "IS NOT" : "IS");
|
||||
|
||||
/* Optional byte: in Send Message targeted to session-based channels */
|
||||
if (dfmt->flags & IPMI_D_SESSION_HANDLE) {
|
||||
|
@ -1196,13 +1195,13 @@ ipmi_do_dissect(tvbuff_t *tvb, proto_tree *ipmi_tree, ipmi_dissect_format_t *dfm
|
|||
|
||||
/* Start new conversation if needed */
|
||||
if (!is_resp && (ic->flags & CMD_NEWCONV)) {
|
||||
conversation_new(current_pinfo->fd->num, ¤t_pinfo->src,
|
||||
¤t_pinfo->dst, current_pinfo->ptype,
|
||||
current_pinfo->srcport, current_pinfo->destport, 0);
|
||||
conversation_new(pinfo->fd->num, &pinfo->src,
|
||||
&pinfo->dst, pinfo->ptype,
|
||||
pinfo->srcport, pinfo->destport, 0);
|
||||
}
|
||||
|
||||
/* Check if we need to insert request-response pair */
|
||||
maybe_insert_reqresp(dfmt, &hdr);
|
||||
maybe_insert_reqresp(pinfo, dfmt, &hdr);
|
||||
|
||||
/* Create data subset: all but header and last byte (checksum) */
|
||||
data_tvb = tvb_new_subset(tvb, hdrlen, hdr.data_len, hdr.data_len);
|
||||
|
@ -1213,11 +1212,11 @@ ipmi_do_dissect(tvbuff_t *tvb, proto_tree *ipmi_tree, ipmi_dissect_format_t *dfm
|
|||
hdr.ccode ? ", " : "", hdr.ccode ? ccdesc : "");
|
||||
|
||||
if (!is_resp && (ic->flags & CMD_CALLRQ)) {
|
||||
hnd(data_tvb, NULL);
|
||||
hnd(data_tvb, pinfo, NULL);
|
||||
}
|
||||
|
||||
if (ipmi_tree) {
|
||||
add_reqresp_info(dfmt, &hdr, ipmi_tree, tvb);
|
||||
add_reqresp_info(dfmt, &hdr, ipmi_tree, tvb, pinfo);
|
||||
|
||||
ti = proto_tree_add_text(ipmi_tree, tvb, 0, hdrlen,
|
||||
"Header: %s (%s) from 0x%02x to 0x%02x%s", cdesc,
|
||||
|
@ -1305,7 +1304,7 @@ ipmi_do_dissect(tvbuff_t *tvb, proto_tree *ipmi_tree, ipmi_dissect_format_t *dfm
|
|||
if (tvb_length(data_tvb) && hnd) {
|
||||
ti = proto_tree_add_text(ipmi_tree, data_tvb, 0, -1, "Data");
|
||||
data_tree = proto_item_add_subtree(ti, ett_data);
|
||||
hnd(data_tvb, data_tree);
|
||||
hnd(data_tvb, pinfo, data_tree);
|
||||
}
|
||||
|
||||
/* Checksum all but the last byte */
|
||||
|
@ -1345,8 +1344,6 @@ dissect_ipmi(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree)
|
|||
|
||||
col_set_str(pinfo->cinfo, COL_PROTOCOL, "IPMI/ATCA");
|
||||
|
||||
current_pinfo = pinfo;
|
||||
|
||||
if (tree) {
|
||||
ti = proto_tree_add_item(tree, proto_ipmi, tvb, 0, -1, ENC_NA);
|
||||
ipmi_tree = proto_item_add_subtree(ti, ett_ipmi);
|
||||
|
@ -1354,7 +1351,7 @@ dissect_ipmi(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree)
|
|||
|
||||
memset(&dfmt, 0, sizeof(dfmt));
|
||||
dfmt.flags = IPMI_D_BROADCAST | IPMI_D_TRG_SA;
|
||||
ipmi_do_dissect(tvb, ipmi_tree, &dfmt);
|
||||
ipmi_do_dissect(tvb, pinfo, ipmi_tree, &dfmt);
|
||||
|
||||
col_add_str(pinfo->cinfo, COL_INFO, dfmt.info);
|
||||
|
||||
|
|
|
@ -72,7 +72,7 @@ struct ipmi_header {
|
|||
extern struct ipmi_header *ipmi_current_hdr;
|
||||
|
||||
/* Sub-parser */
|
||||
typedef void (*ipmi_cmd_handler_t)(tvbuff_t *, proto_tree *);
|
||||
typedef void (*ipmi_cmd_handler_t)(tvbuff_t *, packet_info *, proto_tree *);
|
||||
|
||||
/* IPMI command structure. */
|
||||
typedef struct {
|
||||
|
@ -108,7 +108,7 @@ char *ipmi_dcd8(guint32 val, guint32 mask);
|
|||
|
||||
/* Stub parser. Use this to substitute for not-yet-written subparsers;
|
||||
NULL in command table means 'no custom data in this request/response' */
|
||||
void ipmi_notimpl(tvbuff_t *tvb, proto_tree *tree);
|
||||
void ipmi_notimpl(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree);
|
||||
#define IPMI_TBD ipmi_notimpl, ipmi_notimpl
|
||||
|
||||
/* Add a Type/Length field to tree */
|
||||
|
@ -177,7 +177,7 @@ typedef struct {
|
|||
} ipmi_dissect_format_t;
|
||||
|
||||
int ipmi_guess_dissect_flags(tvbuff_t *tvb);
|
||||
void ipmi_do_dissect(tvbuff_t *tvb, proto_tree *tree, ipmi_dissect_format_t *dfmt);
|
||||
void ipmi_do_dissect(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree, ipmi_dissect_format_t *dfmt);
|
||||
|
||||
struct ipmi_header *ipmi_sendmsg_getheaders(struct ipmi_header *base, void *arg, guint i);
|
||||
int ipmi_sendmsg_whichresponse(struct ipmi_header *hdr, struct ipmi_reqresp *rr);
|
||||
|
|
Loading…
Reference in New Issue