#nfc #wireshark #wireshark-dissector
Вопрос:
Попытка скомпилировать плагин wireshark с использованием примера wireshark-nfc (https://code.google.com/archive/p/wireshark-nfc /)
#ifdef HAVE_CONFIG_H
#include "config.h"
#endif
#define WS_BUILD_DLL
#include <gmodule.h>
/* Included *after* config.h, in order to re-define these macros */
#ifdef PACKAGE
#undef PACKAGE
#endif
/* Name of package */
#define PACKAGE "nfc-wireshark"
#ifdef VERSION
#undef VERSION
#endif
/* Version number of package */
#define VERSION "0.8.0"
#define WIRESHARK_VERSION_MAJOR "0.8.0"
#define WIRESHARK_VERSION_MINOR "0.8.0"
#ifndef ENABLE_STATIC
G_MODULE_EXPORT const gchar plugin_version[] = VERSION;
G_MODULE_EXPORT const gchar plugin_want_major[] = WIRESHARK_VERSION_MAJOR;
G_MODULE_EXPORT const gchar plugin_want_minor[] = WIRESHARK_VERSION_MINOR;
G_MODULE_EXPORT void plugin_register(void) {
extern void proto_register_llcp(void);
extern void proto_register_snep(void);
extern void proto_register_ndef(void);
proto_register_llcp();
proto_register_ndef();
proto_register_snep();
}
G_MODULE_EXPORT void plugin_reg_handoff(void) {
extern void proto_reg_handoff_llcp(void);
extern void proto_reg_handoff_snep(void);
extern void proto_reg_handoff_ndep(void);
proto_reg_handoff_llcp();
proto_reg_handoff_snep();
proto_reg_handoff_ndef();
}
#endif
Я использую этот файл при компиляции, все работает, но в приложении wireshark отображается ошибка
Плагин ‘nfc-wireshark.so ‘ был скомпилирован для Wireshark версии 3.3
Комментарии:
1. Пожалуйста, не подключайтесь к внешним серверам. Пожалуйста, не используйте графический контент, который вы можете отобразить в виде текста в своем вопросе.
Ответ №1:
Ваша ранее опубликованная графика показывает другую версию: «775433776.775433776». Это десятичное число равно x2E382E30.x2E382E30. Это выглядит как дамп «.8.0″,».8.0″.
Если вы хотите скомпилировать для Wireshark 3.4.9 (последняя версия) Я бы попытался изменить определения
#define WIRESHARK_VERSION_MAJOR "3"
#define WIRESHARK_VERSION_MINOR "4"
Комментарии:
1. Спасибо за помощь, сделал, как вы сказали. Теперь новая ошибка при запуске wireshark wireshark: 172708): GLib-КРИТИЧЕСКИЙ **: 14:48:31.764: g_hash_table_insert_internal: ошибка утверждения ‘hash_table ! = NULL’ (wireshark: 172708): GLib-КРИТИЧЕСКИЙ **: 14:48: 31.764: g_hash_table_lookup: утверждение ‘hash_table ! = NULL’ошибка необработанного исключения («epan / proto.c: 7477: неудачное утверждение » (guint)proto_id <gpa_hinfo.len» (Незарегистрированный hf!)», group = 1, code = 6)
2. Если ответ является ответом на ваш вопрос, вы можете принять это. Новая проблема лучше всего проявляется в новом вопросе. Вы уже видели, что этот дополнительный вопрос не может быть отформатирован в комментарии. — Но, честно говоря, это выглядит сложным для сайта с вопросами и ответами, такого как Stackoverflow. Необходимо будет взглянуть на исходный код Wireshark и, вероятно, на исходный код всех подключаемых модулей. Я ожидаю, что вы получите комментарий типа «используйте отладчик».