Wireshark 4.5.0
The Wireshark network protocol analyzer
Loading...
Searching...
No Matches
address_types.h
Go to the documentation of this file.
1
11#ifndef __ADDRESS_TYPES_H__
12#define __ADDRESS_TYPES_H__
13
14#include "address.h"
15
16#ifdef __cplusplus
17extern "C" {
18#endif /* __cplusplus */
19
20typedef int (*AddrValueToString)(const address* addr, char *buf, int buf_len);
21typedef int (*AddrValueToStringLen)(const address* addr);
22typedef unsigned (*AddrValueToByte)(const address* addr, uint8_t *buf, unsigned buf_len);
23typedef int (*AddrFixedLen)(void);
24typedef const char* (*AddrColFilterString)(const address* addr, bool src);
25typedef int (*AddrNameResolutionLen)(void);
26typedef const char* (*AddrNameResolutionToString)(const address* addr);
27
28struct _address_type_t;
29typedef struct _address_type_t address_type_t;
30
31WS_DLL_PUBLIC int address_type_dissector_register(const char* name, const char* pretty_name,
32 AddrValueToString to_str_func, AddrValueToStringLen str_len_func,
33 AddrValueToByte to_bytes_func, AddrColFilterString col_filter_str_func, AddrFixedLen fixed_len_func,
34 AddrNameResolutionToString name_res_str_func, AddrNameResolutionLen name_res_len_func);
35
36WS_DLL_PUBLIC int address_type_get_by_name(const char* name);
37
38int ipv4_to_str(const address* addr, char *buf, int buf_len);
39
40void address_types_initialize(void);
41
42/* Address type functions used by multiple (dissector) address types */
43int none_addr_to_str(const address* addr, char *buf, int buf_len);
44int none_addr_str_len(const address* addr);
45int none_addr_len(void);
46
47int ether_to_str(const address* addr, char *buf, int buf_len);
48int ether_str_len(const address* addr);
49int ether_len(void);
50const char* ether_name_resolution_str(const address* addr);
51int ether_name_resolution_len(void);
52
53
54
55/* XXX - Temporary? Here at least until all of the address type handling is finalized
56 * Otherwise should be folded into address_types.c or just be handled with function pointers
57 */
58const char* address_type_column_filter_string(const address* addr, bool src);
59
60
61#ifdef __cplusplus
62}
63#endif /* __cplusplus */
64
65#endif /* __ADDRESS_TYPES_H__ */
66
67/*
68 * Editor modelines - https://www.wireshark.org/tools/modelines.html
69 *
70 * Local variables:
71 * c-basic-offset: 4
72 * tab-width: 8
73 * indent-tabs-mode: nil
74 * End:
75 *
76 * vi: set shiftwidth=4 tabstop=8 expandtab:
77 * :indentSize=4:tabSize=8:noTabs=true:
78 */
Definition address_types.c:26
Definition address.h:56