diff options
author | Gerald Combs <gerald@wireshark.org> | 2022-02-17 10:39:41 -0800 |
---|---|---|
committer | Gerald Combs <gerald@wireshark.org> | 2022-03-22 17:51:32 +0000 |
commit | 90bd33e4e2580fcfe79daeb29b21ddc3c634b7ad (patch) | |
tree | a25f2c782a3859d42cee1db22c0abab768d5497e /plugins | |
parent | 3ae5ccbe52fd8adfedbc36521b4d005bbf704e4a (diff) |
Sysdig Bridge: Make sure we fetch the correct field info.
Fetch the current field number's type and format instead of the first
field's.
Diffstat (limited to 'plugins')
-rw-r--r-- | plugins/epan/sysdig_bridge/sinsp-span.cpp | 15 |
1 files changed, 7 insertions, 8 deletions
diff --git a/plugins/epan/sysdig_bridge/sinsp-span.cpp b/plugins/epan/sysdig_bridge/sinsp-span.cpp index a11650c668..ca4de9df17 100644 --- a/plugins/epan/sysdig_bridge/sinsp-span.cpp +++ b/plugins/epan/sysdig_bridge/sinsp-span.cpp @@ -51,7 +51,6 @@ void destroy_sinsp_span(sinsp_span_t *sinsp_span) { delete(sinsp_span); } -#include <iostream> /* * Populate a source_plugin_info struct with the symbols coming from a library loaded via libsinsp */ @@ -136,7 +135,7 @@ bool get_sinsp_source_field_info(sinsp_source_info_t *ssi, unsigned field_num, s return false; } - const filtercheck_field_info *ffi = ssi->source->fields(); + const filtercheck_field_info *ffi = &ssi->source->fields()[field_num]; switch (ffi->m_type) { case PT_CHARBUF: @@ -163,13 +162,13 @@ bool get_sinsp_source_field_info(sinsp_source_info_t *ssi, unsigned field_num, s field->display_format = SFDF_UNKNOWN; } - g_strlcpy(field->abbrev, ffi[field_num].m_name, sizeof(ffi[field_num].m_name)); - g_strlcpy(field->display, ffi[field_num].m_display, sizeof(ffi[field_num].m_display)); - g_strlcpy(field->description, ffi[field_num].m_description, sizeof(ffi[field_num].m_description)); + g_strlcpy(field->abbrev, ffi->m_name, sizeof(ffi->m_name)); + g_strlcpy(field->display, ffi->m_display, sizeof(ffi->m_display)); + g_strlcpy(field->description, ffi->m_description, sizeof(ffi->m_description)); - field->is_hidden = ffi[field_num].m_flags & EPF_TABLE_ONLY; - field->is_info = ffi[field_num].m_flags & EPF_INFO_PROP; - field->is_conversation = ffi[field_num].m_flags & EPF_CONVERSATION_PROP; + field->is_hidden = ffi->m_flags & EPF_TABLE_ONLY; + field->is_info = ffi->m_flags & EPF_INFO; + field->is_conversation = ffi->m_flags & EPF_CONVERSATION; return true; } |