forked from osmocom/wireshark
Export libwireshark symbols using WS_DLL_PUBLIC define
Also remove old WS_VAR_IMPORT define and related Makefile magic everywhere in the project. svn path=/trunk/; revision=47992
This commit is contained in:
parent
0b8d70bfb7
commit
1ebdb2e521
|
@ -216,7 +216,7 @@ message(STATUS "C-Flags: ${CMAKE_C_FLAGS}\nCXX-Flags: ${CMAKE_CXX_FLAGS}")
|
|||
|
||||
check_c_compiler_flag(-fvisibility=hidden FVHIDDEN)
|
||||
if((FVHIDDEN))
|
||||
set(COMPILE_HIDE_SYMBOLS -fvisibility=hidden)
|
||||
set(CMAKE_C_FLAGS "${CMAKE_C_FLAGS} -fvisibility=hidden")
|
||||
else() # TODO add alternate compiler flags for hiding symbols
|
||||
message(WARNING "Hiding shared library symbols is not supported by the compiler."
|
||||
" All shared library symbols will be exported.")
|
||||
|
@ -517,14 +517,8 @@ if(ENABLE_PCAP_NG_DEFAULT)
|
|||
endif()
|
||||
|
||||
#Platform specific
|
||||
if(UNIX)
|
||||
if(CMAKE_COMPILER_IS_GNUCC)
|
||||
# set(WS_VAR_IMPORT "__attribute__((visibility(\"default\")))" )
|
||||
set(WS_VAR_IMPORT "extern")
|
||||
else()
|
||||
set(WS_VAR_IMPORT "extern")
|
||||
endif()
|
||||
endif()
|
||||
#if(UNIX)
|
||||
#endif()
|
||||
|
||||
if(APPLE)
|
||||
#
|
||||
|
@ -538,8 +532,6 @@ if(APPLE)
|
|||
endif()
|
||||
|
||||
if(WIN32)
|
||||
add_definitions(-D_NEED_VAR_IMPORT_)
|
||||
set(WS_VAR_IMPORT "__declspec(dllimport) extern")
|
||||
set(WS_MSVC_NORETURN "__declspec(noreturn)")
|
||||
|
||||
# Disable deprecation
|
||||
|
|
|
@ -41,7 +41,6 @@ LDFLAGS = /NOLOGO /INCREMENTAL:NO $(LOCAL_LDFLAGS)
|
|||
# We use GENERATED_CFLAGS to get around flex's non-LLP64-compliant output
|
||||
GENERATED_CFLAGS=\
|
||||
$(STANDARD_CFLAGS) \
|
||||
-D_NEED_VAR_IMPORT_ \
|
||||
/I. /Iwiretap $(GLIB_CFLAGS) \
|
||||
$(ZLIB_CFLAGS) /I$(PCAP_DIR)\include $(AIRPCAP_CFLAGS) \
|
||||
$(C_ARES_CFLAGS) $(ADNS_CFLAGS) $(GNUTLS_CFLAGS) \
|
||||
|
@ -428,7 +427,6 @@ config.h : config.h.win32 config.nmake
|
|||
-e "s/@HAVE_PCAP_SET_DATALINK@/$(PCAP_SET_DATALINK_CONFIG)/" \
|
||||
-e "s/@HAVE_PCAP_SETSAMPLING@/$(PCAP_SETSAMPLING_CONFIG)/" \
|
||||
-e "s/@HAVE_BPF_IMAGE@/$(BPF_IMAGE_CONFIG)/" \
|
||||
-e "s/@HAVE_LIBWIRESHARKDLL@/$(LIBWIRESHARK_CONFIG)/" \
|
||||
-e "s/@HAVE_LIBGNUTLS@/$(GNUTLS_CONFIG)/" \
|
||||
-e "s/@HAVE_LIBGCRYPT@/$(LIBGCRYPT_CONFIG)/" \
|
||||
-e "s/@HAVE_LUA@/$(LUA_CONFIG)/" \
|
||||
|
@ -488,8 +486,6 @@ QMAKE_CFLAGS *= $(STANDARD_CFLAGS) $(PORTAUDIO_CFLAGS:\=/)
|
|||
QMAKE_CXXFLAGS *= $(STANDARD_CFLAGS) $(PORTAUDIO_CFLAGS:\=/)
|
||||
QMAKE_LFLAGS *= /LARGEADDRESSAWARE $(LDFLAGS)
|
||||
|
||||
DEFINES += _NEED_VAR_IMPORT_
|
||||
|
||||
<<KEEP
|
||||
|
||||
ps.c: tools\rdps.py print.ps
|
||||
|
|
|
@ -39,6 +39,7 @@ SUBDIRS = \
|
|||
crmf \
|
||||
cms \
|
||||
dap \
|
||||
dsp \
|
||||
dop \
|
||||
disp \
|
||||
dsp \
|
||||
|
|
|
@ -26,6 +26,8 @@
|
|||
#ifndef PACKET_ANSI_MAP_H
|
||||
#define PACKET_ANSI_MAP_H
|
||||
|
||||
#include "ws_symbol_export.h"
|
||||
|
||||
#define ANSI_MAP_MAX_NUM_MESSAGE_TYPES 256
|
||||
|
||||
typedef struct _ansi_map_tap_rec_t {
|
||||
|
@ -39,7 +41,7 @@ typedef struct _ansi_map_tap_rec_t {
|
|||
* without having to duplicate it. With MSVC and a
|
||||
* libwireshark.dll, we need a special declaration.
|
||||
*/
|
||||
WS_VAR_IMPORT const value_string ansi_map_opr_code_strings[];
|
||||
WS_DLL_PUBLIC const value_string ansi_map_opr_code_strings[];
|
||||
|
||||
|
||||
|
||||
|
|
|
@ -34,6 +34,8 @@
|
|||
#ifndef PACKET_CAMEL_H
|
||||
#define PACKET_CAMEL_H
|
||||
|
||||
#include "ws_symbol_export.h"
|
||||
|
||||
void proto_reg_handoff_camel(void);
|
||||
void proto_register_camel(void);
|
||||
|
||||
|
@ -41,7 +43,7 @@ void proto_register_camel(void);
|
|||
#define camel_MAX_NUM_OPR_CODES 256
|
||||
|
||||
|
||||
WS_VAR_IMPORT const value_string camel_opr_code_strings[];
|
||||
WS_DLL_PUBLIC const value_string camel_opr_code_strings[];
|
||||
/* #include "packet-camel-exp.h"*/
|
||||
|
||||
#endif /* PACKET_camel_H */
|
||||
|
|
|
@ -110,7 +110,7 @@ Abandoned
|
|||
SearchControlOptions
|
||||
SecurityError
|
||||
SecurityProblem
|
||||
SecurityParameters
|
||||
SecurityParameters EXTERN WS_DLL
|
||||
ServiceControlOptions
|
||||
AbandonFailedError
|
||||
UpdateError
|
||||
|
|
|
@ -9,7 +9,7 @@ ServiceAdministration x509if
|
|||
|
||||
#.EXPORTS
|
||||
AccessPoint
|
||||
AccessPointInformation
|
||||
AccessPointInformation EXTERN WS_DLL
|
||||
ContinuationReference
|
||||
Exclusions
|
||||
MasterAndShadowAccessPoints
|
||||
|
|
|
@ -80,7 +80,7 @@ EraseCC-EntryArg
|
|||
EraseCC-EntryRes
|
||||
Ext-BasicServiceCode
|
||||
Ext-ForwOptions
|
||||
Ext-GeographicalInformation
|
||||
Ext-GeographicalInformation EXTERN WS_DLL
|
||||
Ext-NoRepCondTime
|
||||
Ext-QoS-Subscribed
|
||||
Ext2-QoS-Subscribed
|
||||
|
@ -90,16 +90,16 @@ ExternalSignalInfo
|
|||
ForwardingOptions
|
||||
GeographicalInformation
|
||||
GetPasswordArg
|
||||
GlobalCellId
|
||||
GlobalCellId EXTERN WS_DLL
|
||||
GPRSChargingID
|
||||
GPRSMSClass
|
||||
GSMMAPLocalErrorcode
|
||||
GSN-Address
|
||||
IMEI
|
||||
IMSI
|
||||
IMSI EXTERN WS_DLL
|
||||
InterrogateSS-Res
|
||||
ISDN-AddressString
|
||||
ISDN-AddressString_PDU
|
||||
ISDN-AddressString EXTERN WS_DLL
|
||||
ISDN-AddressString_PDU EXTERN WS_DLL
|
||||
ISDN-SubaddressString
|
||||
LAIFixedLength
|
||||
LCSClientExternalID
|
||||
|
|
|
@ -26,6 +26,8 @@
|
|||
#ifndef PACKET_GSM_MAP_H
|
||||
#define PACKET_GSM_MAP_H
|
||||
|
||||
#include "ws_symbol_export.h"
|
||||
|
||||
/* Defines for the GSM MAP taps */
|
||||
#define GSM_MAP_MAX_NUM_OPR_CODES 256
|
||||
|
||||
|
@ -43,7 +45,7 @@ typedef struct _gsm_map_tap_rec_t {
|
|||
#define SMS_ENCODING_7BIT_LANG 4
|
||||
#define SMS_ENCODING_UCS2_LANG 5
|
||||
|
||||
WS_VAR_IMPORT const value_string gsm_map_opr_code_strings[];
|
||||
WS_DLL_PUBLIC const value_string gsm_map_opr_code_strings[];
|
||||
const char* unpack_digits(tvbuff_t *tvb, int offset);
|
||||
|
||||
extern const value_string ssCode_vals[];
|
||||
|
|
|
@ -13,7 +13,7 @@
|
|||
#.IMPORT ../h245/h245-exp.cnf
|
||||
|
||||
#----------------------------------------------------------------------------------------
|
||||
#.EXPORTS ONLY_VALS WS_VAR NO_PROT_PREFIX
|
||||
#.EXPORTS ONLY_VALS WS_DLL NO_PROT_PREFIX
|
||||
H323-UU-PDU/h323-message-body
|
||||
FacilityReason
|
||||
GatekeeperRejectReason
|
||||
|
@ -28,7 +28,7 @@ LocationRejectReason
|
|||
RegistrationRejectReason
|
||||
|
||||
#.MODULE_EXPORTS
|
||||
RasMessage WS_VAR
|
||||
RasMessage EXTERN WS_DLL
|
||||
NonStandardParameter
|
||||
PublicTypeOfNumber
|
||||
PrivateTypeOfNumber
|
||||
|
@ -59,7 +59,7 @@ EndpointType
|
|||
SupportedProtocols
|
||||
GatekeeperIdentifier
|
||||
ServiceControlSession
|
||||
ReleaseCompleteReason WS_VAR
|
||||
ReleaseCompleteReason EXTERN WS_DLL
|
||||
ExtendedAliasAddress_PDU
|
||||
#.END
|
||||
|
||||
|
|
|
@ -13,7 +13,7 @@ T38FaxProfile
|
|||
DataProtocolCapability NO_PROT_PREFIX
|
||||
OpenLogicalChannel
|
||||
QOSCapability
|
||||
H223Capability
|
||||
H223Capability EXTERN WS_DLL
|
||||
H223LogicalChannelParameters
|
||||
TransportAddress
|
||||
UnicastAddress
|
||||
|
|
|
@ -25,6 +25,9 @@
|
|||
|
||||
#ifndef PACKET_H245_H
|
||||
#define PACKET_H245_H
|
||||
|
||||
#include "ws_symbol_export.h"
|
||||
|
||||
typedef enum _h245_msg_type {
|
||||
H245_TermCapSet,
|
||||
H245_TermCapSetAck,
|
||||
|
@ -116,10 +119,10 @@ struct _h223_mux_element {
|
|||
#include <epan/dissectors/packet-per.h>
|
||||
|
||||
typedef void (*h223_set_mc_handle_t) ( packet_info* pinfo, guint8 mc, h223_mux_element* me );
|
||||
extern void h245_set_h223_set_mc_handle( h223_set_mc_handle_t handle );
|
||||
WS_DLL_PUBLIC void h245_set_h223_set_mc_handle( h223_set_mc_handle_t handle );
|
||||
|
||||
typedef void (*h223_add_lc_handle_t) ( packet_info* pinfo, guint16 lc, h223_lc_params* params );
|
||||
extern void h245_set_h223_add_lc_handle( h223_add_lc_handle_t handle );
|
||||
WS_DLL_PUBLIC void h245_set_h223_add_lc_handle( h223_add_lc_handle_t handle );
|
||||
|
||||
#include "packet-h245-exp.h"
|
||||
void dissect_h245_FastStart_OLC(tvbuff_t *tvb, packet_info *pinfo _U_, proto_tree *tree, char *codec_str);
|
||||
|
|
|
@ -28,6 +28,7 @@
|
|||
#ifndef PACKET_H248_H
|
||||
|
||||
#include <epan/gcp.h>
|
||||
#include "ws_symbol_export.h"
|
||||
/*#include "packet-h248-exp.h"*/
|
||||
|
||||
typedef struct _h248_curr_info_t h248_curr_info_t;
|
||||
|
@ -36,7 +37,7 @@ typedef void (*h248_pkg_param_dissector_t)(proto_tree* tree, tvbuff_t* tvb, pack
|
|||
|
||||
extern void h248_param_bytes_item(proto_tree*, tvbuff_t*, packet_info* , int, h248_curr_info_t*,void* ignored);
|
||||
extern void h248_param_uint_item(proto_tree*, tvbuff_t*, packet_info* , int, h248_curr_info_t*,void* ignored);
|
||||
extern void h248_param_ber_integer(proto_tree*, tvbuff_t*, packet_info* , int, h248_curr_info_t*,void* ignored);
|
||||
WS_DLL_PUBLIC void h248_param_ber_integer(proto_tree*, tvbuff_t*, packet_info* , int, h248_curr_info_t*,void* ignored);
|
||||
extern void h248_param_ber_octetstring(proto_tree*, tvbuff_t*, packet_info* , int, h248_curr_info_t*,void* ignored);
|
||||
extern void h248_param_ber_boolean(proto_tree*, tvbuff_t*, packet_info* , int, h248_curr_info_t*,void* ignored);
|
||||
extern void external_dissector(proto_tree*, tvbuff_t*, packet_info* , int, h248_curr_info_t*,void* dissector_handle);
|
||||
|
@ -112,6 +113,7 @@ struct _h248_curr_info_t {
|
|||
const h248_pkg_param_t* par;
|
||||
};
|
||||
|
||||
WS_DLL_PUBLIC
|
||||
void h248_register_package(const h248_package_t* pkg, pkg_reg_action reg_action);
|
||||
|
||||
#endif /* PACKET_H248_H */
|
||||
|
|
|
@ -220,6 +220,8 @@ printf("added key in %u keytype:%d len:%d\n",pinfo->fd->num, keytype, keyleng
|
|||
|
||||
static krb5_context krb5_ctx;
|
||||
|
||||
|
||||
WS_DLL_PUBLIC
|
||||
void
|
||||
read_keytab_file(const char *filename)
|
||||
{
|
||||
|
@ -357,6 +359,7 @@ printf("woohoo decrypted keytype:%d in frame:%u\n", ek->keytype, pinfo->fd->num)
|
|||
#elif defined(HAVE_HEIMDAL_KERBEROS)
|
||||
static krb5_context krb5_ctx;
|
||||
|
||||
WS_DLL_PUBLIC
|
||||
void
|
||||
read_keytab_file(const char *filename)
|
||||
{
|
||||
|
@ -551,6 +554,7 @@ clear_keytab(void) {
|
|||
service_key_list = NULL;
|
||||
}
|
||||
|
||||
WS_DLL_PUBLIC
|
||||
static void
|
||||
read_keytab_file(const char *service_key_file)
|
||||
{
|
||||
|
|
|
@ -27,6 +27,7 @@
|
|||
#define __PACKET_LDAP_H__
|
||||
|
||||
# include <epan/packet.h> /* for dissector_*_t types */
|
||||
#include "ws_symbol_export.h"
|
||||
|
||||
/*
|
||||
* These are all APPLICATION types; the value is the type tag.
|
||||
|
@ -103,6 +104,7 @@ typedef struct ldap_call_response {
|
|||
void register_ldap_name_dissector_handle(const char *attr_type, dissector_handle_t dissector);
|
||||
void register_ldap_name_dissector(const char *attr_type, dissector_t dissector, int proto);
|
||||
|
||||
WS_DLL_PUBLIC
|
||||
int dissect_mscldap_string(tvbuff_t *tvb, int offset, char *str, int max_len, gboolean prepend_dot _U_);
|
||||
|
||||
/*#include "packet-ldap-exp.h" */
|
||||
|
|
|
@ -15,11 +15,11 @@ NetworkProtocolProfile
|
|||
# Addressing-Data-Elements
|
||||
PresentedAddressScreened
|
||||
PresentedAddressUnscreened
|
||||
PresentedNumberScreened
|
||||
PresentedNumberUnscreened
|
||||
PresentedNumberScreened WS_DLL
|
||||
PresentedNumberUnscreened WS_DLL
|
||||
Address
|
||||
PartyNumber
|
||||
PartySubaddress
|
||||
PartyNumber WS_DLL
|
||||
PartySubaddress WS_DLL
|
||||
ScreeningIndicator
|
||||
PresentationAllowedIndicator
|
||||
|
||||
|
|
|
@ -10,7 +10,7 @@ GROUP_BY_PROT
|
|||
-o qsig
|
||||
#.END
|
||||
|
||||
#.EXPORTS EXTERN VALS_WITH_TABLE
|
||||
#.EXPORTS EXTERN VALS_WITH_TABLE WS_DLL
|
||||
|
||||
Name
|
||||
|
||||
|
|
|
@ -13,7 +13,7 @@ CauseRadioNetwork
|
|||
ProcedureCode
|
||||
ProtocolIE-ID
|
||||
|
||||
#.EXPORTS ONLY_VALS WS_VAR
|
||||
#.EXPORTS ONLY_VALS WS_DLL
|
||||
CauseRadioNetwork
|
||||
CauseTransport
|
||||
CauseNas
|
||||
|
|
|
@ -25,6 +25,8 @@
|
|||
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA.
|
||||
*/
|
||||
|
||||
#include "ws_symbol_export.h"
|
||||
|
||||
#define MAX_T38_DATA_ITEMS 4
|
||||
#define MAX_T38_DESC 128
|
||||
|
||||
|
@ -72,6 +74,7 @@ typedef struct _t38_conv
|
|||
} t38_conv;
|
||||
|
||||
/* Add an T38 conversation with the given details */
|
||||
WS_DLL_PUBLIC
|
||||
void t38_add_address(packet_info *pinfo,
|
||||
address *addr, int port,
|
||||
int other_port,
|
||||
|
|
|
@ -4,7 +4,7 @@
|
|||
|
||||
# $Id$
|
||||
|
||||
#.EXPORTS ONLY_VALS WS_VAR
|
||||
#.EXPORTS ONLY_VALS WS_DLL
|
||||
Type-of-msg/t30-indicator
|
||||
Type-of-msg/t30-data
|
||||
#.END
|
||||
|
|
|
@ -26,6 +26,9 @@
|
|||
|
||||
#ifndef PACKET_tcap_H
|
||||
#define PACKET_tcap_H
|
||||
|
||||
#include "ws_symbol_export.h"
|
||||
|
||||
/* TCAP component type */
|
||||
#define TCAP_COMP_INVOKE 0xa1
|
||||
#define TCAP_COMP_RRL 0xa2
|
||||
|
@ -77,10 +80,10 @@ extern dissector_handle_t get_itu_tcap_subdissector(guint32 ssn);
|
|||
dissector_handle_t get_ansi_tcap_subdissector(guint32 ssn);
|
||||
|
||||
extern void add_ansi_tcap_subdissector(guint32 ssn, dissector_handle_t dissector);
|
||||
extern void add_itu_tcap_subdissector(guint32 ssn, dissector_handle_t dissector);
|
||||
WS_DLL_PUBLIC void add_itu_tcap_subdissector(guint32 ssn, dissector_handle_t dissector);
|
||||
|
||||
extern void delete_ansi_tcap_subdissector(guint32 ssn, dissector_handle_t dissector);
|
||||
extern void delete_itu_tcap_subdissector(guint32 ssn, dissector_handle_t dissector);
|
||||
WS_DLL_PUBLIC void delete_itu_tcap_subdissector(guint32 ssn, dissector_handle_t dissector);
|
||||
|
||||
extern void call_tcap_dissector(dissector_handle_t, tvbuff_t*, packet_info*, proto_tree*);
|
||||
|
||||
|
|
|
@ -372,10 +372,6 @@
|
|||
first (like Motorola and SPARC, unlike Intel and VAX). */
|
||||
#cmakedefine WORDS_BIGENDIAN 1
|
||||
|
||||
/* Define as the string to precede external variable declarations in
|
||||
dynamically-linked libraries */
|
||||
#define WS_VAR_IMPORT @WS_VAR_IMPORT@
|
||||
|
||||
/* Define WS_MSVC_NORETURN appropriately for declarations of routines that
|
||||
never return (just like Charlie on the MTA).
|
||||
|
||||
|
|
|
@ -52,7 +52,6 @@
|
|||
@HAVE_PCAP_DATALINK_NAME_TO_VAL@
|
||||
@HAVE_PCAP_DATALINK_VAL_TO_NAME@
|
||||
@HAVE_PCAP_DATALINK_VAL_TO_DESCRIPTION@
|
||||
@HAVE_LIBWIRESHARKDLL@
|
||||
|
||||
@HAVE_PCAP_LIST_DATALINKS@
|
||||
@HAVE_PCAP_FREE_DATALINKS@
|
||||
|
@ -76,15 +75,6 @@
|
|||
@PCAP_NG_DEFAULT@
|
||||
@WANT_PACKET_EDITOR@
|
||||
|
||||
/* define macro for importing variables from an dll
|
||||
* it depends on HAVE_LIBWIRESHARKDLL and _NEED_VAR_IMPORT_
|
||||
*/
|
||||
#if defined (_NEED_VAR_IMPORT_) && defined (HAVE_LIBWIRESHARKDLL)
|
||||
# define WS_VAR_IMPORT __declspec(dllimport) extern
|
||||
#else
|
||||
# define WS_VAR_IMPORT extern
|
||||
#endif
|
||||
|
||||
/*
|
||||
* Define WS_MSVC_NORETURN appropriately for declarations of routines that
|
||||
* never return (just like Charlie on the MTA).
|
||||
|
|
|
@ -1508,7 +1508,6 @@ WINSPARKLE_LIBS=
|
|||
!ENDIF
|
||||
|
||||
!IFDEF ENABLE_LIBWIRESHARK
|
||||
LIBWIRESHARK_CONFIG=^#define HAVE_LIBWIRESHARKDLL 1
|
||||
# Link plugins with the import library of libwireshark.dll
|
||||
LINK_PLUGINS_WITH_LIBWIRESHARK=USE
|
||||
!ELSE
|
||||
|
|
16
configure.ac
16
configure.ac
|
@ -521,15 +521,11 @@ fi
|
|||
|
||||
CFLAGS_before_fvhidden=$CFLAGS
|
||||
AC_WIRESHARK_GCC_CFLAGS_CHECK(-fvisibility=hidden)
|
||||
if test "x$CLFAGS" != "x$CFLAGS_before_fvhidden"
|
||||
if test "x$CLFAGS" = "x$CFLAGS_before_fvhidden"
|
||||
then
|
||||
# Restore CFLAGS
|
||||
CFLAGS=$CFLAGS_before_fvhidden
|
||||
AC_DEFINE(COMPILE_HIDE_SYMBOLS, "-fvisibility=hidden", [Compiler will hide symbols not exported explicitly using -fvisibility=hidden])
|
||||
else
|
||||
AC_DEFINE(COMPILE_HIDE_SYMBOLS, "", [Compiler will export all symbols from shared libraries])
|
||||
# TODO add other ways of hiding symbols
|
||||
AC_MSG_WARN(Compiler will export all symbols from shared libraries)
|
||||
fi
|
||||
AC_SUBST(COMPILE_HIDE_SYMBOLS)
|
||||
|
||||
AC_WIRESHARK_LDFLAGS_CHECK([-Wl,--as-needed])
|
||||
###AC_WIRESHARK_LDFLAGS_CHECK([-Wl,-M])
|
||||
|
@ -1978,12 +1974,6 @@ fi
|
|||
AM_CONDITIONAL(HAVE_LIBPY, test x$want_python != xno)
|
||||
AC_SUBST(pythondir)
|
||||
|
||||
#
|
||||
# Define WS_VAR_IMPORT appropriately for declarations of external
|
||||
# variables exported from dynamically-linked libraries.
|
||||
#
|
||||
AC_DEFINE(WS_VAR_IMPORT, extern, [Define as the string to precede external variable declarations in dynamically-linked libraries])
|
||||
|
||||
#
|
||||
# Define WS_MSVC_NORETURN appropriately for declarations of routines that
|
||||
# never return (just like Charlie on the MTA).
|
||||
|
|
|
@ -287,7 +287,7 @@ stips the parts outlined below:
|
|||
o Removed the definition:
|
||||
|
||||
#ifndef ENABLE_STATIC
|
||||
G_MODULE_EXPORT gchar version[] = VERSION;
|
||||
WS_DLL_PUBLIC_NOEXTERN gchar version[] = VERSION;
|
||||
#endif
|
||||
|
||||
o Move relevant code from the blocks and delete these functions:
|
||||
|
|
|
@ -110,9 +110,9 @@ extern int udp_term_stats_tree_packet(stats_tree *st, /* st as it was passed to
|
|||
}
|
||||
|
||||
#ifndef ENABLE_STATIC
|
||||
G_MODULE_EXPORT const gchar version[] = "0.0";
|
||||
WS_DLL_PUBLIC_NOEXTERN const gchar version[] = "0.0";
|
||||
|
||||
G_MODULE_EXPORT void plugin_register_tap_listener(void) {
|
||||
WS_DLL_PUBLIC_NOEXTERN void plugin_register_tap_listener(void) {
|
||||
|
||||
stats_tree_register("udp", /* the proto we are going to "tap" */
|
||||
"udp_terms", /* the abbreviation for this tree (to be used as -z udp_terms,tree) */
|
||||
|
|
|
@ -1115,9 +1115,9 @@ static void register_foo_stat_trees(void) {
|
|||
foo_stats_tree_packet, foo_stats_tree_init, NULL);
|
||||
}
|
||||
|
||||
G_MODULE_EXPORT const gchar version[] = "0.0";
|
||||
WS_DLL_PUBLIC_NOEXTERN const gchar version[] = "0.0";
|
||||
|
||||
G_MODULE_EXPORT void plugin_register_tap_listener(void)
|
||||
WS_DLL_PUBLIC_NOEXTERN void plugin_register_tap_listener(void)
|
||||
{
|
||||
register_foo_stat_trees();
|
||||
}
|
||||
|
|
|
@ -1548,6 +1548,7 @@ add_dependencies(epan svnversion)
|
|||
|
||||
set(FULL_SO_VERSION "0.0.0")
|
||||
|
||||
set_target_properties(epan PROPERTIES COMPILE_DEFINITIONS "WS_BUILD_DLL")
|
||||
set_target_properties(epan PROPERTIES LINK_FLAGS "${WS_LINK_FLAGS}")
|
||||
set_target_properties(epan PROPERTIES VERSION ${FULL_SO_VERSION} SOVERSION 0)
|
||||
|
||||
|
@ -1573,7 +1574,7 @@ file(MAKE_DIRECTORY abi-check-headers abi-check-headers/epan
|
|||
abi-check-headers/wmem)
|
||||
file(MAKE_DIRECTORY abi-check-headers/epan)
|
||||
|
||||
file(COPY ../color.h ../register.h DESTINATION abi-check-headers)
|
||||
file(COPY ../color.h ../register.h ../ws_symbol_export.h DESTINATION abi-check-headers)
|
||||
file(COPY ${EPAN_HEADERS} DESTINATION abi-check-headers/epan)
|
||||
file(COPY ${CRYPT_HEADERS} DESTINATION abi-check-headers/crypt)
|
||||
file(COPY ${DFILTER_HEADERS} DESTINATION abi-check-headers/dfilter)
|
||||
|
|
|
@ -56,7 +56,7 @@ ACLOCAL_AMFLAGS = `../aclocal-flags`
|
|||
noinst_LTLIBRARIES = libwireshark_generated.la libwireshark_asmopt.la
|
||||
lib_LTLIBRARIES = libwireshark.la
|
||||
# http://www.gnu.org/software/libtool/manual/html_node/Updating-version-info.html
|
||||
libwireshark_la_LDFLAGS = -version-info 0:0:0 -export-symbols libwireshark.sym @LDFLAGS_SHAREDLIB@
|
||||
libwireshark_la_LDFLAGS = -version-info 0:0:0 @LDFLAGS_SHAREDLIB@
|
||||
|
||||
include Makefile.common
|
||||
|
||||
|
@ -64,9 +64,10 @@ INCLUDES = -I$(srcdir)/.. -I$(srcdir)/$(LEMON) -I$(builddir)/wslua \
|
|||
@LUA_INCLUDES@ $(LIBGNUTLS_CFLAGS) $(LIBGCRYPT_CFLAGS) \
|
||||
$(LIBSMI_CFLAGS) $(LIBGEOIP_CFLAGS) $(PY_CFLAGS)
|
||||
|
||||
AM_NON_GENERATED_CFLAGS =-DWS_BUILD_DLL
|
||||
|
||||
if HAVE_WARNINGS_AS_ERRORS
|
||||
AM_NON_GENERATED_CFLAGS = -Werror
|
||||
AM_NON_GENERATED_CFLAGS += -Werror
|
||||
endif
|
||||
|
||||
#Since code generated by lex may trigger gcc warnings, we are now generating two
|
||||
|
@ -100,7 +101,6 @@ EXTRA_DIST = \
|
|||
dtd_parse.h \
|
||||
dtd_preparse.l \
|
||||
enterprise-numbers \
|
||||
libwireshark.def \
|
||||
libwireshark.vcproj \
|
||||
Makefile.common \
|
||||
Makefile.nmake \
|
||||
|
@ -119,7 +119,6 @@ CLEANFILES = \
|
|||
libwireshark_generated.la \
|
||||
libwireshark_asmopt.a \
|
||||
libwireshark_asmopt.la \
|
||||
libwireshark.sym \
|
||||
*~
|
||||
|
||||
DISTCLEANFILES = \
|
||||
|
@ -152,8 +151,7 @@ libwireshark_la_DEPENDENCIES = \
|
|||
ftypes/libftypes.la dfilter/libdfilter.la dissectors/libdissectors.la \
|
||||
dissectors/libdirtydissectors.la wmem/libwmem.la $(wslua_lib) $(wspython_lib) \
|
||||
${top_builddir}/wsutil/libwsutil.la \
|
||||
${top_builddir}/wiretap/libwiretap.la \
|
||||
libwireshark.sym
|
||||
${top_builddir}/wiretap/libwiretap.la
|
||||
|
||||
EXTRA_PROGRAMS = reassemble_test
|
||||
reassemble_test_LDADD = \
|
||||
|
@ -192,21 +190,6 @@ tvbtest.o exntest.o: exceptions.h
|
|||
sminmpec.c: enterprise-numbers ../tools/make-sminmpec.pl
|
||||
$(PERL) $(srcdir)/../tools/make-sminmpec.pl $(srcdir)/enterprise-numbers sminmpec.c
|
||||
|
||||
def_sym_filter_symbols =
|
||||
|
||||
if !HAVE_PLUGINS
|
||||
# If we're not building plugins, these symbols don't get built.
|
||||
# Keep them out of the symbol list.
|
||||
def_sym_filter_symbols += /^register_all_plugin_tap_listeners/ || /^plugin_list/ {next;};
|
||||
endif
|
||||
|
||||
if !HAVE_LIBPY
|
||||
# If we're not building python, these symbols don't get built.
|
||||
# Keep them out of the symbol list.
|
||||
def_sym_filter_symbols += /^py_create_dissector_handle/ || /^py_dissector_args/ {next;};
|
||||
def_sym_filter_symbols += /^py_generic_dissector/ || /^py_pinfo/ || /^py_tree/ || /^py_tvbuff/ {next;};
|
||||
def_sym_filter_symbols += /^hf_register_info_add/ || /^hf_register_info_create/ || /^hf_register_info_destroy/ {next;};
|
||||
endif
|
||||
|
||||
if HAVE_PLUGINS
|
||||
|
||||
|
|
|
@ -19,7 +19,7 @@ GENERATED_CFLAGS=\
|
|||
$(LUA_CFLAGS) $(GNUTLS_CFLAGS) /I$(PCAP_DIR)\include \
|
||||
$(PYTHON_CFLAGS) $(SMI_CFLAGS) $(GEOIP_CFLAGS)
|
||||
|
||||
CFLAGS=$(WARNINGS_ARE_ERRORS) $(GENERATED_CFLAGS)
|
||||
CFLAGS=$(WARNINGS_ARE_ERRORS) $(GENERATED_CFLAGS) -DWS_BUILD_DLL
|
||||
|
||||
!IFDEF LUA_DIR
|
||||
WSLUA_LIB=wslua\wslua.lib
|
||||
|
@ -86,12 +86,12 @@ all: crypt ftypes dfilter wmem $(WSLUA_DIR) $(WSPYTHON_DIR) dissectors libwiresh
|
|||
libwireshark.lib: libwireshark.dll
|
||||
libwireshark.exp: libwireshark.dll
|
||||
|
||||
libwireshark.dll: ..\config.h $(LIBWIRESHARK_OBJECTS) libwireshark.def crypt ftypes dfilter wmem $(WSLUA_DIR) $(WSPYTHON_DIR) dissectors $(DOXYGEN_DEP) $(EXTRA_OBJECTS) \
|
||||
libwireshark.dll: ..\config.h $(LIBWIRESHARK_OBJECTS) crypt ftypes dfilter wmem $(WSLUA_DIR) $(WSPYTHON_DIR) dissectors $(DOXYGEN_DEP) $(EXTRA_OBJECTS) \
|
||||
crypt\airpdcap.lib ftypes\ftypes.lib dfilter\dfilter.lib wmem/wmem.lib dissectors\dissectors.lib $(WSLUA_LIB) $(WSPYTHON_LIB) ..\image\libwireshark.res
|
||||
@echo Linking libwireshark.dll
|
||||
$(link) $(dlllflags) $(conlibsdll) shell32.lib \
|
||||
$(LOCAL_LDFLAGS) $(DLL_LDFLAGS) \
|
||||
/DEF:libwireshark.def /OUT:libwireshark.dll \
|
||||
/OUT:libwireshark.dll \
|
||||
/IMPLIB:libwireshark.lib $(LIBWIRESHARK_OBJECTS) \
|
||||
$(libwireshark_LIBS) ..\image\libwireshark.res \
|
||||
dissectors\register.obj \
|
||||
|
|
|
@ -36,6 +36,7 @@
|
|||
|
||||
#include <epan/address.h>
|
||||
#include <epan/tvbuff.h>
|
||||
#include "ws_symbol_export.h"
|
||||
|
||||
#ifdef __cplusplus
|
||||
extern "C" {
|
||||
|
@ -57,7 +58,7 @@ typedef struct _e_addr_resolve {
|
|||
/*
|
||||
* Flag controlling what names to resolve.
|
||||
*/
|
||||
WS_VAR_IMPORT e_addr_resolve gbl_resolv_flags;
|
||||
WS_DLL_PUBLIC e_addr_resolve gbl_resolv_flags;
|
||||
|
||||
/* global variables */
|
||||
|
||||
|
@ -72,13 +73,13 @@ extern gchar *g_pipxnets_path;
|
|||
* get_udp_port() returns the port name corresponding to that UDP port,
|
||||
* or the port number as a string if not found.
|
||||
*/
|
||||
extern gchar *get_udp_port(guint port);
|
||||
WS_DLL_PUBLIC gchar *get_udp_port(guint port);
|
||||
|
||||
/*
|
||||
* get_tcp_port() returns the port name corresponding to that TCP port,
|
||||
* or the port number as a string if not found.
|
||||
*/
|
||||
extern gchar *get_tcp_port(guint port);
|
||||
WS_DLL_PUBLIC gchar *get_tcp_port(guint port);
|
||||
|
||||
/*
|
||||
* get_dccp_port() returns the port name corresponding to that DCCP port,
|
||||
|
@ -90,7 +91,7 @@ extern gchar *get_dccp_port(guint port);
|
|||
* get_sctp_port() returns the port name corresponding to that SCTP port,
|
||||
* or the port number as a string if not found.
|
||||
*/
|
||||
extern gchar *get_sctp_port(guint port);
|
||||
WS_DLL_PUBLIC gchar *get_sctp_port(guint port);
|
||||
|
||||
/* get_addr_name takes as input an "address", as defined in address.h */
|
||||
/* it returns a string that contains: */
|
||||
|
@ -101,6 +102,7 @@ extern gchar *get_sctp_port(guint port);
|
|||
/* which should be a string representation for the answer -e.g. "10.10.10.10" for IPv4 */
|
||||
/* address 10.10.10.10 */
|
||||
|
||||
WS_DLL_PUBLIC
|
||||
const gchar *get_addr_name(const address *addr);
|
||||
const gchar *se_get_addr_name(const address *addr);
|
||||
|
||||
|
@ -130,25 +132,25 @@ extern void host_name_lookup_init(void);
|
|||
* @return True if any new objects have been resolved since the previous
|
||||
* call. This can be used to trigger a display update, e.g. in Wireshark.
|
||||
*/
|
||||
extern gboolean host_name_lookup_process(void);
|
||||
WS_DLL_PUBLIC gboolean host_name_lookup_process(void);
|
||||
|
||||
/* host_name_lookup_cleanup cleans up an ADNS socket if we're using ADNS */
|
||||
extern void host_name_lookup_cleanup(void);
|
||||
|
||||
/* get_hostname returns the host name or "%d.%d.%d.%d" if not found */
|
||||
extern const gchar *get_hostname(const guint addr);
|
||||
WS_DLL_PUBLIC const gchar *get_hostname(const guint addr);
|
||||
|
||||
/* get_hostname6 returns the host name, or numeric addr if not found */
|
||||
struct e_in6_addr;
|
||||
extern const gchar* get_hostname6(const struct e_in6_addr *ad);
|
||||
WS_DLL_PUBLIC const gchar* get_hostname6(const struct e_in6_addr *ad);
|
||||
|
||||
/* get_ether_name returns the logical name if found in ethers files else
|
||||
"<vendor>_%02x:%02x:%02x" if the vendor code is known else
|
||||
"%02x:%02x:%02x:%02x:%02x:%02x" */
|
||||
extern gchar *get_ether_name(const guint8 *addr);
|
||||
WS_DLL_PUBLIC gchar *get_ether_name(const guint8 *addr);
|
||||
|
||||
/* get_ether_name returns the logical name if found in ethers files else NULL */
|
||||
extern gchar *get_ether_name_if_known(const guint8 *addr);
|
||||
gchar *get_ether_name_if_known(const guint8 *addr);
|
||||
|
||||
/*
|
||||
* Given a sequence of 3 octets containing an OID, get_manuf_name()
|
||||
|
@ -160,7 +162,7 @@ extern const gchar *get_manuf_name(const guint8 *addr);
|
|||
* Given a sequence of 3 octets containing an OID, get_manuf_name_if_known()
|
||||
* returns the vendor name, or NULL if not known.
|
||||
*/
|
||||
extern const gchar *get_manuf_name_if_known(const guint8 *addr);
|
||||
WS_DLL_PUBLIC const gchar *get_manuf_name_if_known(const guint8 *addr);
|
||||
|
||||
/*
|
||||
* Given an integer containing a 24-bit OID, uint_get_manuf_name()
|
||||
|
@ -179,14 +181,14 @@ extern const gchar *uint_get_manuf_name_if_known(const guint oid);
|
|||
* tvb_get_manuf_name() returns the vendor name, or "%02x:%02x:%02x"
|
||||
* if not known.
|
||||
*/
|
||||
extern const gchar *tvb_get_manuf_name(tvbuff_t *tvb, gint offset);
|
||||
WS_DLL_PUBLIC const gchar *tvb_get_manuf_name(tvbuff_t *tvb, gint offset);
|
||||
|
||||
/*
|
||||
* Given a tvbuff and an offset in that tvbuff for a 3-octet OID,
|
||||
* tvb_get_manuf_name_if_known() returns the vendor name, or NULL
|
||||
* if not known.
|
||||
*/
|
||||
extern const gchar *tvb_get_manuf_name_if_known(tvbuff_t *tvb, gint offset);
|
||||
WS_DLL_PUBLIC const gchar *tvb_get_manuf_name_if_known(tvbuff_t *tvb, gint offset);
|
||||
|
||||
/* get_eui64_name returns "<vendor>_%02x:%02x:%02x:%02x:%02x:%02x" if the vendor code is known
|
||||
"%02x:%02x:%02x:%02x:%02x:%02x:%02x:%02x:%02x" */
|
||||
|
@ -209,10 +211,10 @@ extern guint8 *get_ether_addr(const gchar *name);
|
|||
guint32 get_ipxnet_addr(const gchar *name, gboolean *known);
|
||||
|
||||
/* adds a hostname/IPv4 in the hash table */
|
||||
extern void add_ipv4_name(const guint addr, const gchar *name);
|
||||
WS_DLL_PUBLIC void add_ipv4_name(const guint addr, const gchar *name);
|
||||
|
||||
/* adds a hostname/IPv6 in the hash table */
|
||||
extern void add_ipv6_name(const struct e_in6_addr *addr, const gchar *name);
|
||||
WS_DLL_PUBLIC void add_ipv6_name(const struct e_in6_addr *addr, const gchar *name);
|
||||
|
||||
/** Add an additional "hosts" file for IPv4 and IPv6 name resolution.
|
||||
*
|
||||
|
@ -223,10 +225,10 @@ extern void add_ipv6_name(const struct e_in6_addr *addr, const gchar *name);
|
|||
*
|
||||
* @return TRUE if the hosts file can be read.
|
||||
*/
|
||||
extern gboolean add_hosts_file (const char *hosts_file);
|
||||
WS_DLL_PUBLIC gboolean add_hosts_file (const char *hosts_file);
|
||||
|
||||
/* adds a hostname in the hash table */
|
||||
extern gboolean add_ip_name_from_string (const char *addr, const char *name);
|
||||
WS_DLL_PUBLIC gboolean add_ip_name_from_string (const char *addr, const char *name);
|
||||
|
||||
/** Get a list of host name to address mappings we know about.
|
||||
*
|
||||
|
@ -254,7 +256,7 @@ extern gboolean add_ip_name_from_string (const char *addr, const char *name);
|
|||
*
|
||||
* @return The first element in our list of known addresses. May be NULL.
|
||||
*/
|
||||
extern struct addrinfo *get_addrinfo_list(void);
|
||||
WS_DLL_PUBLIC struct addrinfo *get_addrinfo_list(void);
|
||||
|
||||
/* add ethernet address / name corresponding to IP address */
|
||||
extern void add_ether_byip(const guint ip, const guint8 *eth);
|
||||
|
@ -270,6 +272,7 @@ extern void add_ether_byip(const guint ip, const guint8 *eth);
|
|||
* @param[out] addrp The numeric IPv4 address in network byte order.
|
||||
* @return TRUE on success, FALSE on failure, timeout.
|
||||
*/
|
||||
WS_DLL_PUBLIC
|
||||
gboolean get_host_ipaddr(const char *host, guint32 *addrp);
|
||||
|
||||
/** Translates a string representing a hostname or colon-hex IPv6 address
|
||||
|
@ -283,6 +286,7 @@ gboolean get_host_ipaddr(const char *host, guint32 *addrp);
|
|||
* @param[out] addrp The numeric IPv6 address in network byte order.
|
||||
* @return TRUE on success, FALSE on failure or timeout.
|
||||
*/
|
||||
WS_DLL_PUBLIC
|
||||
gboolean get_host_ipaddr6(const char *host, struct e_in6_addr *addrp);
|
||||
|
||||
/*
|
||||
|
@ -290,6 +294,7 @@ gboolean get_host_ipaddr6(const char *host, struct e_in6_addr *addrp);
|
|||
* Return "ip6" if it is IPv6, "ip" otherwise (including the case
|
||||
* that we don't know)
|
||||
*/
|
||||
WS_DLL_PUBLIC
|
||||
const char* host_ip_af(const char *host);
|
||||
|
||||
#ifdef __cplusplus
|
||||
|
|
12
epan/asn1.h
12
epan/asn1.h
|
@ -26,6 +26,8 @@
|
|||
#ifndef __ASN1_H__
|
||||
#define __ASN1_H__
|
||||
|
||||
#include "ws_symbol_export.h"
|
||||
|
||||
typedef enum {
|
||||
ASN1_ENC_BER, /* X.690 - BER, CER, DER */
|
||||
ASN1_ENC_PER, /* X.691 - PER */
|
||||
|
@ -173,7 +175,7 @@ typedef struct _rose_ctx_t {
|
|||
void *private_data;
|
||||
} rose_ctx_t;
|
||||
|
||||
extern void asn1_ctx_init(asn1_ctx_t *actx, asn1_enc_e encoding, gboolean aligned, packet_info *pinfo);
|
||||
WS_DLL_PUBLIC void asn1_ctx_init(asn1_ctx_t *actx, asn1_enc_e encoding, gboolean aligned, packet_info *pinfo);
|
||||
extern gboolean asn1_ctx_check_signature(asn1_ctx_t *actx);
|
||||
extern void asn1_ctx_clean_external(asn1_ctx_t *actx);
|
||||
extern void asn1_ctx_clean_epdv(asn1_ctx_t *actx);
|
||||
|
@ -187,12 +189,12 @@ extern void asn1_param_push_integer(asn1_ctx_t *actx, gint32 value);
|
|||
extern gboolean asn1_param_get_boolean(asn1_ctx_t *actx, const gchar *name);
|
||||
extern gint32 asn1_param_get_integer(asn1_ctx_t *actx, const gchar *name);
|
||||
|
||||
extern void rose_ctx_init(rose_ctx_t *rctx);
|
||||
WS_DLL_PUBLIC void rose_ctx_init(rose_ctx_t *rctx);
|
||||
extern gboolean rose_ctx_check_signature(rose_ctx_t *rctx);
|
||||
extern void rose_ctx_clean_data(rose_ctx_t *rctx);
|
||||
WS_DLL_PUBLIC void rose_ctx_clean_data(rose_ctx_t *rctx);
|
||||
|
||||
extern asn1_ctx_t *get_asn1_ctx(void *ptr);
|
||||
extern rose_ctx_t *get_rose_ctx(void *ptr);
|
||||
WS_DLL_PUBLIC asn1_ctx_t *get_asn1_ctx(void *ptr);
|
||||
WS_DLL_PUBLIC rose_ctx_t *get_rose_ctx(void *ptr);
|
||||
|
||||
extern double asn1_get_real(const guint8 *real_ptr, gint real_len);
|
||||
|
||||
|
|
|
@ -25,12 +25,14 @@
|
|||
#define __BASE64_H__
|
||||
|
||||
#include <epan/tvbuff.h>
|
||||
#include "ws_symbol_export.h"
|
||||
|
||||
#ifdef __cplusplus
|
||||
extern "C" {
|
||||
#endif /* __cplusplus */
|
||||
|
||||
/* In-place decoding of a base64 string. Resulting string is NULL terminated */
|
||||
WS_DLL_PUBLIC
|
||||
size_t epan_base64_decode(char *s);
|
||||
|
||||
extern tvbuff_t* base64_to_tvb(tvbuff_t *parent, const char *base64);
|
||||
|
|
|
@ -25,11 +25,13 @@
|
|||
#ifndef __BITSWAP_H__
|
||||
#define __BITSWAP_H__
|
||||
|
||||
#include "ws_symbol_export.h"
|
||||
|
||||
#ifdef __cplusplus
|
||||
extern "C" {
|
||||
#endif /* __cplusplus */
|
||||
|
||||
extern guint8 swaptab[256];
|
||||
WS_DLL_PUBLIC guint8 swaptab[256];
|
||||
|
||||
#define BIT_SWAP(b) (swaptab[b])
|
||||
|
||||
|
|
|
@ -32,6 +32,7 @@
|
|||
#include <epan/conversation.h>
|
||||
#include <epan/dissectors/packet-camel.h>
|
||||
#include <epan/tcap-persistentdata.h>
|
||||
#include "ws_symbol_export.h"
|
||||
|
||||
#ifdef __cplusplus
|
||||
extern "C" {
|
||||
|
@ -56,7 +57,7 @@ extern "C" {
|
|||
|
||||
#define CAMELSRT_SMS_INITIALDP 9
|
||||
|
||||
WS_VAR_IMPORT const value_string camelSRTtype_naming[];
|
||||
WS_DLL_PUBLIC const value_string camelSRTtype_naming[];
|
||||
|
||||
/** If we have a request message and its response,
|
||||
(eg: ApplyCharging, ApplyChargingReport)
|
||||
|
@ -134,7 +135,7 @@ void camelsrt_call_matching(tvbuff_t *tvb,
|
|||
proto_tree *tree,
|
||||
struct camelsrt_info_t * p_camel_info);
|
||||
|
||||
WS_VAR_IMPORT gboolean gcamel_StatSRT;
|
||||
WS_DLL_PUBLIC gboolean gcamel_StatSRT;
|
||||
|
||||
#ifdef __cplusplus
|
||||
}
|
||||
|
|
|
@ -24,6 +24,8 @@
|
|||
#ifndef __CHARSETS_H__
|
||||
#define __CHARSETS_H__
|
||||
|
||||
#include "ws_symbol_export.h"
|
||||
|
||||
#ifdef __cplusplus
|
||||
extern "C" {
|
||||
#endif /* __cplusplus */
|
||||
|
@ -32,7 +34,9 @@ extern "C" {
|
|||
void ASCII_to_EBCDIC(guint8 *buf, guint bytes);
|
||||
guint8 ASCII_to_EBCDIC1(guint8 c);
|
||||
#endif
|
||||
WS_DLL_PUBLIC
|
||||
void EBCDIC_to_ASCII(guint8 *buf, guint bytes);
|
||||
WS_DLL_PUBLIC
|
||||
guint8 EBCDIC_to_ASCII1(guint8 c);
|
||||
|
||||
#ifdef __cplusplus
|
||||
|
|
|
@ -26,6 +26,7 @@
|
|||
#define __CIRCUIT_H__
|
||||
|
||||
#include "packet.h" /* for circuit dissector type */
|
||||
#include "ws_symbol_export.h"
|
||||
|
||||
#ifdef __cplusplus
|
||||
extern "C" {
|
||||
|
@ -65,7 +66,7 @@ extern void circuit_init(void);
|
|||
* Given a circuit type and circuit ID for a packet, create a new circuit
|
||||
* to contain packets for that circuit.
|
||||
*/
|
||||
extern circuit_t *circuit_new(circuit_type ctype, guint32 circuit_id,
|
||||
WS_DLL_PUBLIC circuit_t *circuit_new(circuit_type ctype, guint32 circuit_id,
|
||||
guint32 first_frame);
|
||||
|
||||
/**
|
||||
|
@ -73,7 +74,7 @@ extern circuit_t *circuit_new(circuit_type ctype, guint32 circuit_id,
|
|||
* that type and ID whose range of frames includes that frame number.
|
||||
* Returns NULL if not found.
|
||||
*/
|
||||
extern circuit_t *find_circuit(circuit_type ctype, guint32 circuit_id,
|
||||
WS_DLL_PUBLIC circuit_t *find_circuit(circuit_type ctype, guint32 circuit_id,
|
||||
guint32 frame);
|
||||
|
||||
/**
|
||||
|
@ -82,10 +83,10 @@ extern circuit_t *find_circuit(circuit_type ctype, guint32 circuit_id,
|
|||
*/
|
||||
extern void close_circuit(circuit_t *circuit, guint32 last_frame);
|
||||
|
||||
extern void circuit_add_proto_data(circuit_t *conv, int proto,
|
||||
WS_DLL_PUBLIC void circuit_add_proto_data(circuit_t *conv, int proto,
|
||||
void *proto_data);
|
||||
extern void *circuit_get_proto_data(circuit_t *conv, int proto);
|
||||
extern void circuit_delete_proto_data(circuit_t *conv, int proto);
|
||||
WS_DLL_PUBLIC void *circuit_get_proto_data(circuit_t *conv, int proto);
|
||||
void circuit_delete_proto_data(circuit_t *conv, int proto);
|
||||
|
||||
extern void circuit_set_dissector(circuit_t *circuit,
|
||||
dissector_handle_t handle);
|
||||
|
|
|
@ -26,6 +26,7 @@
|
|||
#define _CODECS_H_
|
||||
|
||||
#include <epan/epan.h>
|
||||
#include "ws_symbol_export.h"
|
||||
|
||||
struct codec_handle;
|
||||
typedef struct codec_handle *codec_handle_t;
|
||||
|
@ -34,10 +35,10 @@ typedef void *(*codec_init_fn)(void);
|
|||
typedef void (*codec_release_fn)(void *context);
|
||||
typedef int (*codec_decode_fn)(void *context, const void *input, int inputSizeBytes, void *output, int *outputSizeBytes);
|
||||
|
||||
extern void register_codec(const char *name, codec_init_fn init_fn, codec_release_fn release_fn, codec_decode_fn decode_fn);
|
||||
extern codec_handle_t find_codec(const char *name);
|
||||
extern void *codec_init(codec_handle_t codec);
|
||||
extern void codec_release(codec_handle_t codec, void *context);
|
||||
extern int codec_decode(codec_handle_t codec, void *context, const void *input, int inputSizeBytes, void *output, int *outputSizeBytes);
|
||||
WS_DLL_PUBLIC void register_codec(const char *name, codec_init_fn init_fn, codec_release_fn release_fn, codec_decode_fn decode_fn);
|
||||
WS_DLL_PUBLIC codec_handle_t find_codec(const char *name);
|
||||
WS_DLL_PUBLIC void *codec_init(codec_handle_t codec);
|
||||
WS_DLL_PUBLIC void codec_release(codec_handle_t codec, void *context);
|
||||
WS_DLL_PUBLIC int codec_decode(codec_handle_t codec, void *context, const void *input, int inputSizeBytes, void *output, int *outputSizeBytes);
|
||||
|
||||
#endif
|
||||
|
|
|
@ -30,6 +30,7 @@
|
|||
#include "column_info.h"
|
||||
#include "packet_info.h"
|
||||
#include <epan/epan.h>
|
||||
#include "ws_symbol_export.h"
|
||||
|
||||
#ifdef __cplusplus
|
||||
extern "C" {
|
||||
|
@ -44,14 +45,14 @@ extern "C" {
|
|||
*
|
||||
* Internal, don't use this in dissectors!
|
||||
*/
|
||||
extern void col_setup(column_info *cinfo, const gint num_cols);
|
||||
WS_DLL_PUBLIC void col_setup(column_info *cinfo, const gint num_cols);
|
||||
|
||||
/** Cleanup all the data structures for constructing column data;
|
||||
* undoes the alocations that col_setup() does.
|
||||
*
|
||||
* Internal, don't use this in dissectors!
|
||||
*/
|
||||
extern void col_cleanup(column_info *cinfo);
|
||||
WS_DLL_PUBLIC void col_cleanup(column_info *cinfo);
|
||||
|
||||
/** Initialize the data structures for constructing column data.
|
||||
*
|
||||
|
@ -63,13 +64,13 @@ extern void col_init(column_info *cinfo);
|
|||
*
|
||||
* Internal, don't use this in dissectors!
|
||||
*/
|
||||
extern void col_fill_in_frame_data(const frame_data *fd, column_info *cinfo, const gint col, gboolean const fill_col_exprs);
|
||||
WS_DLL_PUBLIC void col_fill_in_frame_data(const frame_data *fd, column_info *cinfo, const gint col, gboolean const fill_col_exprs);
|
||||
|
||||
/** Fill in all columns of the given packet.
|
||||
*
|
||||
* Internal, don't use this in dissectors!
|
||||
*/
|
||||
extern void col_fill_in(packet_info *pinfo, const gboolean fill_col_exprs, const gboolean fill_fd_colums);
|
||||
WS_DLL_PUBLIC void col_fill_in(packet_info *pinfo, const gboolean fill_col_exprs, const gboolean fill_fd_colums);
|
||||
|
||||
/** Fill in columns if we got an error reading the packet.
|
||||
* We set most columns to "???", and set the Info column to an error
|
||||
|
@ -77,7 +78,7 @@ extern void col_fill_in(packet_info *pinfo, const gboolean fill_col_exprs, const
|
|||
*
|
||||
* Internal, don't use this in dissectors!
|
||||
*/
|
||||
extern void col_fill_in_error(column_info *cinfo, frame_data *fdata, const gboolean fill_col_exprs, const gboolean fill_fd_colums);
|
||||
WS_DLL_PUBLIC void col_fill_in_error(column_info *cinfo, frame_data *fdata, const gboolean fill_col_exprs, const gboolean fill_fd_colums);
|
||||
|
||||
/* Utility routines used by packet*.c */
|
||||
|
||||
|
@ -86,14 +87,14 @@ extern void col_fill_in_error(column_info *cinfo, frame_data *fdata, const gbool
|
|||
* @param cinfo the current packet row
|
||||
* @return TRUE if it's writable, FALSE if not
|
||||
*/
|
||||
extern gboolean col_get_writable(column_info *cinfo);
|
||||
WS_DLL_PUBLIC gboolean col_get_writable(column_info *cinfo);
|
||||
|
||||
/** Set the columns writable.
|
||||
*
|
||||
* @param cinfo the current packet row
|
||||
* @param writable TRUE if it's writable, FALSE if not
|
||||
*/
|
||||
extern void col_set_writable(column_info *cinfo, const gboolean writable);
|
||||
WS_DLL_PUBLIC void col_set_writable(column_info *cinfo, const gboolean writable);
|
||||
|
||||
/**
|
||||
* Checks if the given column can be filled with data.
|
||||
|
@ -104,7 +105,7 @@ extern void col_set_writable(column_info *cinfo, const gboolean writable);
|
|||
* @deprecated Not needed in new code the check is done in
|
||||
* in the column function calls.
|
||||
*/
|
||||
extern gint check_col(column_info *cinfo, const gint col);
|
||||
WS_DLL_PUBLIC gint check_col(column_info *cinfo, const gint col);
|
||||
|
||||
/** Sets a fence for the current column content,
|
||||
* so this content won't be affected by further col_... function calls.
|
||||
|
@ -115,7 +116,7 @@ extern gint check_col(column_info *cinfo, const gint col);
|
|||
* @param cinfo the current packet row
|
||||
* @param col the column to use, e.g. COL_INFO
|
||||
*/
|
||||
extern void col_set_fence(column_info *cinfo, const gint col);
|
||||
WS_DLL_PUBLIC void col_set_fence(column_info *cinfo, const gint col);
|
||||
|
||||
/** Gets the text of a column element.
|
||||
*
|
||||
|
@ -131,7 +132,7 @@ extern const gchar *col_get_text(column_info *cinfo, const gint col);
|
|||
* @param cinfo the current packet row
|
||||
* @param col the column to use, e.g. COL_INFO
|
||||
*/
|
||||
extern void col_clear(column_info *cinfo, const gint col);
|
||||
WS_DLL_PUBLIC void col_clear(column_info *cinfo, const gint col);
|
||||
|
||||
/** Set (replace) the text of a column element, the text won't be copied.
|
||||
*
|
||||
|
@ -141,7 +142,7 @@ extern void col_clear(column_info *cinfo, const gint col);
|
|||
* @param col the column to use, e.g. COL_INFO
|
||||
* @param str the string to set
|
||||
*/
|
||||
extern void col_set_str(column_info *cinfo, const gint col, const gchar * str);
|
||||
WS_DLL_PUBLIC void col_set_str(column_info *cinfo, const gint col, const gchar * str);
|
||||
|
||||
/** Add (replace) the text of a column element, the text will be copied.
|
||||
*
|
||||
|
@ -149,7 +150,7 @@ extern void col_set_str(column_info *cinfo, const gint col, const gchar * str);
|
|||
* @param col the column to use, e.g. COL_INFO
|
||||
* @param str the string to add
|
||||
*/
|
||||
extern void col_add_str(column_info *cinfo, const gint col, const gchar *str);
|
||||
WS_DLL_PUBLIC void col_add_str(column_info *cinfo, const gint col, const gchar *str);
|
||||
|
||||
/** Add (replace) the text of a column element, the text will be formatted and copied.
|
||||
*
|
||||
|
@ -160,20 +161,24 @@ extern void col_add_str(column_info *cinfo, const gint col, const gchar *str);
|
|||
* @param format the format string
|
||||
* @param ... the variable number of parameters
|
||||
*/
|
||||
extern void col_add_fstr(column_info *cinfo, const gint col, const gchar *format, ...)
|
||||
WS_DLL_PUBLIC void col_add_fstr(column_info *cinfo, const gint col, const gchar *format, ...)
|
||||
G_GNUC_PRINTF(3, 4);
|
||||
|
||||
/** For internal Wireshark use only. Not to be called from dissectors. */
|
||||
void col_custom_set_edt(epan_dissect_t *edt, column_info *cinfo);
|
||||
|
||||
/** For internal Wireshark use only. Not to be called from dissectors. */
|
||||
WS_DLL_PUBLIC
|
||||
void col_custom_prime_edt(epan_dissect_t *edt, column_info *cinfo);
|
||||
|
||||
/** For internal Wireshark use only. Not to be called from dissectors. */
|
||||
WS_DLL_PUBLIC
|
||||
gboolean have_custom_cols(column_info *cinfo);
|
||||
/** For internal Wireshark use only. Not to be called from dissectors. */
|
||||
WS_DLL_PUBLIC
|
||||
gboolean col_has_time_fmt(column_info *cinfo, const gint col);
|
||||
/** For internal Wireshark use only. Not to be called from dissectors. */
|
||||
WS_DLL_PUBLIC
|
||||
gboolean col_based_on_frame_data(column_info *cinfo, const gint col);
|
||||
|
||||
/** Append the given text to a column element, the text will be copied.
|
||||
|
@ -182,7 +187,7 @@ gboolean col_based_on_frame_data(column_info *cinfo, const gint col);
|
|||
* @param col the column to use, e.g. COL_INFO
|
||||
* @param str the string to append
|
||||
*/
|
||||
extern void col_append_str(column_info *cinfo, const gint col, const gchar *str);
|
||||
WS_DLL_PUBLIC void col_append_str(column_info *cinfo, const gint col, const gchar *str);
|
||||
|
||||
/** Append the given text to a column element, the text will be formatted and copied.
|
||||
*
|
||||
|
@ -193,7 +198,7 @@ extern void col_append_str(column_info *cinfo, const gint col, const gchar *str)
|
|||
* @param format the format string
|
||||
* @param ... the variable number of parameters
|
||||
*/
|
||||
extern void col_append_fstr(column_info *cinfo, const gint col, const gchar *format, ...)
|
||||
WS_DLL_PUBLIC void col_append_fstr(column_info *cinfo, const gint col, const gchar *format, ...)
|
||||
G_GNUC_PRINTF(3, 4);
|
||||
|
||||
/** Prepend the given text to a column element, the text will be formatted and copied.
|
||||
|
@ -203,7 +208,7 @@ extern void col_append_fstr(column_info *cinfo, const gint col, const gchar *for
|
|||
* @param format the format string
|
||||
* @param ... the variable number of parameters
|
||||
*/
|
||||
extern void col_prepend_fstr(column_info *cinfo, const gint col, const gchar *format, ...)
|
||||
WS_DLL_PUBLIC void col_prepend_fstr(column_info *cinfo, const gint col, const gchar *format, ...)
|
||||
G_GNUC_PRINTF(3, 4);
|
||||
|
||||
/**Prepend the given text to a column element, the text will be formatted and copied.
|
||||
|
@ -214,7 +219,7 @@ extern void col_prepend_fstr(column_info *cinfo, const gint col, const gchar *fo
|
|||
* there is already a fence created. This function will create a fence in case
|
||||
* it does not yet exist.
|
||||
*/
|
||||
extern void col_prepend_fence_fstr(column_info *cinfo, const gint col, const gchar *format, ...)
|
||||
WS_DLL_PUBLIC void col_prepend_fence_fstr(column_info *cinfo, const gint col, const gchar *format, ...)
|
||||
G_GNUC_PRINTF(3, 4);
|
||||
|
||||
/** Append the given text (prepended by a separator) to a column element.
|
||||
|
@ -226,7 +231,7 @@ extern void col_prepend_fence_fstr(column_info *cinfo, const gint col, const gch
|
|||
* @param sep the separator string or NULL for default: ", "
|
||||
* @param str the string to append
|
||||
*/
|
||||
extern void col_append_sep_str(column_info *cinfo, const gint col, const gchar *sep,
|
||||
WS_DLL_PUBLIC void col_append_sep_str(column_info *cinfo, const gint col, const gchar *sep,
|
||||
const gchar *str);
|
||||
|
||||
/** Append the given text (prepended by a separator) to a column element.
|
||||
|
@ -239,7 +244,7 @@ extern void col_append_sep_str(column_info *cinfo, const gint col, const gchar *
|
|||
* @param format the format string
|
||||
* @param ... the variable number of parameters
|
||||
*/
|
||||
extern void col_append_sep_fstr(column_info *cinfo, const gint col, const gchar *sep,
|
||||
WS_DLL_PUBLIC void col_append_sep_fstr(column_info *cinfo, const gint col, const gchar *sep,
|
||||
const gchar *format, ...)
|
||||
G_GNUC_PRINTF(4, 5);
|
||||
|
||||
|
@ -254,10 +259,10 @@ extern void col_append_sep_fstr(column_info *cinfo, const gint col, const gchar
|
|||
* @param fieldname the fieldname to use for creating a filter (when
|
||||
* applying/preparing/copying as filter)
|
||||
*/
|
||||
extern void col_set_time(column_info *cinfo, const int col,
|
||||
WS_DLL_PUBLIC void col_set_time(column_info *cinfo, const int col,
|
||||
const nstime_t *ts, const char *fieldname);
|
||||
|
||||
extern void set_fd_time(frame_data *fd, gchar *buf);
|
||||
WS_DLL_PUBLIC void set_fd_time(frame_data *fd, gchar *buf);
|
||||
|
||||
#ifdef __cplusplus
|
||||
}
|
||||
|
|
|
@ -25,6 +25,8 @@
|
|||
#ifndef __COLUMN_H__
|
||||
#define __COLUMN_H__
|
||||
|
||||
#include "ws_symbol_export.h"
|
||||
|
||||
#ifdef __cplusplus
|
||||
extern "C" {
|
||||
#endif /* __cplusplus */
|
||||
|
@ -38,26 +40,46 @@ typedef struct _fmt_data {
|
|||
gboolean resolved; /* if TRUE, show a more human-readable name */
|
||||
} fmt_data;
|
||||
|
||||
WS_DLL_PUBLIC
|
||||
const gchar *col_format_to_string(const gint);
|
||||
WS_DLL_PUBLIC
|
||||
const gchar *col_format_desc(const gint);
|
||||
WS_DLL_PUBLIC
|
||||
gint get_column_format(const gint);
|
||||
WS_DLL_PUBLIC
|
||||
void set_column_format(const gint, const gint);
|
||||
WS_DLL_PUBLIC
|
||||
void get_column_format_matches(gboolean *, const gint);
|
||||
WS_DLL_PUBLIC
|
||||
gint get_column_format_from_str(const gchar *);
|
||||
WS_DLL_PUBLIC
|
||||
gchar *get_column_title(const gint);
|
||||
WS_DLL_PUBLIC
|
||||
void set_column_title(const gint, const gchar *);
|
||||
WS_DLL_PUBLIC
|
||||
gboolean get_column_visible(const gint);
|
||||
WS_DLL_PUBLIC
|
||||
void set_column_visible(const gint, gboolean);
|
||||
WS_DLL_PUBLIC
|
||||
gboolean get_column_resolved(const gint);
|
||||
WS_DLL_PUBLIC
|
||||
void set_column_resolved(const gint, gboolean);
|
||||
WS_DLL_PUBLIC
|
||||
const gchar *get_column_custom_field(const gint);
|
||||
WS_DLL_PUBLIC
|
||||
void set_column_custom_field(const gint, const char *);
|
||||
WS_DLL_PUBLIC
|
||||
gint get_column_custom_occurrence(const gint);
|
||||
WS_DLL_PUBLIC
|
||||
void set_column_custom_occurrence(const gint, const gint);
|
||||
WS_DLL_PUBLIC
|
||||
const gchar *get_column_width_string(const gint, const gint);
|
||||
WS_DLL_PUBLIC
|
||||
const char *get_column_longest_string(const gint);
|
||||
WS_DLL_PUBLIC
|
||||
gint get_column_char_width(const gint format);
|
||||
|
||||
WS_DLL_PUBLIC
|
||||
void
|
||||
build_column_format_array(column_info *cinfo, const gint num_cols, const gboolean reset_fences);
|
||||
|
||||
|
|
|
@ -25,6 +25,8 @@
|
|||
#ifndef __CONVERSATION_H__
|
||||
#define __CONVERSATION_H__
|
||||
|
||||
#include "ws_symbol_export.h"
|
||||
|
||||
#ifdef __cplusplus
|
||||
extern "C" {
|
||||
#endif /* __cplusplus */
|
||||
|
@ -102,7 +104,7 @@ extern void conversation_init(void);
|
|||
* and/or port 2 value are not given and any value is acceptable
|
||||
* when searching for this conversation.
|
||||
*/
|
||||
extern conversation_t *conversation_new(const guint32 setup_frame, const address *addr1, const address *addr2,
|
||||
WS_DLL_PUBLIC conversation_t *conversation_new(const guint32 setup_frame, const address *addr1, const address *addr2,
|
||||
const port_type ptype, const guint32 port1, const guint32 port2, const guint options);
|
||||
|
||||
/**
|
||||
|
@ -141,7 +143,7 @@ extern conversation_t *conversation_new(const guint32 setup_frame, const address
|
|||
*
|
||||
* otherwise, we found no matching conversation, and return NULL.
|
||||
*/
|
||||
extern conversation_t *find_conversation(const guint32 frame_num, const address *addr_a, const address *addr_b,
|
||||
WS_DLL_PUBLIC conversation_t *find_conversation(const guint32 frame_num, const address *addr_a, const address *addr_b,
|
||||
const port_type ptype, const guint32 port_a, const guint32 port_b, const guint options);
|
||||
|
||||
/** A helper function that calls find_conversation() and, if a conversation is
|
||||
|
@ -150,14 +152,14 @@ extern conversation_t *find_conversation(const guint32 frame_num, const address
|
|||
* No options are used, though we could extend this API to include an options
|
||||
* parameter.
|
||||
*/
|
||||
extern conversation_t *find_or_create_conversation(packet_info *pinfo);
|
||||
WS_DLL_PUBLIC conversation_t *find_or_create_conversation(packet_info *pinfo);
|
||||
|
||||
extern void conversation_add_proto_data(conversation_t *conv, const int proto,
|
||||
WS_DLL_PUBLIC void conversation_add_proto_data(conversation_t *conv, const int proto,
|
||||
void *proto_data);
|
||||
extern void *conversation_get_proto_data(const conversation_t *conv, const int proto);
|
||||
extern void conversation_delete_proto_data(conversation_t *conv, const int proto);
|
||||
WS_DLL_PUBLIC void *conversation_get_proto_data(const conversation_t *conv, const int proto);
|
||||
WS_DLL_PUBLIC void conversation_delete_proto_data(conversation_t *conv, const int proto);
|
||||
|
||||
extern void conversation_set_dissector(conversation_t *conversation,
|
||||
WS_DLL_PUBLIC void conversation_set_dissector(conversation_t *conversation,
|
||||
const dissector_handle_t handle);
|
||||
/**
|
||||
* Given two address/port pairs for a packet, search for a matching
|
||||
|
|
|
@ -36,6 +36,7 @@
|
|||
#include <glib.h>
|
||||
#include <epan/tvbuff.h>
|
||||
#include <wsutil/crc16.h>
|
||||
#include <epan/crc16-tvb.h>
|
||||
#include <wsutil/crc16-plain.h>
|
||||
|
||||
|
||||
|
|
|
@ -27,6 +27,8 @@
|
|||
#ifndef __CRC16_TVB_H__
|
||||
#define __CRC16_TVB_H__
|
||||
|
||||
#include "ws_symbol_export.h"
|
||||
|
||||
#ifdef __cplusplus
|
||||
extern "C" {
|
||||
#endif /* __cplusplus */
|
||||
|
@ -35,20 +37,20 @@ extern "C" {
|
|||
@param tvb The tv buffer containing the data.
|
||||
@param len The number of bytes to include in the computation.
|
||||
@return The CRC16 CCITT checksum. */
|
||||
extern guint16 crc16_ccitt_tvb(tvbuff_t *tvb, guint len);
|
||||
WS_DLL_PUBLIC guint16 crc16_ccitt_tvb(tvbuff_t *tvb, guint len);
|
||||
|
||||
/** Compute CRC16 X.25 CCITT checksum of a tv buffer.
|
||||
@param tvb The tv buffer containing the data.
|
||||
@param len The number of bytes to include in the computation.
|
||||
@return The CRC16 X.25 CCITT checksum. */
|
||||
extern guint16 crc16_x25_ccitt_tvb(tvbuff_t *tvb, guint len);
|
||||
WS_DLL_PUBLIC guint16 crc16_x25_ccitt_tvb(tvbuff_t *tvb, guint len);
|
||||
|
||||
/** Compute CRC16 CCITT checksum of a tv buffer.
|
||||
@param tvb The tv buffer containing the data.
|
||||
@param offset The offset into the tv buffer.
|
||||
@param len The number of bytes to include in the computation.
|
||||
@return The CRC16 CCITT checksum. */
|
||||
extern guint16 crc16_ccitt_tvb_offset(tvbuff_t *tvb, guint offset, guint len);
|
||||
WS_DLL_PUBLIC guint16 crc16_ccitt_tvb_offset(tvbuff_t *tvb, guint offset, guint len);
|
||||
|
||||
/** Compute CRC16 CCITT checksum of a tv buffer. If computing the
|
||||
* checksum over multiple tv buffers and you want to feed the partial CRC16
|
||||
|
@ -57,7 +59,7 @@ extern guint16 crc16_ccitt_tvb_offset(tvbuff_t *tvb, guint offset, guint len);
|
|||
@param len The number of bytes to include in the computation.
|
||||
@param seed The seed to use.
|
||||
@return The CRC16 CCITT checksum (using the given seed). */
|
||||
extern guint16 crc16_ccitt_tvb_seed(tvbuff_t *tvb, guint len, guint16 seed);
|
||||
WS_DLL_PUBLIC guint16 crc16_ccitt_tvb_seed(tvbuff_t *tvb, guint len, guint16 seed);
|
||||
|
||||
/** Compute CRC16 CCITT checksum of a tv buffer. If computing the
|
||||
* checksum over multiple tv buffers and you want to feed the partial CRC16
|
||||
|
@ -67,7 +69,7 @@ extern guint16 crc16_ccitt_tvb_seed(tvbuff_t *tvb, guint len, guint16 seed);
|
|||
@param len The number of bytes to include in the computation.
|
||||
@param seed The seed to use.
|
||||
@return The CRC16 CCITT checksum (using the given seed). */
|
||||
extern guint16 crc16_ccitt_tvb_offset_seed(tvbuff_t *tvb, guint offset,
|
||||
WS_DLL_PUBLIC guint16 crc16_ccitt_tvb_offset_seed(tvbuff_t *tvb, guint offset,
|
||||
guint len, guint16 seed);
|
||||
|
||||
/** Compute the "plain" CRC16 checksum of a tv buffer using the following
|
||||
|
@ -84,7 +86,7 @@ extern guint16 crc16_ccitt_tvb_offset_seed(tvbuff_t *tvb, guint offset,
|
|||
@param offset The offset into the tv buffer.
|
||||
@param len The number of bytes to include in the computation.
|
||||
@return The CRC16 checksum. */
|
||||
extern guint16 crc16_plain_tvb_offset(tvbuff_t *tvb, guint offset, guint len);
|
||||
WS_DLL_PUBLIC guint16 crc16_plain_tvb_offset(tvbuff_t *tvb, guint offset, guint len);
|
||||
|
||||
/** Compute the "plain" CRC16 checksum of a tv buffer using the following
|
||||
* parameters:
|
||||
|
@ -101,7 +103,7 @@ extern guint16 crc16_plain_tvb_offset(tvbuff_t *tvb, guint offset, guint len);
|
|||
@param len The number of bytes to include in the computation.
|
||||
@param crc Starting CRC value
|
||||
@return The CRC16 checksum. */
|
||||
extern guint16 crc16_plain_tvb_offset_seed(tvbuff_t *tvb, guint offset, guint len, guint16 crc);
|
||||
WS_DLL_PUBLIC guint16 crc16_plain_tvb_offset_seed(tvbuff_t *tvb, guint offset, guint len, guint16 crc);
|
||||
|
||||
#ifdef __cplusplus
|
||||
}
|
||||
|
|
|
@ -32,6 +32,7 @@
|
|||
#include <glib.h>
|
||||
#include <epan/tvbuff.h>
|
||||
#include <wsutil/crc32.h>
|
||||
#include <epan/crc32-tvb.h>
|
||||
|
||||
|
||||
guint32
|
||||
|
|
|
@ -25,6 +25,8 @@
|
|||
#ifndef __CRC32_TVB_H__
|
||||
#define __CRC32_TVB_H__
|
||||
|
||||
#include "ws_symbol_export.h"
|
||||
|
||||
#ifdef __cplusplus
|
||||
extern "C" {
|
||||
#endif /* __cplusplus */
|
||||
|
@ -33,14 +35,14 @@ extern "C" {
|
|||
@param tvb The tv buffer containing the data.
|
||||
@param len The number of bytes to include in the computation.
|
||||
@return The CRC32 CCITT checksum. */
|
||||
extern guint32 crc32_ccitt_tvb(tvbuff_t *tvb, guint len);
|
||||
WS_DLL_PUBLIC guint32 crc32_ccitt_tvb(tvbuff_t *tvb, guint len);
|
||||
|
||||
/** Compute CRC32 CCITT checksum of a tv buffer.
|
||||
@param tvb The tv buffer containing the data.
|
||||
@param offset The offset into the tv buffer.
|
||||
@param len The number of bytes to include in the computation.
|
||||
@return The CRC32 CCITT checksum. */
|
||||
extern guint32 crc32_ccitt_tvb_offset(tvbuff_t *tvb, guint offset, guint len);
|
||||
WS_DLL_PUBLIC guint32 crc32_ccitt_tvb_offset(tvbuff_t *tvb, guint offset, guint len);
|
||||
|
||||
/** Compute CRC32 CCITT checksum of a tv buffer. If computing the
|
||||
* checksum over multiple tv buffers and you want to feed the partial CRC32
|
||||
|
@ -49,7 +51,7 @@ extern guint32 crc32_ccitt_tvb_offset(tvbuff_t *tvb, guint offset, guint len);
|
|||
@param len The number of bytes to include in the computation.
|
||||
@param seed The seed to use.
|
||||
@return The CRC32 CCITT checksum (using the given seed). */
|
||||
extern guint32 crc32_ccitt_tvb_seed(tvbuff_t *tvb, guint len, guint32 seed);
|
||||
WS_DLL_PUBLIC guint32 crc32_ccitt_tvb_seed(tvbuff_t *tvb, guint len, guint32 seed);
|
||||
|
||||
/** Compute CRC32 CCITT checksum of a tv buffer. If computing the
|
||||
* checksum over multiple tv buffers and you want to feed the partial CRC32
|
||||
|
@ -59,35 +61,35 @@ extern guint32 crc32_ccitt_tvb_seed(tvbuff_t *tvb, guint len, guint32 seed);
|
|||
@param len The number of bytes to include in the computation.
|
||||
@param seed The seed to use.
|
||||
@return The CRC32 CCITT checksum (using the given seed). */
|
||||
extern guint32 crc32_ccitt_tvb_offset_seed(tvbuff_t *tvb, guint offset,
|
||||
WS_DLL_PUBLIC guint32 crc32_ccitt_tvb_offset_seed(tvbuff_t *tvb, guint offset,
|
||||
guint len, guint32 seed);
|
||||
|
||||
/** Compute IEEE 802.x CRC32 checksum of a tv buffer.
|
||||
@param tvb The tv buffer containing the data.
|
||||
@param len The number of bytes to include in the computation.
|
||||
@return The IEEE 802.x CRC32 checksum. */
|
||||
extern guint32 crc32_802_tvb(tvbuff_t *tvb, guint len);
|
||||
WS_DLL_PUBLIC guint32 crc32_802_tvb(tvbuff_t *tvb, guint len);
|
||||
|
||||
|
||||
/** Compute MPEG-2 CRC32 checksum of a tv buffer.
|
||||
@param tvb The tv buffer containing the data.
|
||||
@param len The number of bytes to include in the computation.
|
||||
@return The MPEG-2 CRC32 checksum. */
|
||||
extern guint32 crc32_mpeg2_tvb(tvbuff_t *tvb, guint len);
|
||||
WS_DLL_PUBLIC guint32 crc32_mpeg2_tvb(tvbuff_t *tvb, guint len);
|
||||
|
||||
/** Compute MPEG-2 CRC32 checksum of a tv buffer.
|
||||
@param tvb The tv buffer containing the data.
|
||||
@param offset The offset into the tv buffer.
|
||||
@param len The number of bytes to include in the computation.
|
||||
@return The MPEG-2 CRC32 checksum. */
|
||||
extern guint32 crc32_mpeg2_tvb_offset(tvbuff_t *tvb, guint offset, guint len);
|
||||
WS_DLL_PUBLIC guint32 crc32_mpeg2_tvb_offset(tvbuff_t *tvb, guint offset, guint len);
|
||||
|
||||
/** Compute MPEG-2 CRC32 checksum of a buffer of data.
|
||||
@param tvb The tv buffer containing the data.
|
||||
@param len The number of bytes to include in the computation.
|
||||
@param seed The seed to use.
|
||||
@return The CRC32 MPEG-2 checksum (using the given seed). */
|
||||
extern guint32 crc32_mpeg2_tvb_seed(tvbuff_t *tvb, guint len, guint32 seed);
|
||||
WS_DLL_PUBLIC guint32 crc32_mpeg2_tvb_seed(tvbuff_t *tvb, guint len, guint32 seed);
|
||||
|
||||
/** Compute MPEG-2 CRC32 checksum of a buffer of data.
|
||||
@param tvb The tv buffer containing the data.
|
||||
|
@ -95,7 +97,7 @@ extern guint32 crc32_mpeg2_tvb_seed(tvbuff_t *tvb, guint len, guint32 seed);
|
|||
@param len The number of bytes to include in the computation.
|
||||
@param seed The seed to use.
|
||||
@return The CRC32 MPEG-2 checksum (using the given seed). */
|
||||
extern guint32 crc32_mpeg2_tvb_offset_seed(tvbuff_t *tvb, guint offset,
|
||||
WS_DLL_PUBLIC guint32 crc32_mpeg2_tvb_offset_seed(tvbuff_t *tvb, guint offset,
|
||||
guint len, guint32 seed);
|
||||
#ifdef __cplusplus
|
||||
}
|
||||
|
|
|
@ -10,7 +10,7 @@ include Makefile.common
|
|||
|
||||
CFLAGS=$(WARNINGS_ARE_ERRORS) $(STANDARD_CFLAGS) \
|
||||
/I../.. $(GLIB_CFLAGS) $(GNUTLS_CFLAGS) \
|
||||
$(LIBGCRYPT_CFLAGS)
|
||||
$(LIBGCRYPT_CFLAGS) -DWS_BUILD_DLL
|
||||
|
||||
.c.obj::
|
||||
$(CC) $(CFLAGS) -Fd.\ -c $<
|
||||
|
|
|
@ -42,6 +42,7 @@
|
|||
|
||||
#include "airpdcap_interop.h"
|
||||
#include "airpdcap_user.h"
|
||||
#include "ws_symbol_export.h"
|
||||
|
||||
/************************************************************************/
|
||||
/* Constant definitions */
|
||||
|
@ -316,6 +317,7 @@ INT AirPDcapSetLastSSID(
|
|||
* This function is not thread-safe when used in parallel with context
|
||||
* management functions and the packet process function on the same context.
|
||||
*/
|
||||
WS_DLL_PUBLIC
|
||||
INT AirPDcapInitContext(
|
||||
PAIRPDCAP_CONTEXT ctx)
|
||||
;
|
||||
|
@ -332,6 +334,7 @@ INT AirPDcapInitContext(
|
|||
* management functions and the packet process function on the same
|
||||
* context.
|
||||
*/
|
||||
WS_DLL_PUBLIC
|
||||
INT AirPDcapDestroyContext(
|
||||
PAIRPDCAP_CONTEXT ctx)
|
||||
;
|
||||
|
|
|
@ -41,6 +41,8 @@
|
|||
/* File includes */
|
||||
/* */
|
||||
#include "airpdcap_interop.h"
|
||||
#include "ws_symbol_export.h"
|
||||
|
||||
/* */
|
||||
/* */
|
||||
/******************************************************************************/
|
||||
|
@ -216,6 +218,7 @@ typedef struct _AIRPDCAP_KEYS_COLLECTION {
|
|||
* success, or NULL on failure.
|
||||
* @see get_key_string()
|
||||
*/
|
||||
WS_DLL_PUBLIC
|
||||
decryption_key_t*
|
||||
parse_key_string(gchar* key_string, guint8 key_type);
|
||||
|
||||
|
@ -226,6 +229,7 @@ parse_key_string(gchar* key_string, guint8 key_type);
|
|||
* @return A g_malloc()ed string representation of the key
|
||||
* @see parse_key_string()
|
||||
*/
|
||||
WS_DLL_PUBLIC
|
||||
gchar*
|
||||
get_key_string(decryption_key_t* dk);
|
||||
|
||||
|
|
|
@ -38,12 +38,13 @@
|
|||
#define _AIRPDCAP_WS_H
|
||||
|
||||
#include "airpdcap_system.h"
|
||||
#include "ws_symbol_export.h"
|
||||
|
||||
#ifdef __cplusplus
|
||||
extern "C" {
|
||||
#endif /* __cplusplus */
|
||||
|
||||
WS_VAR_IMPORT AIRPDCAP_CONTEXT airpdcap_ctx;
|
||||
WS_DLL_PUBLIC AIRPDCAP_CONTEXT airpdcap_ctx;
|
||||
|
||||
#ifdef __cplusplus
|
||||
}
|
||||
|
|
|
@ -25,6 +25,8 @@
|
|||
#ifndef __MD5_H__ /**@todo Should this be _CRYPT_MD5_H__ ?*/
|
||||
#define __MD5_H__
|
||||
|
||||
#include "ws_symbol_export.h"
|
||||
|
||||
/**
|
||||
* @file md5.h
|
||||
* @brief MD5 Functions
|
||||
|
@ -49,6 +51,7 @@ typedef struct md5_state_s
|
|||
/** Initialize the algorithm.
|
||||
* @param pms MD5 context.
|
||||
*/
|
||||
WS_DLL_PUBLIC
|
||||
void md5_init(md5_state_t *pms);
|
||||
|
||||
/** Append a string to the message.
|
||||
|
@ -56,6 +59,7 @@ void md5_init(md5_state_t *pms);
|
|||
* @param data Data.
|
||||
* @param nbytes Length of data.
|
||||
*/
|
||||
WS_DLL_PUBLIC
|
||||
void md5_append( md5_state_t *pms,
|
||||
const guint8 *data, size_t nbytes);
|
||||
|
||||
|
@ -63,6 +67,7 @@ void md5_append( md5_state_t *pms,
|
|||
* @param pms MD5 context.
|
||||
* @param digest 16 byte digest.
|
||||
*/
|
||||
WS_DLL_PUBLIC
|
||||
void md5_finish(md5_state_t *pms, guint8 digest[16]);
|
||||
|
||||
typedef struct md5_hmac_state_s
|
||||
|
@ -79,6 +84,7 @@ void md5_hmac_append(md5_hmac_state_t *hctx,
|
|||
|
||||
void md5_hmac_finish(md5_hmac_state_t *hctx, guint8 digest[16]);
|
||||
|
||||
WS_DLL_PUBLIC
|
||||
void md5_hmac(const guint8* text, size_t text_len, const guint8* key,
|
||||
size_t key_len, guint8 digest[16]);
|
||||
|
||||
|
|
|
@ -17,7 +17,7 @@ GENERATED_CFLAGS=\
|
|||
/I$(LEMON) \
|
||||
/I$(PCAP_DIR)\include
|
||||
|
||||
CFLAGS=$(WARNINGS_ARE_ERRORS) $(GENERATED_CFLAGS)
|
||||
CFLAGS=$(WARNINGS_ARE_ERRORS) $(GENERATED_CFLAGS) -DWS_BUILD_DLL
|
||||
|
||||
.c.obj::
|
||||
$(CC) $(CFLAGS) -Fd.\ -c $<
|
||||
|
|
|
@ -24,6 +24,9 @@
|
|||
#ifndef _DFILTER_MACRO_H
|
||||
#define _DFILTER_MACRO_H
|
||||
|
||||
#include "ws_symbol_export.h"
|
||||
|
||||
|
||||
#define DFILTER_MACRO_FILENAME "dfilter_macros"
|
||||
|
||||
|
||||
|
@ -39,6 +42,7 @@ typedef struct _dfilter_macro_t {
|
|||
|
||||
/* loop over the macros list */
|
||||
typedef void (*dfilter_macro_cb_t)(dfilter_macro_t*, void*);
|
||||
WS_DLL_PUBLIC
|
||||
void dfilter_macro_foreach(dfilter_macro_cb_t, void*);
|
||||
|
||||
/* save dfilter macros to a file */
|
||||
|
@ -52,8 +56,10 @@ const gchar* dfilter_macro_apply(const gchar* text, const gchar** error);
|
|||
|
||||
void dfilter_macro_init(void);
|
||||
|
||||
WS_DLL_PUBLIC
|
||||
void dfilter_macro_get_uat(void**);
|
||||
|
||||
WS_DLL_PUBLIC
|
||||
void dfilter_macro_build_ftv_cache(void* tree_root);
|
||||
|
||||
#endif /* _DFILTER_MACRO_H */
|
||||
|
|
|
@ -24,6 +24,7 @@
|
|||
#define DFILTER_H
|
||||
|
||||
#include <glib.h>
|
||||
#include "ws_symbol_export.h"
|
||||
|
||||
/* Passed back to user */
|
||||
typedef struct _dfilter_t dfilter_t;
|
||||
|
@ -57,11 +58,13 @@ dfilter_cleanup(void);
|
|||
*
|
||||
* Returns TRUE on success, FALSE on failure.
|
||||
*/
|
||||
WS_DLL_PUBLIC
|
||||
gboolean
|
||||
dfilter_compile(const gchar *text, dfilter_t **dfp);
|
||||
|
||||
/* Frees all memory used by dfilter, and frees
|
||||
* the dfilter itself. */
|
||||
WS_DLL_PUBLIC
|
||||
void
|
||||
dfilter_free(dfilter_t *df);
|
||||
|
||||
|
@ -71,10 +74,11 @@ dfilter_free(dfilter_t *df);
|
|||
* libwireshark.dll, we need a special declaration.
|
||||
*/
|
||||
|
||||
WS_VAR_IMPORT const gchar *dfilter_error_msg;
|
||||
WS_DLL_PUBLIC const gchar *dfilter_error_msg;
|
||||
|
||||
|
||||
/* Apply compiled dfilter */
|
||||
WS_DLL_PUBLIC
|
||||
gboolean
|
||||
dfilter_apply_edt(dfilter_t *df, epan_dissect_t* edt);
|
||||
|
||||
|
@ -86,10 +90,12 @@ dfilter_apply(dfilter_t *df, proto_tree *tree);
|
|||
void
|
||||
dfilter_prime_proto_tree(const dfilter_t *df, proto_tree *tree);
|
||||
|
||||
WS_DLL_PUBLIC
|
||||
GPtrArray *
|
||||
dfilter_deprecated_tokens(dfilter_t *df);
|
||||
|
||||
/* Print bytecode of dfilter to stdout */
|
||||
WS_DLL_PUBLIC
|
||||
void
|
||||
dfilter_dump(dfilter_t *df);
|
||||
|
||||
|
|
|
@ -27,6 +27,7 @@
|
|||
#define __DRANGE_H__
|
||||
|
||||
#include <glib.h>
|
||||
#include "ws_symbol_export.h"
|
||||
|
||||
/* Please don't directly manipulate these structs. Please use
|
||||
* the methods provided. If you REALLY can't do what you need to
|
||||
|
|
|
@ -25,6 +25,7 @@
|
|||
#ifndef __DISSECTOR_FILTERS_H__
|
||||
#define __DISSECTOR_FILTERS_H__
|
||||
|
||||
#include "ws_symbol_export.h"
|
||||
|
||||
#ifdef __cplusplus
|
||||
extern "C" {
|
||||
|
@ -41,7 +42,7 @@ typedef const gchar* (*build_filter_string_func)(packet_info *pinfo);
|
|||
|
||||
|
||||
/** register a dissector filter */
|
||||
extern void register_dissector_filter(const char *name, is_filter_valid_func is_filter_valid, build_filter_string_func build_filter_string);
|
||||
WS_DLL_PUBLIC void register_dissector_filter(const char *name, is_filter_valid_func is_filter_valid, build_filter_string_func build_filter_string);
|
||||
|
||||
|
||||
|
||||
|
@ -53,7 +54,7 @@ typedef struct dissector_filter_s {
|
|||
build_filter_string_func build_filter_string;
|
||||
} dissector_filter_t;
|
||||
|
||||
WS_VAR_IMPORT GList *dissector_filter_list;
|
||||
WS_DLL_PUBLIC GList *dissector_filter_list;
|
||||
|
||||
#ifdef __cplusplus
|
||||
}
|
||||
|
|
|
@ -11,7 +11,7 @@ include Makefile.common
|
|||
|
||||
CFLAGS= $(WARNINGS_ARE_ERRORS) $(STANDARD_CFLAGS) \
|
||||
/I. /I.. /I../.. $(GLIB_CFLAGS) \
|
||||
$(ZLIB_CFLAGS) \
|
||||
$(ZLIB_CFLAGS) -DWS_BUILD_DLL\
|
||||
$(GNUTLS_CFLAGS) $(NETTLE_CFLAGS) \
|
||||
$(KFW_CFLAGS) $(AIRPCAP_CFLAGS) $(GEOIP_CFLAGS) \
|
||||
/I$(PCAP_DIR)\include
|
||||
|
|
|
@ -125,7 +125,7 @@ struct aspinfo {
|
|||
/*
|
||||
* value_string table for AFP command codes.
|
||||
*/
|
||||
WS_VAR_IMPORT value_string_ext CommandCode_vals_ext;
|
||||
WS_DLL_PUBLIC value_string_ext CommandCode_vals_ext;
|
||||
|
||||
/*
|
||||
* Value from table matching requests and responses; also passed to AFP
|
||||
|
|
|
@ -46,12 +46,12 @@ ext_value_string_t;
|
|||
* without having to duplicate it. With MSVC and a
|
||||
* libwireshark.dll, we need a special declaration.
|
||||
*/
|
||||
WS_VAR_IMPORT const ext_value_string_t *ansi_a_bsmap_strings;
|
||||
WS_VAR_IMPORT const ext_value_string_t *ansi_a_dtap_strings;
|
||||
WS_VAR_IMPORT const ext_value_string_t ansi_a_ios501_bsmap_strings[];
|
||||
WS_VAR_IMPORT const ext_value_string_t ansi_a_ios501_dtap_strings[];
|
||||
WS_VAR_IMPORT const ext_value_string_t ansi_a_ios401_bsmap_strings[];
|
||||
WS_VAR_IMPORT const ext_value_string_t ansi_a_ios401_dtap_strings[];
|
||||
WS_DLL_PUBLIC const ext_value_string_t *ansi_a_bsmap_strings;
|
||||
WS_DLL_PUBLIC const ext_value_string_t *ansi_a_dtap_strings;
|
||||
WS_DLL_PUBLIC const ext_value_string_t ansi_a_ios501_bsmap_strings[];
|
||||
WS_DLL_PUBLIC const ext_value_string_t ansi_a_ios501_dtap_strings[];
|
||||
WS_DLL_PUBLIC const ext_value_string_t ansi_a_ios401_bsmap_strings[];
|
||||
WS_DLL_PUBLIC const ext_value_string_t ansi_a_ios401_dtap_strings[];
|
||||
|
||||
#define A_VARIANT_IS634 4
|
||||
#define A_VARIANT_TSB80 5
|
||||
|
@ -61,13 +61,13 @@ WS_VAR_IMPORT const ext_value_string_t ansi_a_ios401_dtap_strings[];
|
|||
#define A_VARIANT_IOS401 9
|
||||
#define A_VARIANT_IOS501 10
|
||||
|
||||
WS_VAR_IMPORT gint a_global_variant;
|
||||
WS_DLL_PUBLIC gint a_global_variant;
|
||||
|
||||
/*
|
||||
* allows ANSI MAP to use this for IS-880 enhancements
|
||||
* based on the 'ansi_a_ios401_elem_1_strings/ansi_a_ios501_elem_1_strings'
|
||||
*/
|
||||
WS_VAR_IMPORT const ext_value_string_t *ansi_a_elem_1_strings;
|
||||
WS_DLL_PUBLIC const ext_value_string_t *ansi_a_elem_1_strings;
|
||||
|
||||
/*
|
||||
* maximum number of strings that are allowed
|
||||
|
|
|
@ -34,6 +34,8 @@
|
|||
#ifndef PACKET_ANSI_MAP_H
|
||||
#define PACKET_ANSI_MAP_H
|
||||
|
||||
#include "ws_symbol_export.h"
|
||||
|
||||
#define ANSI_MAP_MAX_NUM_MESSAGE_TYPES 256
|
||||
|
||||
typedef struct _ansi_map_tap_rec_t {
|
||||
|
@ -47,7 +49,7 @@ typedef struct _ansi_map_tap_rec_t {
|
|||
* without having to duplicate it. With MSVC and a
|
||||
* libwireshark.dll, we need a special declaration.
|
||||
*/
|
||||
WS_VAR_IMPORT const value_string ansi_map_opr_code_strings[];
|
||||
WS_DLL_PUBLIC const value_string ansi_map_opr_code_strings[];
|
||||
|
||||
|
||||
|
||||
|
|
|
@ -24,6 +24,9 @@
|
|||
#ifndef __PACKET_AP1394_H__
|
||||
#define __PACKET_AP1394_H__
|
||||
|
||||
#include "ws_symbol_export.h"
|
||||
|
||||
WS_DLL_PUBLIC
|
||||
void capture_ap1394(const guchar *, int, int, packet_counts *);
|
||||
|
||||
#endif
|
||||
|
|
|
@ -24,6 +24,9 @@
|
|||
#ifndef __PACKET_ARCNET_H__
|
||||
#define __PACKET_ARCNET_H__
|
||||
|
||||
#include "ws_symbol_export.h"
|
||||
|
||||
WS_DLL_PUBLIC
|
||||
void capture_arcnet (const guchar *, int, packet_counts *, gboolean, gboolean);
|
||||
|
||||
#endif
|
||||
|
|
|
@ -21,6 +21,8 @@
|
|||
#ifndef __PACKET_ATALK_H__
|
||||
#define __PACKET_ATALK_H__
|
||||
|
||||
extern void capture_llap(packet_counts *ld);
|
||||
#include "ws_symbol_export.h"
|
||||
|
||||
WS_DLL_PUBLIC void capture_llap(packet_counts *ld);
|
||||
|
||||
#endif
|
||||
|
|
|
@ -24,6 +24,9 @@
|
|||
#ifndef __PACKET_ATM_H__
|
||||
#define __PACKET_ATM_H__
|
||||
|
||||
#include "ws_symbol_export.h"
|
||||
|
||||
WS_DLL_PUBLIC
|
||||
void capture_atm(const union wtap_pseudo_header *, const guchar *, int,
|
||||
packet_counts *);
|
||||
|
||||
|
|
|
@ -27,6 +27,9 @@
|
|||
#ifndef __PACKET_AX25_KISS_H__
|
||||
#define __PACKET_AX25_KISS_H__
|
||||
|
||||
#include "ws_symbol_export.h"
|
||||
|
||||
WS_DLL_PUBLIC
|
||||
void capture_ax25_kiss(const guchar *, int, int, packet_counts *);
|
||||
|
||||
#endif
|
||||
|
|
|
@ -27,6 +27,9 @@
|
|||
#ifndef __PACKET_AX25_H__
|
||||
#define __PACKET_AX25_H__
|
||||
|
||||
#include "ws_symbol_export.h"
|
||||
|
||||
WS_DLL_PUBLIC
|
||||
void capture_ax25(const guchar *, int, int, packet_counts *);
|
||||
|
||||
#endif
|
||||
|
|
|
@ -29,6 +29,7 @@
|
|||
#include <epan/proto.h>
|
||||
#include <epan/to_str.h>
|
||||
#include <epan/asn1.h>
|
||||
#include "ws_symbol_export.h"
|
||||
|
||||
#define BER_NOT_DECODED_YET(x) \
|
||||
proto_tree_add_text(tree, tvb, offset, 0, "something unknown here [%s]",x); \
|
||||
|
@ -99,35 +100,35 @@ typedef int (*ber_old_type_fn)(gboolean, tvbuff_t*, int, asn1_ctx_t *actx, proto
|
|||
/* this function dissects the identifier octer of the BER TLV.
|
||||
* We only handle TAGs (and LENGTHs) that fit inside 32 bit integers.
|
||||
*/
|
||||
extern int get_ber_identifier(tvbuff_t *tvb, int offset, gint8 *ber_class, gboolean *pc, gint32 *tag);
|
||||
extern int dissect_ber_identifier(packet_info *pinfo, proto_tree *tree, tvbuff_t *tvb, int offset, gint8 *ber_class, gboolean *pc, gint32 *tag);
|
||||
extern int dissect_unknown_ber(packet_info *pinfo, tvbuff_t *tvb, int offset, proto_tree *tree);
|
||||
WS_DLL_PUBLIC int get_ber_identifier(tvbuff_t *tvb, int offset, gint8 *ber_class, gboolean *pc, gint32 *tag);
|
||||
WS_DLL_PUBLIC int dissect_ber_identifier(packet_info *pinfo, proto_tree *tree, tvbuff_t *tvb, int offset, gint8 *ber_class, gboolean *pc, gint32 *tag);
|
||||
WS_DLL_PUBLIC int dissect_unknown_ber(packet_info *pinfo, tvbuff_t *tvb, int offset, proto_tree *tree);
|
||||
/* this function dissects the identifier octer of the BER TLV.
|
||||
* We only handle (TAGs and) LENGTHs that fit inside 32 bit integers.
|
||||
*/
|
||||
extern int get_ber_length(tvbuff_t *tvb, int offset, guint32 *length, gboolean *ind);
|
||||
extern int dissect_ber_length(packet_info *pinfo, proto_tree *tree, tvbuff_t *tvb, int offset, guint32 *length, gboolean *ind);
|
||||
WS_DLL_PUBLIC int get_ber_length(tvbuff_t *tvb, int offset, guint32 *length, gboolean *ind);
|
||||
WS_DLL_PUBLIC int dissect_ber_length(packet_info *pinfo, proto_tree *tree, tvbuff_t *tvb, int offset, guint32 *length, gboolean *ind);
|
||||
|
||||
extern int dissect_ber_tagged_type(gboolean implicit_tag, asn1_ctx_t *actx, proto_tree *tree, tvbuff_t *tvb, int offset, gint hf_id, gint8 tag_cls, gint32 tag_tag, gboolean tag_impl, ber_type_fn type);
|
||||
WS_DLL_PUBLIC int dissect_ber_tagged_type(gboolean implicit_tag, asn1_ctx_t *actx, proto_tree *tree, tvbuff_t *tvb, int offset, gint hf_id, gint8 tag_cls, gint32 tag_tag, gboolean tag_impl, ber_type_fn type);
|
||||
|
||||
extern int dissect_ber_constrained_octet_string(gboolean implicit_tag, asn1_ctx_t *actx, proto_tree *tree, tvbuff_t *tvb, int offset, gint32 min_len, gint32 max_len, gint hf_id, tvbuff_t **out_tvb);
|
||||
extern int dissect_ber_octet_string(gboolean implicit_tag, asn1_ctx_t *actx, proto_tree *tree, tvbuff_t *tvb, int offset, gint hf_id, tvbuff_t **out_tvb);
|
||||
WS_DLL_PUBLIC int dissect_ber_octet_string(gboolean implicit_tag, asn1_ctx_t *actx, proto_tree *tree, tvbuff_t *tvb, int offset, gint hf_id, tvbuff_t **out_tvb);
|
||||
extern int dissect_ber_octet_string_wcb(gboolean implicit_tag, asn1_ctx_t *actx, proto_tree *tree, tvbuff_t *tvb, int offset, gint hf_id, ber_callback func);
|
||||
extern int dissect_ber_old_octet_string_wcb(gboolean implicit_tag, asn1_ctx_t *actx, proto_tree *tree, tvbuff_t *tvb, int offset, gint hf_id, ber_old_callback func);
|
||||
|
||||
extern int dissect_ber_integer64(gboolean implicit_tag, asn1_ctx_t *actx, proto_tree *tree, tvbuff_t *tvb, int offset, gint hf_id, gint64 *value);
|
||||
WS_DLL_PUBLIC int dissect_ber_integer64(gboolean implicit_tag, asn1_ctx_t *actx, proto_tree *tree, tvbuff_t *tvb, int offset, gint hf_id, gint64 *value);
|
||||
extern int dissect_ber_constrained_integer64(gboolean implicit_tag, asn1_ctx_t *actx, proto_tree *tree, tvbuff_t *tvb, int offset, gint64 min_len, gint64 max_len, gint hf_id, gint64 *value);
|
||||
|
||||
extern int dissect_ber_integer(gboolean implicit_tag, asn1_ctx_t *actx, proto_tree *tree, tvbuff_t *tvb, int offset, gint hf_id, guint32 *value);
|
||||
WS_DLL_PUBLIC int dissect_ber_integer(gboolean implicit_tag, asn1_ctx_t *actx, proto_tree *tree, tvbuff_t *tvb, int offset, gint hf_id, guint32 *value);
|
||||
extern int dissect_ber_constrained_integer(gboolean implicit_tag, asn1_ctx_t *actx, proto_tree *tree, tvbuff_t *tvb, int offset, gint32 min_len, gint32 max_len, gint hf_id, guint32 *value);
|
||||
|
||||
extern int dissect_ber_null(gboolean implicit_tag, asn1_ctx_t *actx, proto_tree *tree, tvbuff_t *tvb, int offset, gint hf_id);
|
||||
WS_DLL_PUBLIC int dissect_ber_null(gboolean implicit_tag, asn1_ctx_t *actx, proto_tree *tree, tvbuff_t *tvb, int offset, gint hf_id);
|
||||
|
||||
extern int dissect_ber_boolean(gboolean implicit_tag, asn1_ctx_t *actx, proto_tree *tree, tvbuff_t *tvb, int offset, gint hf_id, gboolean *value);
|
||||
WS_DLL_PUBLIC int dissect_ber_boolean(gboolean implicit_tag, asn1_ctx_t *actx, proto_tree *tree, tvbuff_t *tvb, int offset, gint hf_id, gboolean *value);
|
||||
extern int dissect_ber_real(gboolean implicit_tag, asn1_ctx_t *actx, proto_tree *tree, tvbuff_t *tvb, int offset, gint hf_id, double *value);
|
||||
|
||||
extern int dissect_ber_external_type(gboolean implicit_tag, proto_tree *parent_tree, tvbuff_t *tvb, int offset, asn1_ctx_t *actx, gint hf_id, ber_callback func);
|
||||
extern int dissect_ber_EmbeddedPDV_Type(gboolean implicit_tag, proto_tree *parent_tree, tvbuff_t *tvb, int offset, asn1_ctx_t *actx, gint hf_id, ber_callback func);
|
||||
WS_DLL_PUBLIC int dissect_ber_EmbeddedPDV_Type(gboolean implicit_tag, proto_tree *parent_tree, tvbuff_t *tvb, int offset, asn1_ctx_t *actx, gint hf_id, ber_callback func);
|
||||
|
||||
#define BER_FLAGS_OPTIONAL 0x00000001
|
||||
#define BER_FLAGS_IMPLTAG 0x00000002
|
||||
|
@ -150,11 +151,11 @@ typedef struct _ber_old_sequence_t {
|
|||
/*
|
||||
* This function dissects a BER sequence
|
||||
*/
|
||||
extern int dissect_ber_sequence(gboolean implicit_tag, asn1_ctx_t *actx, proto_tree *parent_tree, tvbuff_t *tvb, int offset, const ber_sequence_t *seq, gint hf_id, gint ett_id);
|
||||
extern int dissect_ber_set(gboolean implicit_tag, asn1_ctx_t *actx, proto_tree *parent_tree, tvbuff_t *tvb, int offset, const ber_sequence_t *seq, gint hf_id, gint ett_id);
|
||||
WS_DLL_PUBLIC int dissect_ber_sequence(gboolean implicit_tag, asn1_ctx_t *actx, proto_tree *parent_tree, tvbuff_t *tvb, int offset, const ber_sequence_t *seq, gint hf_id, gint ett_id);
|
||||
WS_DLL_PUBLIC int dissect_ber_set(gboolean implicit_tag, asn1_ctx_t *actx, proto_tree *parent_tree, tvbuff_t *tvb, int offset, const ber_sequence_t *seq, gint hf_id, gint ett_id);
|
||||
|
||||
/* To be removed when the transition to the "New" type is complete */
|
||||
extern int dissect_ber_old_sequence(gboolean implicit_tag, asn1_ctx_t *actx, proto_tree *parent_tree, tvbuff_t *tvb, int offset, const ber_old_sequence_t *seq, gint hf_id, gint ett_id);
|
||||
WS_DLL_PUBLIC int dissect_ber_old_sequence(gboolean implicit_tag, asn1_ctx_t *actx, proto_tree *parent_tree, tvbuff_t *tvb, int offset, const ber_old_sequence_t *seq, gint hf_id, gint ett_id);
|
||||
extern int dissect_ber_old_set(gboolean implicit_tag, asn1_ctx_t *actx, proto_tree *parent_tree, tvbuff_t *tvb, int offset, const ber_old_sequence_t *seq, gint hf_id, gint ett_id);
|
||||
|
||||
|
||||
|
@ -177,39 +178,39 @@ typedef struct _ber_old_choice_t {
|
|||
/*
|
||||
* This function dissects a BER choice
|
||||
*/
|
||||
extern int dissect_ber_choice(asn1_ctx_t *actx, proto_tree *parent_tree, tvbuff_t *tvb, int offset, const ber_choice_t *ch, gint hf_id, gint ett_id, gint *branch_taken);
|
||||
WS_DLL_PUBLIC int dissect_ber_choice(asn1_ctx_t *actx, proto_tree *parent_tree, tvbuff_t *tvb, int offset, const ber_choice_t *ch, gint hf_id, gint ett_id, gint *branch_taken);
|
||||
/* To be removed when the transition to the "New" type is complete */
|
||||
extern int dissect_ber_old_choice(asn1_ctx_t *actx, proto_tree *parent_tree, tvbuff_t *tvb, int offset, const ber_old_choice_t *ch, gint hf_id, gint ett_id, gint *branch_taken);
|
||||
WS_DLL_PUBLIC int dissect_ber_old_choice(asn1_ctx_t *actx, proto_tree *parent_tree, tvbuff_t *tvb, int offset, const ber_old_choice_t *ch, gint hf_id, gint ett_id, gint *branch_taken);
|
||||
|
||||
/*
|
||||
* This function dissects a BER strings
|
||||
*/
|
||||
extern int dissect_ber_constrained_restricted_string(gboolean implicit_tag, gint32 type, asn1_ctx_t *actx, proto_tree *tree, tvbuff_t *tvb, int offset, gint32 min_len, gint32 max_len, gint hf_id, tvbuff_t **out_tvb);
|
||||
extern int dissect_ber_restricted_string(gboolean implicit_tag, gint32 type, asn1_ctx_t *actx, proto_tree *tree, tvbuff_t *tvb, int offset, gint hf_id, tvbuff_t **out_tvb);
|
||||
WS_DLL_PUBLIC int dissect_ber_restricted_string(gboolean implicit_tag, gint32 type, asn1_ctx_t *actx, proto_tree *tree, tvbuff_t *tvb, int offset, gint hf_id, tvbuff_t **out_tvb);
|
||||
extern int dissect_ber_GeneralString(asn1_ctx_t *actx, proto_tree *tree, tvbuff_t *tvb, int offset, gint hf_id, char *name_string, guint name_len);
|
||||
|
||||
|
||||
/* this function dissects a BER Object Identifier
|
||||
*/
|
||||
extern int dissect_ber_object_identifier(gboolean implicit_tag, asn1_ctx_t *actx, proto_tree *tree, tvbuff_t *tvb, int offset, gint hf_id, tvbuff_t **value_tvb);
|
||||
extern int dissect_ber_object_identifier_str(gboolean implicit_tag, asn1_ctx_t *actx, proto_tree *tree, tvbuff_t *tvb, int offset, gint hf_id, const char **value_stringx);
|
||||
WS_DLL_PUBLIC int dissect_ber_object_identifier(gboolean implicit_tag, asn1_ctx_t *actx, proto_tree *tree, tvbuff_t *tvb, int offset, gint hf_id, tvbuff_t **value_tvb);
|
||||
WS_DLL_PUBLIC int dissect_ber_object_identifier_str(gboolean implicit_tag, asn1_ctx_t *actx, proto_tree *tree, tvbuff_t *tvb, int offset, gint hf_id, const char **value_stringx);
|
||||
|
||||
/* this function dissects a BER sequence of
|
||||
*/
|
||||
extern int dissect_ber_constrained_sequence_of(gboolean implicit_tag, asn1_ctx_t *actx, proto_tree *parent_tree, tvbuff_t *tvb, int offset, gint32 min_len, gint32 max_len, const ber_sequence_t *seq, gint hf_id, gint ett_id);
|
||||
extern int dissect_ber_sequence_of(gboolean implicit_tag, asn1_ctx_t *actx, proto_tree *parent_tree, tvbuff_t *tvb, int offset, const ber_sequence_t *seq, gint hf_id, gint ett_id);
|
||||
WS_DLL_PUBLIC int dissect_ber_sequence_of(gboolean implicit_tag, asn1_ctx_t *actx, proto_tree *parent_tree, tvbuff_t *tvb, int offset, const ber_sequence_t *seq, gint hf_id, gint ett_id);
|
||||
|
||||
extern int dissect_ber_constrained_set_of(gboolean implicit_tag, asn1_ctx_t *actx, proto_tree *parent_tree, tvbuff_t *tvb, int offset, gint32 min_len, gint32 max_len, const ber_sequence_t *seq, gint hf_id, gint ett_id);
|
||||
extern int dissect_ber_set_of(gboolean implicit_tag, asn1_ctx_t *actx, proto_tree *parent_tree, tvbuff_t *tvb, int offset, const ber_sequence_t *seq, gint hf_id, gint ett_id);
|
||||
WS_DLL_PUBLIC int dissect_ber_set_of(gboolean implicit_tag, asn1_ctx_t *actx, proto_tree *parent_tree, tvbuff_t *tvb, int offset, const ber_sequence_t *seq, gint hf_id, gint ett_id);
|
||||
|
||||
/* To be removed when the transition to the "New" type is complete */
|
||||
extern int dissect_ber_old_sequence_of(gboolean implicit_tag, asn1_ctx_t *actx, proto_tree *parent_tree, tvbuff_t *tvb, int offset, const ber_old_sequence_t *seq, gint hf_id, gint ett_id);
|
||||
WS_DLL_PUBLIC int dissect_ber_old_sequence_of(gboolean implicit_tag, asn1_ctx_t *actx, proto_tree *parent_tree, tvbuff_t *tvb, int offset, const ber_old_sequence_t *seq, gint hf_id, gint ett_id);
|
||||
extern int dissect_ber_old_set_of(gboolean implicit_tag, asn1_ctx_t *actx, proto_tree *parent_tree, tvbuff_t *tvb, int offset, const ber_old_sequence_t *seq, gint hf_id, gint ett_id);
|
||||
|
||||
|
||||
extern int dissect_ber_GeneralizedTime(gboolean implicit_tag, asn1_ctx_t *actx, proto_tree *tree, tvbuff_t *tvb, int offset, gint hf_id);
|
||||
WS_DLL_PUBLIC int dissect_ber_GeneralizedTime(gboolean implicit_tag, asn1_ctx_t *actx, proto_tree *tree, tvbuff_t *tvb, int offset, gint hf_id);
|
||||
|
||||
extern int dissect_ber_UTCTime(gboolean implicit_tag, asn1_ctx_t *actx, proto_tree *tree, tvbuff_t *tvb, int offset, gint hf_id);
|
||||
WS_DLL_PUBLIC int dissect_ber_UTCTime(gboolean implicit_tag, asn1_ctx_t *actx, proto_tree *tree, tvbuff_t *tvb, int offset, gint hf_id);
|
||||
|
||||
typedef struct _asn_namedbit {
|
||||
guint32 bit;
|
||||
|
@ -222,21 +223,30 @@ typedef struct _asn_namedbit {
|
|||
/* this function dissects a BER BIT-STRING
|
||||
*/
|
||||
extern int dissect_ber_constrained_bitstring(gboolean implicit_tag, asn1_ctx_t *actx, proto_tree *parent_tree, tvbuff_t *tvb, int offset, gint32 min_len, gint32 max_len, const asn_namedbit *named_bits, gint hf_id, gint ett_id, tvbuff_t **out_tvb);
|
||||
extern int dissect_ber_bitstring(gboolean implicit_tag, asn1_ctx_t *actx, proto_tree *parent_tree, tvbuff_t *tvb, int offset, const asn_namedbit *named_bits, gint hf_id, gint ett_id, tvbuff_t **out_tvb);
|
||||
WS_DLL_PUBLIC int dissect_ber_bitstring(gboolean implicit_tag, asn1_ctx_t *actx, proto_tree *parent_tree, tvbuff_t *tvb, int offset, const asn_namedbit *named_bits, gint hf_id, gint ett_id, tvbuff_t **out_tvb);
|
||||
extern int dissect_ber_bitstring32(gboolean implicit_tag, asn1_ctx_t *actx, proto_tree *parent_tree, tvbuff_t *tvb, int offset, int **bit_fields, gint hf_id, gint ett_id, tvbuff_t **out_tvb);
|
||||
|
||||
WS_DLL_PUBLIC
|
||||
int call_ber_oid_callback(const char *oid, tvbuff_t *tvb, int offset, packet_info *pinfo, proto_tree *tree);
|
||||
WS_DLL_PUBLIC
|
||||
void register_ber_oid_dissector_handle(const char *oid, dissector_handle_t dissector, int proto, const char *name);
|
||||
WS_DLL_PUBLIC
|
||||
void register_ber_oid_dissector(const char *oid, dissector_t dissector, int proto, const char *name);
|
||||
WS_DLL_PUBLIC
|
||||
void register_ber_syntax_dissector(const char *oid, int proto, dissector_t dissector);
|
||||
void register_ber_oid_name(const char *oid, const char *name);
|
||||
WS_DLL_PUBLIC
|
||||
void register_ber_oid_syntax(const char *oid, const char *name, const char *syntax);
|
||||
void dissect_ber_oid_NULL_callback(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree);
|
||||
|
||||
WS_DLL_PUBLIC
|
||||
void ber_decode_as_foreach(GHFunc func, gpointer user_data); /* iterate through known syntaxes */
|
||||
WS_DLL_PUBLIC
|
||||
void ber_decode_as(const gchar *syntax); /* decode the current capture as this syntax */
|
||||
WS_DLL_PUBLIC
|
||||
void ber_set_filename(gchar *filename); /* name of current BER-encoded file */
|
||||
|
||||
WS_DLL_PUBLIC
|
||||
gboolean oid_has_dissector(const char *oid);
|
||||
|
||||
#endif /* __PACKET_BER_H__ */
|
||||
|
|
|
@ -27,8 +27,9 @@
|
|||
#ifndef __PACKET_BSSGP_H__
|
||||
#define __PACKET_BSSGP_H__
|
||||
|
||||
#include "ws_symbol_export.h"
|
||||
|
||||
WS_VAR_IMPORT value_string_ext bssgp_cause_vals_ext;
|
||||
WS_DLL_PUBLIC value_string_ext bssgp_cause_vals_ext;
|
||||
|
||||
void bssgp_suspend_ack(tvbuff_t *tvb, proto_tree *tree, packet_info *pinfo, guint32 offset, guint len);
|
||||
guint16 de_bssgp_cell_id(tvbuff_t *tvb, proto_tree *tree, packet_info *pinfo, guint32 offset, guint len, gchar *add_string, int string_len);
|
||||
|
|
|
@ -42,6 +42,8 @@
|
|||
#ifndef PACKET_CAMEL_H
|
||||
#define PACKET_CAMEL_H
|
||||
|
||||
#include "ws_symbol_export.h"
|
||||
|
||||
void proto_reg_handoff_camel(void);
|
||||
void proto_register_camel(void);
|
||||
|
||||
|
@ -49,7 +51,7 @@ void proto_register_camel(void);
|
|||
#define camel_MAX_NUM_OPR_CODES 256
|
||||
|
||||
|
||||
WS_VAR_IMPORT const value_string camel_opr_code_strings[];
|
||||
WS_DLL_PUBLIC const value_string camel_opr_code_strings[];
|
||||
/* #include "packet-camel-exp.h"*/
|
||||
|
||||
#endif /* PACKET_camel_H */
|
||||
|
|
|
@ -33,6 +33,9 @@
|
|||
#define CHDLC_ADDR_UNICAST 0x0f
|
||||
#define CHDLC_ADDR_MULTICAST 0x8f
|
||||
|
||||
#include "ws_symbol_export.h"
|
||||
|
||||
WS_DLL_PUBLIC
|
||||
void capture_chdlc(const guchar *, int, int, packet_counts *);
|
||||
|
||||
extern const value_string chdlc_vals[];
|
||||
|
|
|
@ -24,6 +24,9 @@
|
|||
#ifndef __PACKET_CLIP_H__
|
||||
#define __PACKET_CLIP_H__
|
||||
|
||||
#include "ws_symbol_export.h"
|
||||
|
||||
WS_DLL_PUBLIC
|
||||
void capture_clip(const guchar *, int, packet_counts *);
|
||||
|
||||
#endif
|
||||
|
|
|
@ -73,7 +73,7 @@ int dissect_dap_ServiceControlOptions(gboolean implicit_tag _U_, tvbuff_t *tvb _
|
|||
int dissect_dap_ContextSelection(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_);
|
||||
int dissect_dap_FamilyReturn(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_);
|
||||
int dissect_dap_Filter(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_);
|
||||
int dissect_dap_SecurityParameters(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_);
|
||||
WS_DLL_PUBLIC int dissect_dap_SecurityParameters(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_);
|
||||
int dissect_dap_DirectoryBindArgument(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_);
|
||||
int dissect_dap_DirectoryBindError(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_);
|
||||
int dissect_dap_ReadArgument(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_);
|
||||
|
|
|
@ -24,9 +24,12 @@
|
|||
#ifndef __PACKET_DATA_H__
|
||||
#define __PACKET_DATA_H__
|
||||
|
||||
/* "proto_data" is exported from libwireshark.dll.
|
||||
#include "ws_symbol_export.h"
|
||||
|
||||
/*
|
||||
"proto_data" is exported from libwireshark.dll.
|
||||
* Thus we need a special declaration.
|
||||
*/
|
||||
WS_VAR_IMPORT int proto_data;
|
||||
WS_DLL_PUBLIC int proto_data;
|
||||
|
||||
#endif /* __PACKET_DATA_H__ */
|
||||
|
|
|
@ -26,6 +26,8 @@
|
|||
#ifndef __PACKET_DCERPC_NT_H
|
||||
#define __PACKET_DCERPC_NT_H
|
||||
|
||||
#include "ws_symbol_export.h"
|
||||
|
||||
/*
|
||||
* Platform ID values, used by several dissectors.
|
||||
*/
|
||||
|
|
|
@ -27,6 +27,7 @@
|
|||
#define __PACKET_DCERPC_H__
|
||||
|
||||
#include <epan/conversation.h>
|
||||
#include "ws_symbol_export.h"
|
||||
|
||||
/*
|
||||
* Data representation.
|
||||
|
@ -134,15 +135,19 @@ typedef struct _dcerpc_auth_info {
|
|||
guint16 dcerpc_tvb_get_ntohs (tvbuff_t *tvb, gint offset, guint8 *drep);
|
||||
guint32 dcerpc_tvb_get_ntohl (tvbuff_t *tvb, gint offset, guint8 *drep);
|
||||
void dcerpc_tvb_get_uuid (tvbuff_t *tvb, gint offset, guint8 *drep, e_uuid_t *uuid);
|
||||
WS_DLL_PUBLIC
|
||||
int dissect_dcerpc_uint8 (tvbuff_t *tvb, gint offset, packet_info *pinfo,
|
||||
proto_tree *tree, guint8 *drep,
|
||||
int hfindex, guint8 *pdata);
|
||||
WS_DLL_PUBLIC
|
||||
int dissect_dcerpc_uint16 (tvbuff_t *tvb, gint offset, packet_info *pinfo,
|
||||
proto_tree *tree, guint8 *drep,
|
||||
int hfindex, guint16 *pdata);
|
||||
WS_DLL_PUBLIC
|
||||
int dissect_dcerpc_uint32 (tvbuff_t *tvb, gint offset, packet_info *pinfo,
|
||||
proto_tree *tree, guint8 *drep,
|
||||
int hfindex, guint32 *pdata);
|
||||
WS_DLL_PUBLIC
|
||||
int dissect_dcerpc_uint64 (tvbuff_t *tvb, gint offset, packet_info *pinfo,
|
||||
proto_tree *tree, guint8 *drep,
|
||||
int hfindex, guint64 *pdata);
|
||||
|
@ -155,6 +160,7 @@ int dissect_dcerpc_double (tvbuff_t *tvb, gint offset, packet_info *pinfo,
|
|||
int dissect_dcerpc_time_t (tvbuff_t *tvb, gint offset, packet_info *pinfo,
|
||||
proto_tree *tree, guint8 *drep,
|
||||
int hfindex, guint32 *pdata);
|
||||
WS_DLL_PUBLIC
|
||||
int dissect_dcerpc_uuid_t (tvbuff_t *tvb, gint offset, packet_info *pinfo,
|
||||
proto_tree *tree, guint8 *drep,
|
||||
int hfindex, e_uuid_t *pdata);
|
||||
|
@ -162,18 +168,22 @@ int dissect_dcerpc_uuid_t (tvbuff_t *tvb, gint offset, packet_info *pinfo,
|
|||
/*
|
||||
* NDR routines for subdissectors.
|
||||
*/
|
||||
WS_DLL_PUBLIC
|
||||
int dissect_ndr_uint8 (tvbuff_t *tvb, gint offset, packet_info *pinfo,
|
||||
proto_tree *tree, guint8 *drep,
|
||||
int hfindex, guint8 *pdata);
|
||||
int PIDL_dissect_uint8 (tvbuff_t *tvb, gint offset, packet_info *pinfo, proto_tree *tree, guint8 *drep, int hfindex, guint32 param);
|
||||
WS_DLL_PUBLIC
|
||||
int dissect_ndr_uint16 (tvbuff_t *tvb, gint offset, packet_info *pinfo,
|
||||
proto_tree *tree, guint8 *drep,
|
||||
int hfindex, guint16 *pdata);
|
||||
int PIDL_dissect_uint16 (tvbuff_t *tvb, gint offset, packet_info *pinfo, proto_tree *tree, guint8 *drep, int hfindex, guint32 param);
|
||||
WS_DLL_PUBLIC
|
||||
int dissect_ndr_uint32 (tvbuff_t *tvb, gint offset, packet_info *pinfo,
|
||||
proto_tree *tree, guint8 *drep,
|
||||
int hfindex, guint32 *pdata);
|
||||
int PIDL_dissect_uint32 (tvbuff_t *tvb, gint offset, packet_info *pinfo, proto_tree *tree, guint8 *drep, int hfindex, guint32 param);
|
||||
WS_DLL_PUBLIC
|
||||
int dissect_ndr_duint32 (tvbuff_t *tvb, gint offset, packet_info *pinfo,
|
||||
proto_tree *tree, guint8 *drep,
|
||||
int hfindex, guint64 *pdata);
|
||||
|
@ -184,12 +194,14 @@ int PIDL_dissect_uint64 (tvbuff_t *tvb, gint offset, packet_info *pinfo, proto_t
|
|||
int dissect_ndr_float (tvbuff_t *tvb, gint offset, packet_info *pinfo,
|
||||
proto_tree *tree, guint8 *drep,
|
||||
int hfindex, gfloat *pdata);
|
||||
WS_DLL_PUBLIC
|
||||
int dissect_ndr_double (tvbuff_t *tvb, gint offset, packet_info *pinfo,
|
||||
proto_tree *tree, guint8 *drep,
|
||||
int hfindex, gdouble *pdata);
|
||||
int dissect_ndr_time_t (tvbuff_t *tvb, gint offset, packet_info *pinfo,
|
||||
proto_tree *tree, guint8 *drep,
|
||||
int hfindex, guint32 *pdata);
|
||||
WS_DLL_PUBLIC
|
||||
int dissect_ndr_uuid_t (tvbuff_t *tvb, gint offset, packet_info *pinfo,
|
||||
proto_tree *tree, guint8 *drep,
|
||||
int hfindex, e_uuid_t *pdata);
|
||||
|
@ -200,12 +212,14 @@ int dissect_ndr_ctx_hnd (tvbuff_t *tvb, gint offset, packet_info *pinfo,
|
|||
#define FT_UINT1632 FT_UINT32
|
||||
typedef guint32 guint1632;
|
||||
|
||||
WS_DLL_PUBLIC
|
||||
int dissect_ndr_uint1632 (tvbuff_t *tvb, gint offset, packet_info *pinfo,
|
||||
proto_tree *tree, guint8 *drep,
|
||||
int hfindex, guint1632 *pdata);
|
||||
|
||||
typedef guint64 guint3264;
|
||||
|
||||
WS_DLL_PUBLIC
|
||||
int dissect_ndr_uint3264 (tvbuff_t *tvb, gint offset, packet_info *pinfo,
|
||||
proto_tree *tree, guint8 *drep,
|
||||
int hfindex, guint3264 *pdata);
|
||||
|
@ -283,9 +297,13 @@ typedef struct _dcerpc_sub_dissector {
|
|||
} dcerpc_sub_dissector;
|
||||
|
||||
/* registration function for subdissectors */
|
||||
WS_DLL_PUBLIC
|
||||
void dcerpc_init_uuid (int proto, int ett, e_uuid_t *uuid, guint16 ver, dcerpc_sub_dissector *procs, int opnum_hf);
|
||||
WS_DLL_PUBLIC
|
||||
const char *dcerpc_get_proto_name(e_uuid_t *uuid, guint16 ver);
|
||||
WS_DLL_PUBLIC
|
||||
int dcerpc_get_proto_hf_opnum(e_uuid_t *uuid, guint16 ver);
|
||||
WS_DLL_PUBLIC
|
||||
dcerpc_sub_dissector *dcerpc_get_proto_sub_dissector(e_uuid_t *uuid, guint16 ver);
|
||||
|
||||
/* Create a opnum, name value_string from a subdissector list */
|
||||
|
@ -353,12 +371,12 @@ typedef struct _dcerpc_info {
|
|||
/* the init_protocol hooks. With MSVC and a
|
||||
* libwireshark.dll, we need a special declaration.
|
||||
*/
|
||||
WS_VAR_IMPORT GHookList dcerpc_hooks_init_protos;
|
||||
WS_DLL_PUBLIC GHookList dcerpc_hooks_init_protos;
|
||||
|
||||
/* the registered subdissectors. With MSVC and a
|
||||
* libwireshark.dll, we need a special declaration.
|
||||
*/
|
||||
WS_VAR_IMPORT GHashTable *dcerpc_uuids;
|
||||
WS_DLL_PUBLIC GHashTable *dcerpc_uuids;
|
||||
|
||||
typedef struct _dcerpc_uuid_key {
|
||||
e_uuid_t uuid;
|
||||
|
@ -420,9 +438,11 @@ typedef struct decode_dcerpc_bind_values_s {
|
|||
} decode_dcerpc_bind_values_t;
|
||||
|
||||
/* Helper for "decode as" dialog to set up a UUID/conversation binding. */
|
||||
WS_DLL_PUBLIC
|
||||
struct _dcerpc_bind_value *
|
||||
dcerpc_add_conv_to_bind_table(decode_dcerpc_bind_values_t *binding);
|
||||
|
||||
WS_DLL_PUBLIC
|
||||
guint16
|
||||
dcerpc_get_transport_salt (packet_info *pinfo);
|
||||
|
||||
|
|
|
@ -27,31 +27,31 @@
|
|||
#ifndef __PACKET_DCERPC_DCOM_DISPATCH_H
|
||||
#define __PACKET_DCERPC_DCOM_DISPATCH_H
|
||||
|
||||
extern int
|
||||
WS_DLL_PUBLIC int
|
||||
dissect_IDispatch_GetTypeInfoCount_resp(tvbuff_t *tvb, int offset,
|
||||
packet_info *pinfo, proto_tree *tree, guint8 *drep);
|
||||
|
||||
extern int
|
||||
WS_DLL_PUBLIC int
|
||||
dissect_IDispatch_GetTypeInfo_rqst(tvbuff_t *tvb, int offset,
|
||||
packet_info *pinfo, proto_tree *tree, guint8 *drep);
|
||||
|
||||
extern int
|
||||
WS_DLL_PUBLIC int
|
||||
dissect_IDispatch_GetTypeInfo_resp(tvbuff_t *tvb, int offset,
|
||||
packet_info *pinfo, proto_tree *tree, guint8 *drep);
|
||||
|
||||
extern int
|
||||
WS_DLL_PUBLIC int
|
||||
dissect_IDispatch_GetIDsOfNames_rqst(tvbuff_t *tvb, int offset,
|
||||
packet_info *pinfo, proto_tree *tree, guint8 *drep);
|
||||
|
||||
extern int
|
||||
WS_DLL_PUBLIC int
|
||||
dissect_IDispatch_GetIDsOfNames_resp(tvbuff_t *tvb, int offset,
|
||||
packet_info *pinfo, proto_tree *tree, guint8 *drep);
|
||||
|
||||
extern int
|
||||
WS_DLL_PUBLIC int
|
||||
dissect_IDispatch_Invoke_rqst(tvbuff_t *tvb, int offset,
|
||||
packet_info *pinfo, proto_tree *tree, guint8 *drep);
|
||||
|
||||
extern int
|
||||
WS_DLL_PUBLIC int
|
||||
dissect_IDispatch_Invoke_resp(tvbuff_t *tvb, int offset,
|
||||
packet_info *pinfo, proto_tree *tree, guint8 *drep);
|
||||
|
||||
|
|
|
@ -25,9 +25,10 @@
|
|||
#ifndef __PACKET_DCERPC_DCOM_H
|
||||
#define __PACKET_DCERPC_DCOM_H
|
||||
|
||||
#include "ws_symbol_export.h"
|
||||
|
||||
WS_VAR_IMPORT const value_string dcom_hresult_vals[];
|
||||
WS_VAR_IMPORT const value_string dcom_variant_type_vals[];
|
||||
WS_DLL_PUBLIC const value_string dcom_hresult_vals[];
|
||||
WS_DLL_PUBLIC const value_string dcom_variant_type_vals[];
|
||||
extern const value_string dcom_protseq_vals[];
|
||||
|
||||
extern int hf_dcom_iid;
|
||||
|
@ -39,7 +40,7 @@ extern int hf_dcom_ipid;
|
|||
extern GHashTable *dcom_uuids;
|
||||
|
||||
/* preferences */
|
||||
extern gboolean dcom_prefs_display_unmarshalling_details;
|
||||
WS_DLL_PUBLIC gboolean dcom_prefs_display_unmarshalling_details;
|
||||
|
||||
|
||||
typedef struct dcom_machine_s {
|
||||
|
@ -79,8 +80,8 @@ typedef struct dcom_marshaler_s {
|
|||
dcom_dissect_fn_t routine;
|
||||
} dcom_marshaler_t;
|
||||
|
||||
extern dcom_interface_t *dcom_interface_new(packet_info *pinfo, const guint8 *ip, e_uuid_t *iid, guint64 oxid, guint64 oid, e_uuid_t *ipid);
|
||||
extern dcom_interface_t *dcom_interface_find(packet_info *pinfo, const guint8 *ip, e_uuid_t *ipid);
|
||||
WS_DLL_PUBLIC dcom_interface_t *dcom_interface_new(packet_info *pinfo, const guint8 *ip, e_uuid_t *iid, guint64 oxid, guint64 oid, e_uuid_t *ipid);
|
||||
WS_DLL_PUBLIC dcom_interface_t *dcom_interface_find(packet_info *pinfo, const guint8 *ip, e_uuid_t *ipid);
|
||||
extern void dcom_interface_dump(void);
|
||||
|
||||
extern int dcom_register_rountine(dcom_dissect_fn_t routine, e_uuid_t* uuid);
|
||||
|
@ -89,10 +90,10 @@ extern void dcom_register_common_routines_(void);
|
|||
extern dcom_dissect_fn_t dcom_get_rountine_by_uuid(const e_uuid_t* uuid);
|
||||
|
||||
/* the essential DCOM this and that, starting every call */
|
||||
extern int
|
||||
WS_DLL_PUBLIC int
|
||||
dissect_dcom_this(tvbuff_t *tvb, int offset,
|
||||
packet_info *pinfo, proto_tree *tree, guint8 *drep);
|
||||
extern int
|
||||
WS_DLL_PUBLIC int
|
||||
dissect_dcom_that(tvbuff_t *tvb, int offset,
|
||||
packet_info *pinfo, proto_tree *tree, guint8 *drep);
|
||||
|
||||
|
@ -125,21 +126,21 @@ dissect_dcom_indexed_WORD(tvbuff_t *tvb, int offset, packet_info *pinfo,
|
|||
proto_tree *tree, guint8 *drep,
|
||||
int hfindex, guint16 * pu16WORD, int field_index);
|
||||
|
||||
extern int
|
||||
WS_DLL_PUBLIC int
|
||||
dissect_dcom_indexed_DWORD(tvbuff_t *tvb, int offset, packet_info *pinfo,
|
||||
proto_tree *tree, guint8 *drep,
|
||||
int hfindex, guint32 * pu32DWORD, int field_index);
|
||||
|
||||
extern int
|
||||
WS_DLL_PUBLIC int
|
||||
dissect_dcom_HRESULT(tvbuff_t *tvb, int offset,
|
||||
packet_info *pinfo, proto_tree *tree, guint8 *drep, guint32 * pu32hresult);
|
||||
|
||||
extern int
|
||||
WS_DLL_PUBLIC int
|
||||
dissect_dcom_HRESULT_item(tvbuff_t *tvb, int offset, packet_info *pinfo,
|
||||
proto_tree *tree, guint8 *drep,
|
||||
guint32 * pu32HResult, int field_index, proto_item **item);
|
||||
|
||||
extern int
|
||||
WS_DLL_PUBLIC int
|
||||
dissect_dcom_indexed_HRESULT(tvbuff_t *tvb, int offset, packet_info *pinfo,
|
||||
proto_tree *tree, guint8 *drep,
|
||||
guint32 * pu32hresult, int field_index);
|
||||
|
@ -153,21 +154,21 @@ typedef void (*sa_callback_t) (tvbuff_t *tvb, gint offset, packet_info *pinfo,
|
|||
proto_tree *tree, guint8 *drep,
|
||||
guint32 u32VarType, guint32 u32ArraySize);
|
||||
|
||||
extern int
|
||||
WS_DLL_PUBLIC int
|
||||
dissect_dcom_SAFEARRAY(tvbuff_t *tvb, int offset, packet_info *pinfo,
|
||||
proto_tree *tree, guint8 *drep, int hfindex _U_, sa_callback_t sacb);
|
||||
|
||||
extern int
|
||||
WS_DLL_PUBLIC int
|
||||
dissect_dcom_LPWSTR(tvbuff_t *tvb, gint offset, packet_info *pinfo,
|
||||
proto_tree *tree, guint8 *drep, int hfindex,
|
||||
gchar *psz_buffer, guint32 u32max_buffer);
|
||||
|
||||
extern int
|
||||
WS_DLL_PUBLIC int
|
||||
dissect_dcom_indexed_LPWSTR(tvbuff_t *tvb, gint offset, packet_info *pinfo,
|
||||
proto_tree *tree, guint8 *drep, int hfindex,
|
||||
gchar *pszStr, guint32 u32MaxStr, int field_index);
|
||||
|
||||
extern int
|
||||
WS_DLL_PUBLIC int
|
||||
dissect_dcom_BSTR(tvbuff_t *tvb, gint offset, packet_info *pinfo,
|
||||
proto_tree *tree, guint8 *drep, int hfindex,
|
||||
gchar *psz_buffer, guint32 u32max_buffer);
|
||||
|
@ -184,28 +185,28 @@ extern int
|
|||
dissect_dcom_OBJREF(tvbuff_t *tvb, gint offset, packet_info *pinfo,
|
||||
proto_tree *tree, guint8 *drep, int hfindex, dcom_interface_t **interf);
|
||||
|
||||
extern int
|
||||
WS_DLL_PUBLIC int
|
||||
dissect_dcom_MInterfacePointer(tvbuff_t *tvb, gint offset, packet_info *pinfo,
|
||||
proto_tree *tree, guint8 *drep, int hfindex, dcom_interface_t **interf);
|
||||
extern int
|
||||
WS_DLL_PUBLIC int
|
||||
dissect_dcom_PMInterfacePointer(tvbuff_t *tvb, gint offset, packet_info *pinfo,
|
||||
proto_tree *tree, guint8 *drep, int hfindex, dcom_interface_t **interf);
|
||||
|
||||
extern int
|
||||
WS_DLL_PUBLIC int
|
||||
dissect_dcom_VARTYPE(tvbuff_t *tvb, int offset,
|
||||
packet_info *pinfo, proto_tree *tree, guint8 *drep,
|
||||
guint16 *pu16Vartype);
|
||||
|
||||
extern int
|
||||
WS_DLL_PUBLIC int
|
||||
dissect_dcom_VARIANT(tvbuff_t *tvb, int offset, packet_info *pinfo,
|
||||
proto_tree *tree, guint8 *drep, int hfindex);
|
||||
|
||||
/* dcom "dcerpc internal" unmarshalling */
|
||||
extern int
|
||||
WS_DLL_PUBLIC int
|
||||
dissect_dcom_dcerpc_array_size(tvbuff_t *tvb, gint offset, packet_info *pinfo,
|
||||
proto_tree *tree, guint8 *drep, guint32 *pu32array_size);
|
||||
|
||||
extern int
|
||||
WS_DLL_PUBLIC int
|
||||
dissect_dcom_dcerpc_pointer(tvbuff_t *tvb, gint offset, packet_info *pinfo,
|
||||
proto_tree *tree, guint8 *drep, guint32 *pu32pointer);
|
||||
|
||||
|
@ -221,11 +222,11 @@ dissect_dcom_nospec_data(tvbuff_t *tvb, int offset,
|
|||
|
||||
/* very simple parameter-profiles dissectors (for very simple requests ;-) */
|
||||
/* request: no parameters */
|
||||
extern int
|
||||
WS_DLL_PUBLIC int
|
||||
dissect_dcom_simple_rqst(tvbuff_t *tvb, int offset,
|
||||
packet_info *pinfo, proto_tree *tree, guint8 *drep);
|
||||
/* response: only HRESULT */
|
||||
extern int
|
||||
WS_DLL_PUBLIC int
|
||||
dissect_dcom_simple_resp(tvbuff_t *tvb, int offset,
|
||||
packet_info *pinfo, proto_tree *tree, guint8 *drep);
|
||||
|
||||
|
|
|
@ -42,7 +42,7 @@ int dissect_dsp_OperationProgress(gboolean implicit_tag _U_, tvbuff_t *tvb _U_,
|
|||
int dissect_dsp_ReferenceType(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_);
|
||||
int dissect_dsp_AccessPoint(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_);
|
||||
int dissect_dsp_MasterAndShadowAccessPoints(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_);
|
||||
int dissect_dsp_AccessPointInformation(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_);
|
||||
WS_DLL_PUBLIC int dissect_dsp_AccessPointInformation(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_);
|
||||
int dissect_dsp_Exclusions(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_);
|
||||
int dissect_dsp_ContinuationReference(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_);
|
||||
|
||||
|
|
|
@ -27,6 +27,7 @@
|
|||
#define __PACKET_E164_H__
|
||||
|
||||
#include <epan/value_string.h>
|
||||
#include "ws_symbol_export.h"
|
||||
|
||||
extern const value_string E164_country_code_value[];
|
||||
extern const value_string E164_International_Networks_vals[];
|
||||
|
@ -47,5 +48,5 @@ typedef struct {
|
|||
|
||||
extern void dissect_e164_number(tvbuff_t *tvb, proto_tree *tree, int offset, int length,
|
||||
e164_info_t e164_info);
|
||||
extern void dissect_e164_cc(tvbuff_t *tvb, proto_tree *tree, int offset, gboolean bcd_coded);
|
||||
WS_DLL_PUBLIC void dissect_e164_cc(tvbuff_t *tvb, proto_tree *tree, int offset, gboolean bcd_coded);
|
||||
#endif
|
||||
|
|
|
@ -27,11 +27,14 @@
|
|||
#define __PACKET_E212_H__
|
||||
|
||||
#include <epan/value_string.h>
|
||||
#include "ws_symbol_export.h"
|
||||
|
||||
extern value_string_ext E212_codes_ext;
|
||||
|
||||
gchar* dissect_e212_mcc_mnc_ep_str(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree, int offset, gboolean little_endian);
|
||||
WS_DLL_PUBLIC
|
||||
int dissect_e212_mcc_mnc(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree, int offset, gboolean little_endian);
|
||||
WS_DLL_PUBLIC
|
||||
int dissect_e212_mcc_mnc_in_address(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree, int offset);
|
||||
|
||||
#endif /* __PACKET_E212_H__ */
|
||||
|
|
|
@ -24,6 +24,9 @@
|
|||
#ifndef __PACKET_ENC_H__
|
||||
#define __PACKET_ENC_H__
|
||||
|
||||
#include "ws_symbol_export.h"
|
||||
|
||||
WS_DLL_PUBLIC
|
||||
void capture_enc(const guchar *, int, packet_counts *);
|
||||
|
||||
#endif
|
||||
|
|
|
@ -24,12 +24,15 @@
|
|||
#ifndef __PACKET_ETH_H__
|
||||
#define __PACKET_ETH_H__
|
||||
|
||||
#include "ws_symbol_export.h"
|
||||
|
||||
typedef struct _eth_hdr {
|
||||
address dst;
|
||||
address src;
|
||||
guint16 type;
|
||||
} eth_hdr;
|
||||
|
||||
WS_DLL_PUBLIC
|
||||
void capture_eth(const guchar *, int, int, packet_counts *);
|
||||
|
||||
void add_ethernet_trailer(packet_info *pinfo, proto_tree *tree, proto_tree *fh_tree,
|
||||
|
|
|
@ -27,6 +27,7 @@
|
|||
#define __PACKET_FC_H_
|
||||
|
||||
#include "packet-scsi.h"
|
||||
#include "ws_symbol_export.h"
|
||||
|
||||
/* R_CTL upper bits creates a classification tree */
|
||||
#define FC_RCTL_DEV_DATA 0x00
|
||||
|
@ -62,7 +63,7 @@
|
|||
* without having to duplicate it. With MSVC and a
|
||||
* libwireshark.dll, we need a special declaration.
|
||||
*/
|
||||
WS_VAR_IMPORT const value_string fc_fc4_val[];
|
||||
WS_DLL_PUBLIC const value_string fc_fc4_val[];
|
||||
|
||||
/* DF_CTL bits */
|
||||
#define FC_DFCTL_DH 0x03 /* Device_Header type bits: */
|
||||
|
|
|
@ -24,12 +24,15 @@
|
|||
#ifndef __PACKET_FDDI_H__
|
||||
#define __PACKET_FDDI_H__
|
||||
|
||||
#include "ws_symbol_export.h"
|
||||
|
||||
typedef struct _fddi_hdr {
|
||||
guint8 fc;
|
||||
address dst;
|
||||
address src;
|
||||
} fddi_hdr;
|
||||
|
||||
WS_DLL_PUBLIC
|
||||
void capture_fddi(const guchar *, int, packet_counts *);
|
||||
|
||||
#endif
|
||||
|
|
|
@ -24,6 +24,9 @@
|
|||
#ifndef __PACKET_FR_H__
|
||||
#define __PACKET_FR_H__
|
||||
|
||||
#include "ws_symbol_export.h"
|
||||
|
||||
WS_DLL_PUBLIC
|
||||
void capture_fr(const guchar *, int, int, packet_counts *);
|
||||
|
||||
#endif
|
||||
|
|
|
@ -23,6 +23,8 @@
|
|||
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA.
|
||||
*/
|
||||
|
||||
#include "ws_symbol_export.h"
|
||||
|
||||
/*
|
||||
* Routine used to register frame end routine. The routine should only
|
||||
* be registred when the dissector is used in the frame, not in the
|
||||
|
@ -39,8 +41,8 @@ extern dissector_table_t wtap_encap_dissector_table;
|
|||
/* following variables are exported from libwireshark.dll.
|
||||
* Thus we need a special declaration.
|
||||
*/
|
||||
WS_VAR_IMPORT int proto_frame;
|
||||
WS_VAR_IMPORT int hf_frame_arrival_time;
|
||||
WS_VAR_IMPORT int hf_frame_number;
|
||||
WS_VAR_IMPORT int hf_frame_len;
|
||||
WS_VAR_IMPORT int hf_frame_capture_len;
|
||||
WS_DLL_PUBLIC int proto_frame;
|
||||
WS_DLL_PUBLIC int hf_frame_arrival_time;
|
||||
WS_DLL_PUBLIC int hf_frame_number;
|
||||
WS_DLL_PUBLIC int hf_frame_len;
|
||||
WS_DLL_PUBLIC int hf_frame_capture_len;
|
||||
|
|
|
@ -28,6 +28,8 @@
|
|||
#ifndef PACKET_GIOP_H
|
||||
#define PACKET_GIOP_H
|
||||
|
||||
#include "ws_symbol_export.h"
|
||||
|
||||
/*
|
||||
* Useful visible data/structs
|
||||
*/
|
||||
|
@ -119,7 +121,7 @@ extern gboolean dissect_giop(tvbuff_t *, packet_info *, proto_tree *); /* new in
|
|||
* This is for heuristic dissection
|
||||
*/
|
||||
|
||||
extern void register_giop_user(giop_sub_dissector_t *sub, const gchar *name,
|
||||
WS_DLL_PUBLIC void register_giop_user(giop_sub_dissector_t *sub, const gchar *name,
|
||||
int sub_proto);
|
||||
|
||||
/*
|
||||
|
@ -135,7 +137,7 @@ extern void delete_giop_user(giop_sub_dissector_t *sub, gchar *name);
|
|||
* This is for explicit dissection.
|
||||
*/
|
||||
|
||||
extern void register_giop_user_module(giop_sub_dissector_t *sub, const gchar *name,
|
||||
WS_DLL_PUBLIC void register_giop_user_module(giop_sub_dissector_t *sub, const gchar *name,
|
||||
const gchar *module, int sub_proto);
|
||||
|
||||
/*
|
||||
|
@ -170,7 +172,7 @@ extern void delete_giop_user_module(giop_sub_dissector_t *sub, gchar *name,
|
|||
* Data is added to tree directly if present.
|
||||
*/
|
||||
|
||||
extern void get_CDR_any(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree, proto_item *item,
|
||||
WS_DLL_PUBLIC void get_CDR_any(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree, proto_item *item,
|
||||
gint *offset, gboolean stream_is_big_endian,
|
||||
int boundary, MessageHeader * header);
|
||||
|
||||
|
@ -182,7 +184,7 @@ extern void get_CDR_any(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree, pro
|
|||
* has been processed.
|
||||
*/
|
||||
|
||||
extern gboolean get_CDR_boolean(tvbuff_t *tvb, int *offset);
|
||||
WS_DLL_PUBLIC gboolean get_CDR_boolean(tvbuff_t *tvb, int *offset);
|
||||
|
||||
|
||||
/* Copy a 1 octet sequence from the tvbuff
|
||||
|
@ -192,7 +194,7 @@ extern gboolean get_CDR_boolean(tvbuff_t *tvb, int *offset);
|
|||
* has been processed.
|
||||
*/
|
||||
|
||||
extern guint8 get_CDR_char(tvbuff_t *tvb, int *offset);
|
||||
WS_DLL_PUBLIC guint8 get_CDR_char(tvbuff_t *tvb, int *offset);
|
||||
|
||||
|
||||
|
||||
|
@ -208,7 +210,7 @@ extern guint8 get_CDR_char(tvbuff_t *tvb, int *offset);
|
|||
* have been processed.
|
||||
*/
|
||||
|
||||
extern gdouble get_CDR_double(tvbuff_t *tvb, int *offset,
|
||||
WS_DLL_PUBLIC gdouble get_CDR_double(tvbuff_t *tvb, int *offset,
|
||||
gboolean stream_is_big_endian, int boundary);
|
||||
|
||||
|
||||
|
@ -223,7 +225,7 @@ extern gdouble get_CDR_double(tvbuff_t *tvb, int *offset,
|
|||
* Enum values are encoded as unsigned long.
|
||||
*/
|
||||
|
||||
extern guint32 get_CDR_enum(tvbuff_t *tvb, int *offset,
|
||||
WS_DLL_PUBLIC guint32 get_CDR_enum(tvbuff_t *tvb, int *offset,
|
||||
gboolean stream_is_big_endian, int boundary);
|
||||
|
||||
|
||||
|
@ -258,7 +260,7 @@ extern guint32 get_CDR_enum(tvbuff_t *tvb, int *offset,
|
|||
*
|
||||
*/
|
||||
|
||||
extern void get_CDR_fixed(tvbuff_t *tvb, packet_info *pinfo, proto_item *item,
|
||||
WS_DLL_PUBLIC void get_CDR_fixed(tvbuff_t *tvb, packet_info *pinfo, proto_item *item,
|
||||
gchar **seq, gint *offset, guint32 digits, gint32 scale);
|
||||
|
||||
|
||||
|
@ -274,7 +276,7 @@ extern void get_CDR_fixed(tvbuff_t *tvb, packet_info *pinfo, proto_item *item,
|
|||
* have been processed.
|
||||
*/
|
||||
|
||||
extern gfloat get_CDR_float(tvbuff_t *tvb, int *offset,
|
||||
WS_DLL_PUBLIC gfloat get_CDR_float(tvbuff_t *tvb, int *offset,
|
||||
gboolean stream_is_big_endian, int boundary);
|
||||
|
||||
|
||||
|
@ -282,7 +284,7 @@ extern gfloat get_CDR_float(tvbuff_t *tvb, int *offset,
|
|||
* Decode an Interface type, and display it on the tree.
|
||||
*/
|
||||
|
||||
extern void get_CDR_interface(tvbuff_t *tvb, packet_info *pinfo,
|
||||
WS_DLL_PUBLIC void get_CDR_interface(tvbuff_t *tvb, packet_info *pinfo,
|
||||
proto_tree *tree, int *offset, gboolean stream_is_big_endian, int boundary);
|
||||
|
||||
|
||||
|
@ -295,7 +297,7 @@ extern void get_CDR_interface(tvbuff_t *tvb, packet_info *pinfo,
|
|||
* have been processed.
|
||||
*/
|
||||
|
||||
extern gint32 get_CDR_long(tvbuff_t *tvb, int *offset,
|
||||
WS_DLL_PUBLIC gint32 get_CDR_long(tvbuff_t *tvb, int *offset,
|
||||
gboolean stream_is_big_endian, int boundary);
|
||||
|
||||
|
||||
|
@ -311,13 +313,13 @@ extern gint32 get_CDR_long(tvbuff_t *tvb, int *offset,
|
|||
|
||||
#ifdef G_HAVE_GLONG_DOUBLE
|
||||
|
||||
extern glong_double get_CDR_long_double(tvbuff_t *tvb, int *offset,
|
||||
WS_DLL_PUBLIC glong_double get_CDR_long_double(tvbuff_t *tvb, int *offset,
|
||||
gboolean stream_is_big_endian, int boundary);
|
||||
#else
|
||||
|
||||
/* FIX -- Cast long double to gdouble until I figure this out -- FS*/
|
||||
|
||||
extern gdouble get_CDR_long_double(tvbuff_t *tvb, int *offset,
|
||||
WS_DLL_PUBLIC gdouble get_CDR_long_double(tvbuff_t *tvb, int *offset,
|
||||
gboolean stream_is_big_endian, int boundary);
|
||||
|
||||
#endif
|
||||
|
@ -332,14 +334,14 @@ extern gdouble get_CDR_long_double(tvbuff_t *tvb, int *offset,
|
|||
* have been processed.
|
||||
*/
|
||||
|
||||
extern gint64 get_CDR_long_long(tvbuff_t *tvb, int *offset,
|
||||
WS_DLL_PUBLIC gint64 get_CDR_long_long(tvbuff_t *tvb, int *offset,
|
||||
gboolean stream_is_big_endian, int boundary);
|
||||
|
||||
/*
|
||||
* Decode an Object type, and display it on the tree.
|
||||
*/
|
||||
|
||||
extern void get_CDR_object(tvbuff_t *tvb, packet_info *pinfo,
|
||||
WS_DLL_PUBLIC void get_CDR_object(tvbuff_t *tvb, packet_info *pinfo,
|
||||
proto_tree *tree, int *offset, gboolean stream_is_big_endian, int boundary);
|
||||
|
||||
|
||||
|
@ -350,7 +352,7 @@ extern void get_CDR_object(tvbuff_t *tvb, packet_info *pinfo,
|
|||
* has been processed.
|
||||
*/
|
||||
|
||||
extern guint8 get_CDR_octet(tvbuff_t *tvb, int *offset);
|
||||
WS_DLL_PUBLIC guint8 get_CDR_octet(tvbuff_t *tvb, int *offset);
|
||||
|
||||
|
||||
/* Copy a sequence of octets from the tvbuff.
|
||||
|
@ -359,7 +361,7 @@ extern guint8 get_CDR_octet(tvbuff_t *tvb, int *offset);
|
|||
* This function also increments offset by len.
|
||||
*/
|
||||
|
||||
extern void get_CDR_octet_seq(tvbuff_t *tvb, const gchar **seq, int *offset, guint32 len);
|
||||
WS_DLL_PUBLIC void get_CDR_octet_seq(tvbuff_t *tvb, const gchar **seq, int *offset, guint32 len);
|
||||
|
||||
/* Copy a 2 octet sequence from the tvbuff
|
||||
* which represents a signed short value, and convert
|
||||
|
@ -370,7 +372,7 @@ extern void get_CDR_octet_seq(tvbuff_t *tvb, const gchar **seq, int *offset, gui
|
|||
* have been processed.
|
||||
*/
|
||||
|
||||
extern gint16 get_CDR_short(tvbuff_t *tvb, int *offset,
|
||||
WS_DLL_PUBLIC gint16 get_CDR_short(tvbuff_t *tvb, int *offset,
|
||||
gboolean stream_is_big_endian, int boundary);
|
||||
|
||||
|
||||
|
@ -396,7 +398,7 @@ extern void giop_add_CDR_string(proto_tree *tree, tvbuff_t *tvb, int *offset,
|
|||
*
|
||||
*/
|
||||
|
||||
extern guint32 get_CDR_string(tvbuff_t *tvb, const gchar **seq, int *offset,
|
||||
WS_DLL_PUBLIC guint32 get_CDR_string(tvbuff_t *tvb, const gchar **seq, int *offset,
|
||||
gboolean stream_is_big_endian, int boundary);
|
||||
|
||||
|
||||
|
@ -411,7 +413,7 @@ extern guint32 get_CDR_string(tvbuff_t *tvb, const gchar **seq, int *offset,
|
|||
* It returns a guint32 representing a TCKind value.
|
||||
*/
|
||||
|
||||
extern guint32 get_CDR_typeCode(tvbuff_t *tvb, packet_info* pinfo, proto_tree *tree, gint *offset,
|
||||
WS_DLL_PUBLIC guint32 get_CDR_typeCode(tvbuff_t *tvb, packet_info* pinfo, proto_tree *tree, gint *offset,
|
||||
gboolean stream_is_big_endian, int boundary, MessageHeader * header );
|
||||
|
||||
/* Copy a 4 octet sequence from the tvbuff
|
||||
|
@ -423,7 +425,7 @@ extern guint32 get_CDR_typeCode(tvbuff_t *tvb, packet_info* pinfo, proto_tree *t
|
|||
* have been processed.
|
||||
*/
|
||||
|
||||
extern guint32 get_CDR_ulong(tvbuff_t *tvb, int *offset,
|
||||
WS_DLL_PUBLIC guint32 get_CDR_ulong(tvbuff_t *tvb, int *offset,
|
||||
gboolean stream_is_big_endian, int boundary);
|
||||
|
||||
|
||||
|
@ -436,7 +438,7 @@ extern guint32 get_CDR_ulong(tvbuff_t *tvb, int *offset,
|
|||
* have been processed.
|
||||
*/
|
||||
|
||||
extern guint64 get_CDR_ulong_long(tvbuff_t *tvb, int *offset,
|
||||
WS_DLL_PUBLIC guint64 get_CDR_ulong_long(tvbuff_t *tvb, int *offset,
|
||||
gboolean stream_is_big_endian, int boundary);
|
||||
|
||||
/* Copy a 2 octet sequence from the tvbuff
|
||||
|
@ -448,7 +450,7 @@ extern guint64 get_CDR_ulong_long(tvbuff_t *tvb, int *offset,
|
|||
* have been processed.
|
||||
*/
|
||||
|
||||
extern guint16 get_CDR_ushort(tvbuff_t *tvb, int *offset,
|
||||
WS_DLL_PUBLIC guint16 get_CDR_ushort(tvbuff_t *tvb, int *offset,
|
||||
gboolean stream_is_big_endian, int boundary);
|
||||
|
||||
|
||||
|
@ -482,7 +484,7 @@ extern guint16 get_CDR_ushort(tvbuff_t *tvb, int *offset,
|
|||
* Wchar is not supported for GIOP 1.0.
|
||||
*/
|
||||
|
||||
extern gint get_CDR_wchar(tvbuff_t *tvb, const gchar **seq, int *offset,
|
||||
WS_DLL_PUBLIC gint get_CDR_wchar(tvbuff_t *tvb, const gchar **seq, int *offset,
|
||||
MessageHeader * header);
|
||||
|
||||
|
||||
|
@ -505,7 +507,7 @@ extern gint get_CDR_wchar(tvbuff_t *tvb, const gchar **seq, int *offset,
|
|||
* Wstring is not supported for GIOP 1.0.
|
||||
*/
|
||||
|
||||
extern guint32 get_CDR_wstring(tvbuff_t *tvb, const gchar **seq, int *offset,
|
||||
WS_DLL_PUBLIC guint32 get_CDR_wstring(tvbuff_t *tvb, const gchar **seq, int *offset,
|
||||
gboolean stream_is_big_endian, int boundary, MessageHeader * header);
|
||||
|
||||
|
||||
|
@ -520,7 +522,7 @@ extern guint32 get_CDR_wstring(tvbuff_t *tvb, const gchar **seq, int *offset,
|
|||
|
||||
/* Determine the byte order from the GIOP MessageHeader */
|
||||
|
||||
extern gboolean is_big_endian (MessageHeader * header);
|
||||
WS_DLL_PUBLIC gboolean is_big_endian (MessageHeader * header);
|
||||
|
||||
/*
|
||||
* get_encap_info() for any encapsulation (eg:sequences)
|
||||
|
@ -528,7 +530,7 @@ extern gboolean is_big_endian (MessageHeader * header);
|
|||
* and *offset, and returns the sequence length.
|
||||
*/
|
||||
|
||||
extern guint32 get_CDR_encap_info(tvbuff_t *tvb, proto_tree *tree, gint *offset,
|
||||
WS_DLL_PUBLIC guint32 get_CDR_encap_info(tvbuff_t *tvb, proto_tree *tree, gint *offset,
|
||||
gboolean old_stream_is_big_endian, guint32 old_boundary,
|
||||
gboolean *new_stream_is_big_endian_ptr, guint32 *new_boundary_ptr );
|
||||
|
||||
|
@ -540,7 +542,7 @@ extern guint32 get_CDR_encap_info(tvbuff_t *tvb, proto_tree *tree, gint *offset,
|
|||
* the initial sequence.
|
||||
*/
|
||||
|
||||
extern gchar * make_printable_string (const gchar *in, guint32 len);
|
||||
WS_DLL_PUBLIC gchar * make_printable_string (const gchar *in, guint32 len);
|
||||
|
||||
/*
|
||||
* Enums for TCkind
|
||||
|
|
|
@ -52,6 +52,7 @@
|
|||
#define __PACKET_GSM_A_COMMON_H__
|
||||
|
||||
#include "packet-sccp.h"
|
||||
#include "ws_symbol_export.h"
|
||||
|
||||
/* PROTOTYPES/FORWARDS */
|
||||
typedef guint16 (*elem_fcn)(tvbuff_t *tvb, proto_tree *tree, packet_info *pinfo, guint32 offset, guint len, gchar *add_string, int string_len);
|
||||
|
@ -348,17 +349,17 @@ extern const char* get_gsm_a_msg_string(int pdu_type, int idx);
|
|||
/*
|
||||
* Type Length Value (TLV) element dissector
|
||||
*/
|
||||
extern guint16 elem_tlv(tvbuff_t *tvb, proto_tree *tree, packet_info *pinfo, guint8 iei, gint pdu_type, int idx, guint32 offset, guint len, const gchar *name_add);
|
||||
WS_DLL_PUBLIC guint16 elem_tlv(tvbuff_t *tvb, proto_tree *tree, packet_info *pinfo, guint8 iei, gint pdu_type, int idx, guint32 offset, guint len, const gchar *name_add);
|
||||
|
||||
/*
|
||||
* Type Extendable Length Value (TLVE) element dissector
|
||||
*/
|
||||
extern guint16 elem_telv(tvbuff_t *tvb, proto_tree *tree, packet_info *pinfo, guint8 iei, gint pdu_type, int idx, guint32 offset, guint len, const gchar *name_add);
|
||||
guint16 elem_telv(tvbuff_t *tvb, proto_tree *tree, packet_info *pinfo, guint8 iei, gint pdu_type, int idx, guint32 offset, guint len, const gchar *name_add);
|
||||
|
||||
/*
|
||||
* Type Length Value (TLV-E) element dissector
|
||||
*/
|
||||
extern guint16 elem_tlv_e(tvbuff_t *tvb, proto_tree *tree, packet_info *pinfo, guint8 iei, gint pdu_type, int idx, guint32 offset, guint len, const gchar *name_add);
|
||||
guint16 elem_tlv_e(tvbuff_t *tvb, proto_tree *tree, packet_info *pinfo, guint8 iei, gint pdu_type, int idx, guint32 offset, guint len, const gchar *name_add);
|
||||
|
||||
/*
|
||||
* Type Value (TV) element dissector
|
||||
|
@ -366,7 +367,7 @@ extern guint16 elem_tlv_e(tvbuff_t *tvb, proto_tree *tree, packet_info *pinfo, g
|
|||
* Length cannot be used in these functions, big problem if a element dissector
|
||||
* is not defined for these.
|
||||
*/
|
||||
extern guint16 elem_tv(tvbuff_t *tvb, proto_tree *tree, packet_info *pinfo, guint8 iei, gint pdu_type, int idx, guint32 offset, const gchar *name_add);
|
||||
WS_DLL_PUBLIC guint16 elem_tv(tvbuff_t *tvb, proto_tree *tree, packet_info *pinfo, guint8 iei, gint pdu_type, int idx, guint32 offset, const gchar *name_add);
|
||||
|
||||
/*
|
||||
* Type Value (TV) element dissector
|
||||
|
@ -375,22 +376,22 @@ extern guint16 elem_tv(tvbuff_t *tvb, proto_tree *tree, packet_info *pinfo, guin
|
|||
* Length cannot be used in these functions, big problem if a element dissector
|
||||
* is not defined for these.
|
||||
*/
|
||||
extern guint16 elem_tv_short(tvbuff_t *tvb, proto_tree *tree, packet_info *pinfo, guint8 iei, gint pdu_type, int idx, guint32 offset, const gchar *name_add);
|
||||
WS_DLL_PUBLIC guint16 elem_tv_short(tvbuff_t *tvb, proto_tree *tree, packet_info *pinfo, guint8 iei, gint pdu_type, int idx, guint32 offset, const gchar *name_add);
|
||||
|
||||
/*
|
||||
* Type (T) element dissector
|
||||
*/
|
||||
extern guint16 elem_t(tvbuff_t *tvb, proto_tree *tree, packet_info *pinfo, guint8 iei, gint pdu_type, int idx, guint32 offset, const gchar *name_add);
|
||||
WS_DLL_PUBLIC guint16 elem_t(tvbuff_t *tvb, proto_tree *tree, packet_info *pinfo, guint8 iei, gint pdu_type, int idx, guint32 offset, const gchar *name_add);
|
||||
|
||||
/*
|
||||
* Length Value (LV) element dissector
|
||||
*/
|
||||
extern guint16 elem_lv(tvbuff_t *tvb, proto_tree *tree, packet_info *pinfo, gint pdu_type, int idx, guint32 offset, guint len, const gchar *name_add);
|
||||
WS_DLL_PUBLIC guint16 elem_lv(tvbuff_t *tvb, proto_tree *tree, packet_info *pinfo, gint pdu_type, int idx, guint32 offset, guint len, const gchar *name_add);
|
||||
|
||||
/*
|
||||
* Length Value (LV-E) element dissector
|
||||
*/
|
||||
extern guint16 elem_lv_e(tvbuff_t *tvb, proto_tree *tree, packet_info *pinfo, gint pdu_type, int idx, guint32 offset, guint len, const gchar *name_add);
|
||||
guint16 elem_lv_e(tvbuff_t *tvb, proto_tree *tree, packet_info *pinfo, gint pdu_type, int idx, guint32 offset, guint len, const gchar *name_add);
|
||||
|
||||
/*
|
||||
* Value (V) element dissector
|
||||
|
@ -398,7 +399,7 @@ extern guint16 elem_lv_e(tvbuff_t *tvb, proto_tree *tree, packet_info *pinfo, gi
|
|||
* Length cannot be used in these functions, big problem if a element dissector
|
||||
* is not defined for these.
|
||||
*/
|
||||
extern guint16 elem_v(tvbuff_t *tvb, proto_tree *tree, packet_info *pinfo, gint pdu_type, int idx, guint32 offset, const gchar *name_add);
|
||||
WS_DLL_PUBLIC guint16 elem_v(tvbuff_t *tvb, proto_tree *tree, packet_info *pinfo, gint pdu_type, int idx, guint32 offset, const gchar *name_add);
|
||||
|
||||
/*
|
||||
* Short Value (V_SHORT) element dissector
|
||||
|
@ -406,7 +407,7 @@ extern guint16 elem_v(tvbuff_t *tvb, proto_tree *tree, packet_info *pinfo, gint
|
|||
* nibble used in this functions to indicate left or right nibble of the octet
|
||||
* This is expected to be used right nibble first, as the tables of 24.008.
|
||||
*/
|
||||
extern guint16 elem_v_short(tvbuff_t *tvb, proto_tree *tree, packet_info *pinfo, gint pdu_type, int idx, guint32 offset, guint32 nibble);
|
||||
WS_DLL_PUBLIC guint16 elem_v_short(tvbuff_t *tvb, proto_tree *tree, packet_info *pinfo, gint pdu_type, int idx, guint32 offset, guint32 nibble);
|
||||
|
||||
|
||||
/* XXX: Most (if not all) the functions which make use of the following macros have the variables 'consumed',
|
||||
|
@ -660,8 +661,11 @@ guint16 be_cell_id_list(tvbuff_t *tvb, proto_tree *tree, packet_info *pinfo, gui
|
|||
guint16 be_chan_type(tvbuff_t *tvb, proto_tree *tree, packet_info *pinfo, guint32 offset, guint len, gchar *add_string, int string_len);
|
||||
guint16 be_prio(tvbuff_t *tvb, proto_tree *tree, packet_info *pinfo, guint32 offset, guint len, gchar *add_string, int string_len);
|
||||
|
||||
WS_DLL_PUBLIC
|
||||
guint16 de_lai(tvbuff_t *tvb, proto_tree *tree, packet_info *pinfo, guint32 offset, guint len, gchar *add_string, int string_len);
|
||||
WS_DLL_PUBLIC
|
||||
guint16 de_mid(tvbuff_t *tvb, proto_tree *tree, packet_info *pinfo, guint32 offset, guint len, gchar *add_string, int string_len);
|
||||
WS_DLL_PUBLIC
|
||||
guint16 de_cell_id(tvbuff_t *tvb, proto_tree *tree, packet_info *pinfo, guint32 offset, guint len, gchar *add_string, int string_len);
|
||||
guint16 de_bearer_cap(tvbuff_t *tvb, proto_tree *tree, packet_info *pinfo, guint32 offset, guint len, gchar *add_string, int string_len);
|
||||
guint16 de_bearer_cap_uplink(tvbuff_t *tvb, proto_tree *tree, packet_info *pinfo, guint32 offset, guint len, gchar *add_string, int string_len);
|
||||
|
@ -673,38 +677,60 @@ guint16 de_cn_common_gsm_map_nas_sys_info(tvbuff_t *tvb, proto_tree *tree, packe
|
|||
guint16 de_cs_domain_spec_sys_info(tvbuff_t *tvb, proto_tree *tree, packet_info *pinfo, guint32 offset, guint len, gchar *add_string, int string_len);
|
||||
guint16 de_ps_domain_spec_sys_info(tvbuff_t *tvb, proto_tree *tree, packet_info *pinfo, guint32 offset, guint len, gchar *add_string, int string_len);
|
||||
guint16 de_plmn_list(tvbuff_t *tvb, proto_tree *tree, packet_info *pinfo, guint32 offset, guint len, gchar *add_string, int string_len);
|
||||
WS_DLL_PUBLIC
|
||||
guint16 de_ms_cm_1(tvbuff_t *tvb, proto_tree *tree, packet_info *pinfo, guint32 offset, guint len, gchar *add_string, int string_len);
|
||||
WS_DLL_PUBLIC
|
||||
guint16 de_ms_cm_2(tvbuff_t *tvb, proto_tree *tree, packet_info *pinfo, guint32 offset, guint len, gchar *add_string, int string_len);
|
||||
WS_DLL_PUBLIC
|
||||
guint16 de_ms_cm_3(tvbuff_t *tvb, proto_tree *tree, packet_info *pinfo, guint32 offset, guint len, gchar *add_string, int string_len);
|
||||
guint16 de_serv_cat(tvbuff_t *tvb, proto_tree *tree, packet_info *pinfo, guint32 offset, guint len, gchar *add_string, int string_len);
|
||||
WS_DLL_PUBLIC
|
||||
guint16 de_sm_apn(tvbuff_t *tvb, proto_tree *tree, packet_info *pinfo, guint32 offset, guint len, gchar *add_string, int string_len);
|
||||
guint16 de_sm_pco(tvbuff_t *tvb, proto_tree *tree, packet_info *pinfo, guint32 offset, guint len, gchar *add_string, int string_len);
|
||||
WS_DLL_PUBLIC
|
||||
guint16 de_sm_qos(tvbuff_t *tvb, proto_tree *tree, packet_info *pinfo, guint32 offset, guint len, gchar *add_string, int string_len);
|
||||
WS_DLL_PUBLIC
|
||||
guint16 de_sm_pflow_id(tvbuff_t *tvb, proto_tree *tree, packet_info *pinfo, guint32 offset, guint len, gchar *add_string, int string_len);
|
||||
guint16 de_sm_tflow_temp(tvbuff_t *tvb, proto_tree *tree, packet_info *pinfo, guint32 offset, guint len, gchar *add_string, int string_len);
|
||||
guint16 de_time_zone(tvbuff_t *tvb, proto_tree *tree, packet_info *pinfo, guint32 offset, guint len, gchar *add_string, int string_len);
|
||||
WS_DLL_PUBLIC
|
||||
guint16 de_gmm_drx_param(tvbuff_t *tvb, proto_tree *tree, packet_info *pinfo, guint32 offset, guint len, gchar *add_string, int string_len);
|
||||
WS_DLL_PUBLIC
|
||||
guint16 de_gmm_ms_net_cap(tvbuff_t *tvb, proto_tree *tree, packet_info *pinfo, guint32 offset, guint len, gchar *add_string, int string_len);
|
||||
WS_DLL_PUBLIC
|
||||
guint16 de_gmm_rai(tvbuff_t *tvb, proto_tree *tree, packet_info *pinfo, guint32 offset, guint len, gchar *add_string, int string_len);
|
||||
WS_DLL_PUBLIC
|
||||
guint16 de_gmm_ms_radio_acc_cap(tvbuff_t *tvb, proto_tree *tree, packet_info *pinfo, guint32 offset, guint len, gchar *add_string, int string_len);
|
||||
guint16 de_gmm_voice_domain_pref(tvbuff_t *tvb, proto_tree *tree, packet_info *pinfo, guint32 offset, guint len, gchar *add_string, int string_len);
|
||||
|
||||
guint16 de_sup_codec_list(tvbuff_t *tvb, proto_tree *tree, packet_info *pinfo, guint32 offset, guint len, gchar *add_string, int string_len);
|
||||
|
||||
|
||||
WS_DLL_PUBLIC
|
||||
guint16 de_rr_cause(tvbuff_t *tvb, proto_tree *tree, packet_info *pinfo, guint32 offset, guint len, gchar *add_string, int string_len);
|
||||
WS_DLL_PUBLIC
|
||||
guint16 de_rr_cell_dsc(tvbuff_t *tvb, proto_tree *tree, packet_info *pinfo, guint32 offset, guint len, gchar *add_string, int string_len);
|
||||
WS_DLL_PUBLIC
|
||||
guint16 de_rr_ch_dsc(tvbuff_t *tvb, proto_tree *tree, packet_info *pinfo, guint32 offset, guint len, gchar *add_string, int string_len);
|
||||
WS_DLL_PUBLIC
|
||||
guint16 de_rr_ch_mode(tvbuff_t *tvb, proto_tree *tree, packet_info *pinfo, guint32 offset, guint len, gchar *add_string, int string_len);
|
||||
WS_DLL_PUBLIC
|
||||
guint16 de_rr_chnl_needed(tvbuff_t *tvb, proto_tree *tree, packet_info *pinfo, guint32 offset, guint len, gchar *add_string, int string_len);
|
||||
WS_DLL_PUBLIC
|
||||
guint16 de_rr_cip_mode_set(tvbuff_t *tvb, proto_tree *tree, packet_info *pinfo, guint32 offset, guint len, gchar *add_string, int string_len);
|
||||
WS_DLL_PUBLIC
|
||||
guint16 de_rr_cm_enq_mask(tvbuff_t *tvb, proto_tree *tree, packet_info *pinfo, guint32 offset, guint len, gchar *add_string, int string_len);
|
||||
guint16 de_rr_meas_res(tvbuff_t *tvb, proto_tree *tree, packet_info *pinfo, guint32 offset, guint len, gchar *add_string, int string_len);
|
||||
WS_DLL_PUBLIC
|
||||
guint16 de_rr_multirate_conf(tvbuff_t *tvb, proto_tree *tree, packet_info *pinfo, guint32 offset, guint len, gchar *add_string, int string_len);
|
||||
WS_DLL_PUBLIC
|
||||
guint16 de_rr_sus_cau(tvbuff_t *tvb, proto_tree *tree, packet_info *pinfo, guint32 offset, guint len, gchar *add_string, int string_len);
|
||||
WS_DLL_PUBLIC
|
||||
guint16 de_rr_tlli(tvbuff_t *tvb, proto_tree *tree, packet_info *pinfo, guint32 offset, guint len, gchar *add_string, int string_len);
|
||||
|
||||
WS_DLL_PUBLIC
|
||||
guint16 de_rej_cause(tvbuff_t *tvb, proto_tree *tree, packet_info *pinfo, guint32 offset, guint len, gchar *add_string, int string_len);
|
||||
WS_DLL_PUBLIC
|
||||
guint16 de_d_gb_call_ref(tvbuff_t *tvb, proto_tree *tree, packet_info *pinfo, guint32 offset, guint len, gchar *add_string, int string_len);
|
||||
guint16 de_spare_nibble(tvbuff_t *tvb, proto_tree *tree, packet_info *pinfo _U_, guint32 offset, guint len _U_, gchar *add_string _U_, int string_len _U_);
|
||||
|
||||
|
@ -728,17 +754,17 @@ void rp_data_n_ms(tvbuff_t *tvb, proto_tree *tree, packet_info *pinfo, guint32 o
|
|||
* without having to duplicate it. With MSVC and a
|
||||
* libwireshark.dll, we need a special declaration.
|
||||
*/
|
||||
WS_VAR_IMPORT const value_string gsm_a_bssmap_msg_strings[];
|
||||
WS_VAR_IMPORT const value_string gsm_a_dtap_msg_mm_strings[];
|
||||
WS_VAR_IMPORT const value_string gsm_a_dtap_msg_rr_strings[];
|
||||
WS_VAR_IMPORT const value_string gsm_a_dtap_msg_cc_strings[];
|
||||
WS_VAR_IMPORT const value_string gsm_a_dtap_msg_gmm_strings[];
|
||||
WS_VAR_IMPORT const value_string gsm_a_dtap_msg_sms_strings[];
|
||||
WS_VAR_IMPORT const value_string gsm_a_dtap_msg_sm_strings[];
|
||||
WS_VAR_IMPORT const value_string gsm_a_dtap_msg_ss_strings[];
|
||||
WS_VAR_IMPORT const value_string gsm_a_dtap_msg_tp_strings[];
|
||||
WS_VAR_IMPORT const value_string gsm_a_rr_short_pd_msg_strings[];
|
||||
WS_VAR_IMPORT const gchar *gsm_a_pd_str[];
|
||||
WS_DLL_PUBLIC const value_string gsm_a_bssmap_msg_strings[];
|
||||
WS_DLL_PUBLIC const value_string gsm_a_dtap_msg_mm_strings[];
|
||||
WS_DLL_PUBLIC const value_string gsm_a_dtap_msg_rr_strings[];
|
||||
WS_DLL_PUBLIC const value_string gsm_a_dtap_msg_cc_strings[];
|
||||
WS_DLL_PUBLIC const value_string gsm_a_dtap_msg_gmm_strings[];
|
||||
WS_DLL_PUBLIC const value_string gsm_a_dtap_msg_sms_strings[];
|
||||
WS_DLL_PUBLIC const value_string gsm_a_dtap_msg_sm_strings[];
|
||||
WS_DLL_PUBLIC const value_string gsm_a_dtap_msg_ss_strings[];
|
||||
WS_DLL_PUBLIC const value_string gsm_a_dtap_msg_tp_strings[];
|
||||
WS_DLL_PUBLIC const value_string gsm_a_rr_short_pd_msg_strings[];
|
||||
WS_DLL_PUBLIC const gchar *gsm_a_pd_str[];
|
||||
|
||||
extern const value_string gsm_a_sm_qos_del_of_err_sdu_vals[];
|
||||
extern const value_string gsm_a_sm_qos_traffic_cls_vals[];
|
||||
|
|
|
@ -34,6 +34,8 @@
|
|||
#ifndef PACKET_GSM_MAP_H
|
||||
#define PACKET_GSM_MAP_H
|
||||
|
||||
#include "ws_symbol_export.h"
|
||||
|
||||
/* Defines for the GSM MAP taps */
|
||||
#define GSM_MAP_MAX_NUM_OPR_CODES 256
|
||||
|
||||
|
@ -51,7 +53,7 @@ typedef struct _gsm_map_tap_rec_t {
|
|||
#define SMS_ENCODING_7BIT_LANG 4
|
||||
#define SMS_ENCODING_UCS2_LANG 5
|
||||
|
||||
WS_VAR_IMPORT const value_string gsm_map_opr_code_strings[];
|
||||
WS_DLL_PUBLIC const value_string gsm_map_opr_code_strings[];
|
||||
const char* unpack_digits(tvbuff_t *tvb, int offset);
|
||||
|
||||
extern const value_string ssCode_vals[];
|
||||
|
@ -98,14 +100,14 @@ extern const value_string gsm_map_BasicServiceCode_vals[];
|
|||
extern const value_string gsm_map_Ext_BasicServiceCode_vals[];
|
||||
int dissect_gsm_map_TBCD_STRING(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_);
|
||||
int dissect_gsm_map_AddressString(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_);
|
||||
int dissect_gsm_map_ISDN_AddressString(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_);
|
||||
WS_DLL_PUBLIC int dissect_gsm_map_ISDN_AddressString(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_);
|
||||
int dissect_gsm_map_ISDN_SubaddressString(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_);
|
||||
int dissect_gsm_map_ExternalSignalInfo(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_);
|
||||
int dissect_gsm_map_AlertingPattern(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_);
|
||||
int dissect_gsm_map_GSN_Address(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_);
|
||||
int dissect_gsm_map_IMSI(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_);
|
||||
WS_DLL_PUBLIC int dissect_gsm_map_IMSI(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_);
|
||||
int dissect_gsm_map_IMEI(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_);
|
||||
int dissect_gsm_map_GlobalCellId(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_);
|
||||
WS_DLL_PUBLIC int dissect_gsm_map_GlobalCellId(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_);
|
||||
int dissect_gsm_map_NetworkResource(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_);
|
||||
int dissect_gsm_map_NAEA_CIC(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_);
|
||||
int dissect_gsm_map_LCSClientExternalID(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_);
|
||||
|
@ -209,7 +211,7 @@ int dissect_gsm_map_lcs_SupportedGADShapes(gboolean implicit_tag _U_, tvbuff_t *
|
|||
int dissect_gsm_map_lcs_LCS_ReferenceNumber(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_);
|
||||
int dissect_gsm_map_lcs_LCSCodeword(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_);
|
||||
int dissect_gsm_map_lcs_AreaEventInfo(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_);
|
||||
int dissect_gsm_map_lcs_Ext_GeographicalInformation(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_);
|
||||
WS_DLL_PUBLIC int dissect_gsm_map_lcs_Ext_GeographicalInformation(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_);
|
||||
int dissect_gsm_map_lcs_VelocityEstimate(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_);
|
||||
int dissect_gsm_map_lcs_Add_GeographicalInformation(gboolean implicit_tag _U_, tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_);
|
||||
int dissect_gsm_map_lcs_LCS_ClientID_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U_, proto_tree *tree _U_, void *data _U_);
|
||||
|
@ -270,7 +272,7 @@ int dissect_gsm_ss_LocationMethod(gboolean implicit_tag _U_, tvbuff_t *tvb _U_,
|
|||
|
||||
|
||||
/*--- End of included file: packet-gsm_map-exp.h ---*/
|
||||
#line 58 "../../asn1/gsm_map/packet-gsm_map-template.h"
|
||||
#line 60 "../../asn1/gsm_map/packet-gsm_map-template.h"
|
||||
|
||||
|
||||
#endif /* PACKET_GSM_MAP_H */
|
||||
|
|
|
@ -90,11 +90,11 @@ typedef struct _h225_packet_info {
|
|||
|
||||
/*--- Included file: packet-h225-exp.h ---*/
|
||||
#line 1 "../../asn1/h225/packet-h225-exp.h"
|
||||
WS_VAR_IMPORT const value_string T_h323_message_body_vals[];
|
||||
WS_VAR_IMPORT const value_string h225_ReleaseCompleteReason_vals[];
|
||||
WS_DLL_PUBLIC const value_string T_h323_message_body_vals[];
|
||||
WS_DLL_PUBLIC const value_string h225_ReleaseCompleteReason_vals[];
|
||||
extern const value_string h225_PresentationIndicator_vals[];
|
||||
extern const value_string h225_ScreeningIndicator_vals[];
|
||||
WS_VAR_IMPORT const value_string FacilityReason_vals[];
|
||||
WS_DLL_PUBLIC const value_string FacilityReason_vals[];
|
||||
extern const value_string h225_TransportAddress_vals[];
|
||||
extern const value_string h225_SupportedProtocols_vals[];
|
||||
extern const value_string AliasAddress_vals[];
|
||||
|
@ -104,19 +104,19 @@ extern const value_string h225_PrivateTypeOfNumber_vals[];
|
|||
extern const value_string h225_IntegrityMechanism_vals[];
|
||||
extern const value_string h225_CryptoH323Token_vals[];
|
||||
extern const value_string h225_GenericIdentifier_vals[];
|
||||
WS_VAR_IMPORT const value_string h225_RasMessage_vals[];
|
||||
WS_VAR_IMPORT const value_string GatekeeperRejectReason_vals[];
|
||||
WS_VAR_IMPORT const value_string RegistrationRejectReason_vals[];
|
||||
WS_VAR_IMPORT const value_string UnregRequestReason_vals[];
|
||||
WS_VAR_IMPORT const value_string UnregRejectReason_vals[];
|
||||
WS_DLL_PUBLIC const value_string h225_RasMessage_vals[];
|
||||
WS_DLL_PUBLIC const value_string GatekeeperRejectReason_vals[];
|
||||
WS_DLL_PUBLIC const value_string RegistrationRejectReason_vals[];
|
||||
WS_DLL_PUBLIC const value_string UnregRequestReason_vals[];
|
||||
WS_DLL_PUBLIC const value_string UnregRejectReason_vals[];
|
||||
extern const value_string h225_TransportQOS_vals[];
|
||||
WS_VAR_IMPORT const value_string AdmissionRejectReason_vals[];
|
||||
WS_VAR_IMPORT const value_string BandRejectReason_vals[];
|
||||
WS_VAR_IMPORT const value_string LocationRejectReason_vals[];
|
||||
WS_VAR_IMPORT const value_string DisengageReason_vals[];
|
||||
WS_VAR_IMPORT const value_string DisengageRejectReason_vals[];
|
||||
WS_VAR_IMPORT const value_string InfoRequestNakReason_vals[];
|
||||
int dissect_h225_ReleaseCompleteReason(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_);
|
||||
WS_DLL_PUBLIC const value_string AdmissionRejectReason_vals[];
|
||||
WS_DLL_PUBLIC const value_string BandRejectReason_vals[];
|
||||
WS_DLL_PUBLIC const value_string LocationRejectReason_vals[];
|
||||
WS_DLL_PUBLIC const value_string DisengageReason_vals[];
|
||||
WS_DLL_PUBLIC const value_string DisengageRejectReason_vals[];
|
||||
WS_DLL_PUBLIC const value_string InfoRequestNakReason_vals[];
|
||||
WS_DLL_PUBLIC int dissect_h225_ReleaseCompleteReason(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_);
|
||||
int dissect_h225_PresentationIndicator(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_);
|
||||
int dissect_h225_ScreeningIndicator(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_);
|
||||
int dissect_h225_TransportAddress(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_);
|
||||
|
@ -146,7 +146,7 @@ int dissect_h225_GenericData(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx
|
|||
int dissect_h225_GenericIdentifier(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_);
|
||||
int dissect_h225_FeatureSet(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_);
|
||||
int dissect_h225_TransportChannelInfo(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_);
|
||||
int dissect_h225_RasMessage(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_);
|
||||
WS_DLL_PUBLIC int dissect_h225_RasMessage(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_);
|
||||
int dissect_h225_TransportQOS(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_);
|
||||
int dissect_h225_ExtendedAliasAddress_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U_, proto_tree *tree _U_, void *data _U_);
|
||||
|
||||
|
|
|
@ -33,6 +33,9 @@
|
|||
|
||||
#ifndef PACKET_H245_H
|
||||
#define PACKET_H245_H
|
||||
|
||||
#include "ws_symbol_export.h"
|
||||
|
||||
typedef enum _h245_msg_type {
|
||||
H245_TermCapSet,
|
||||
H245_TermCapSetAck,
|
||||
|
@ -124,10 +127,10 @@ struct _h223_mux_element {
|
|||
#include <epan/dissectors/packet-per.h>
|
||||
|
||||
typedef void (*h223_set_mc_handle_t) ( packet_info* pinfo, guint8 mc, h223_mux_element* me );
|
||||
extern void h245_set_h223_set_mc_handle( h223_set_mc_handle_t handle );
|
||||
WS_DLL_PUBLIC void h245_set_h223_set_mc_handle( h223_set_mc_handle_t handle );
|
||||
|
||||
typedef void (*h223_add_lc_handle_t) ( packet_info* pinfo, guint16 lc, h223_lc_params* params );
|
||||
extern void h245_set_h223_add_lc_handle( h223_add_lc_handle_t handle );
|
||||
WS_DLL_PUBLIC void h245_set_h223_add_lc_handle( h223_add_lc_handle_t handle );
|
||||
|
||||
|
||||
/*--- Included file: packet-h245-exp.h ---*/
|
||||
|
@ -138,7 +141,7 @@ extern const value_string h245_TransportAddress_vals[];
|
|||
extern const value_string h245_UnicastAddress_vals[];
|
||||
extern const value_string h245_MulticastAddress_vals[];
|
||||
int dissect_h245_Capability(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_);
|
||||
int dissect_h245_H223Capability(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_);
|
||||
WS_DLL_PUBLIC int dissect_h245_H223Capability(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_);
|
||||
int dissect_h245_QOSCapability(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_);
|
||||
int dissect_h245_DataProtocolCapability(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_);
|
||||
int dissect_h245_T38FaxProfile(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_);
|
||||
|
@ -149,7 +152,7 @@ int dissect_h245_UnicastAddress(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *a
|
|||
int dissect_h245_MulticastAddress(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_);
|
||||
|
||||
/*--- End of included file: packet-h245-exp.h ---*/
|
||||
#line 125 "../../asn1/h245/packet-h245-template.h"
|
||||
#line 128 "../../asn1/h245/packet-h245-template.h"
|
||||
void dissect_h245_FastStart_OLC(tvbuff_t *tvb, packet_info *pinfo _U_, proto_tree *tree, char *codec_str);
|
||||
|
||||
|
||||
|
|
|
@ -36,6 +36,7 @@
|
|||
#ifndef PACKET_H248_H
|
||||
|
||||
#include <epan/gcp.h>
|
||||
#include "ws_symbol_export.h"
|
||||
/*#include "packet-h248-exp.h"*/
|
||||
|
||||
typedef struct _h248_curr_info_t h248_curr_info_t;
|
||||
|
@ -44,7 +45,7 @@ typedef void (*h248_pkg_param_dissector_t)(proto_tree* tree, tvbuff_t* tvb, pack
|
|||
|
||||
extern void h248_param_bytes_item(proto_tree*, tvbuff_t*, packet_info* , int, h248_curr_info_t*,void* ignored);
|
||||
extern void h248_param_uint_item(proto_tree*, tvbuff_t*, packet_info* , int, h248_curr_info_t*,void* ignored);
|
||||
extern void h248_param_ber_integer(proto_tree*, tvbuff_t*, packet_info* , int, h248_curr_info_t*,void* ignored);
|
||||
WS_DLL_PUBLIC void h248_param_ber_integer(proto_tree*, tvbuff_t*, packet_info* , int, h248_curr_info_t*,void* ignored);
|
||||
extern void h248_param_ber_octetstring(proto_tree*, tvbuff_t*, packet_info* , int, h248_curr_info_t*,void* ignored);
|
||||
extern void h248_param_ber_boolean(proto_tree*, tvbuff_t*, packet_info* , int, h248_curr_info_t*,void* ignored);
|
||||
extern void external_dissector(proto_tree*, tvbuff_t*, packet_info* , int, h248_curr_info_t*,void* dissector_handle);
|
||||
|
@ -120,6 +121,7 @@ struct _h248_curr_info_t {
|
|||
const h248_pkg_param_t* par;
|
||||
};
|
||||
|
||||
WS_DLL_PUBLIC
|
||||
void h248_register_package(const h248_package_t* pkg, pkg_reg_action reg_action);
|
||||
|
||||
#endif /* PACKET_H248_H */
|
||||
|
|
|
@ -25,8 +25,11 @@
|
|||
#define __PACKET_HTTP_H__
|
||||
|
||||
#include <epan/packet.h>
|
||||
#include "ws_symbol_export.h"
|
||||
|
||||
WS_DLL_PUBLIC
|
||||
void http_dissector_add(guint32 port, dissector_handle_t handle);
|
||||
WS_DLL_PUBLIC
|
||||
void http_port_add(guint32 port);
|
||||
|
||||
/* Used for HTTP statistics */
|
||||
|
|
|
@ -24,6 +24,9 @@
|
|||
#ifndef __PACKET_I2C_H__
|
||||
#define __PACKET_I2C_H__
|
||||
|
||||
#include "ws_symbol_export.h"
|
||||
|
||||
WS_DLL_PUBLIC
|
||||
void capture_i2c(union wtap_pseudo_header *, packet_counts *);
|
||||
|
||||
#endif
|
||||
|
|
|
@ -25,6 +25,12 @@
|
|||
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA.
|
||||
*/
|
||||
|
||||
#ifndef __PACKET_IEEE80211_RADIOTAP_H__
|
||||
#define __PACKET_IEEE80211_RADIOTAP_H__
|
||||
|
||||
#include "ws_symbol_export.h"
|
||||
|
||||
WS_DLL_PUBLIC
|
||||
void capture_radiotap(const guchar *pd, int offset, int len, packet_counts *ld);
|
||||
void proto_register_radiotap(void);
|
||||
void proto_reg_handoff_radiotap(void);
|
||||
|
@ -38,3 +44,5 @@ struct _radiotap_info {
|
|||
guint32 flags;
|
||||
guint64 tsft;
|
||||
};
|
||||
|
||||
#endif
|
||||
|
|
|
@ -27,12 +27,17 @@
|
|||
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA.
|
||||
*/
|
||||
|
||||
#include "ws_symbol_export.h"
|
||||
|
||||
WS_DLL_PUBLIC
|
||||
void capture_ieee80211 (const guchar *, int, int, packet_counts *);
|
||||
void capture_ieee80211_datapad (const guchar *, int, int, packet_counts *);
|
||||
void capture_ieee80211_fixed (const guchar *, int, int, packet_counts *);
|
||||
void capture_ieee80211_ht (const guchar *, int, int, packet_counts *);
|
||||
|
||||
WS_DLL_PUBLIC
|
||||
void capture_prism(const guchar *, int, int, packet_counts *);
|
||||
WS_DLL_PUBLIC
|
||||
void capture_wlancap(const guchar *, int, int, packet_counts *);
|
||||
|
||||
void ieee_80211_add_tagged_parameters (tvbuff_t * tvb, int offset,
|
||||
|
|
|
@ -24,9 +24,12 @@
|
|||
#ifndef __PACKET_IEEE802A_H__
|
||||
#define __PACKET_IEEE802A_H__
|
||||
|
||||
#include "ws_symbol_export.h"
|
||||
|
||||
/*
|
||||
* Add an entry for a new OUI.
|
||||
*/
|
||||
WS_DLL_PUBLIC
|
||||
void ieee802a_add_oui(guint32, const char *, const char *, hf_register_info *);
|
||||
|
||||
#endif
|
||||
|
|
|
@ -26,6 +26,8 @@
|
|||
#ifndef __PACKET_IP_H__
|
||||
#define __PACKET_IP_H__
|
||||
|
||||
#include "ws_symbol_export.h"
|
||||
|
||||
typedef struct _ws_ip
|
||||
{
|
||||
guint8 ip_v_hl; /* combines ip_v and ip_hl */
|
||||
|
@ -44,6 +46,6 @@ void capture_ip(const guchar *, int, int, packet_counts *);
|
|||
guint16 ip_checksum(const guint8 *ptr, int len);
|
||||
|
||||
/* Export the DSCP extended value-string table for other protocols */
|
||||
WS_VAR_IMPORT value_string_ext dscp_vals_ext;
|
||||
WS_DLL_PUBLIC value_string_ext dscp_vals_ext;
|
||||
|
||||
#endif
|
||||
|
|
|
@ -24,6 +24,9 @@
|
|||
#ifndef __PACKET_IPFC_H__
|
||||
#define __PACKET_IPFC_H__
|
||||
|
||||
#include "ws_symbol_export.h"
|
||||
|
||||
WS_DLL_PUBLIC
|
||||
void capture_ipfc(const guchar *, int, packet_counts *);
|
||||
|
||||
#endif
|
||||
|
|
|
@ -27,6 +27,8 @@
|
|||
#ifndef PACKET_ISUP_H
|
||||
#define PACKET_ISUP_H
|
||||
|
||||
#include "ws_symbol_export.h"
|
||||
|
||||
#define ISUP_MAX_NUM_MESSAGE_TYPES 256
|
||||
|
||||
typedef struct _isup_tap_rec_t {
|
||||
|
@ -43,8 +45,8 @@ typedef struct _isup_tap_rec_t {
|
|||
* without having to duplicate it. With MSVC and a
|
||||
* libwireshark.dll, we need a special declaration.
|
||||
*/
|
||||
WS_VAR_IMPORT value_string_ext isup_message_type_value_acro_ext;
|
||||
WS_VAR_IMPORT value_string_ext q850_cause_code_vals_ext;
|
||||
WS_DLL_PUBLIC value_string_ext isup_message_type_value_acro_ext;
|
||||
WS_DLL_PUBLIC value_string_ext q850_cause_code_vals_ext;
|
||||
/*
|
||||
* Export some definitions and value_string tables for other dissectors
|
||||
*/
|
||||
|
@ -165,16 +167,21 @@ extern value_string_ext isup_transmission_medium_requirement_value_ext;
|
|||
extern value_string_ext bearer_network_connection_characteristics_vals_ext;
|
||||
extern value_string_ext x213_afi_value_ext;
|
||||
|
||||
WS_VAR_IMPORT value_string_ext isup_calling_partys_category_value_ext;
|
||||
WS_DLL_PUBLIC value_string_ext isup_calling_partys_category_value_ext;
|
||||
/*
|
||||
* Export dissection of some parameters
|
||||
*/
|
||||
void dissect_nsap(tvbuff_t *parameter_tvb,gint offset,gint len, proto_tree *parameter_tree);
|
||||
WS_DLL_PUBLIC
|
||||
void dissect_isup_called_party_number_parameter(tvbuff_t *parameter_tvb, proto_tree *parameter_tree, proto_item *parameter_item);
|
||||
WS_DLL_PUBLIC
|
||||
void dissect_isup_calling_party_number_parameter(tvbuff_t *parameter_tvb, proto_tree *parameter_tree, proto_item *parameter_item);
|
||||
void dissect_isup_cause_indicators_parameter(tvbuff_t *parameter_tvb, proto_tree *parameter_tree, proto_item *parameter_item);
|
||||
WS_DLL_PUBLIC
|
||||
void dissect_isup_redirection_information_parameter(tvbuff_t *parameter_tvb, proto_tree *parameter_tree, proto_item *parameter_item);
|
||||
WS_DLL_PUBLIC
|
||||
void dissect_isup_original_called_number_parameter(tvbuff_t *parameter_tvb, proto_tree *parameter_tree, proto_item *parameter_item);
|
||||
WS_DLL_PUBLIC
|
||||
void dissect_isup_redirecting_number_parameter(tvbuff_t *parameter_tvb, proto_tree *parameter_tree, proto_item *parameter_item);
|
||||
|
||||
void dissect_isup_location_number_parameter(tvbuff_t *parameter_tvb, proto_tree *parameter_tree, proto_item *parameter_item);
|
||||
|
|
Some files were not shown because too many files have changed in this diff Show More
Loading…
Reference in New Issue