Wireshark 4.5.0
The Wireshark network protocol analyzer
|
#include <epan/address.h>
#include <epan/tvbuff.h>
#include <wsutil/inet_cidr.h>
#include <epan/to_str.h>
#include <wiretap/wtap.h>
#include "ws_symbol_export.h"
Go to the source code of this file.
Classes | |
struct | _e_addr_resolve |
Flags to control name resolution. More... | |
struct | serv_port |
struct | _resolved_name |
Macros | |
#define | MAXNAMELEN 64 /* max name length (most names: DNS labels, services, eth) */ |
#define | MAXVLANNAMELEN 128 /* max vlan name length */ |
#define | MAXDNSNAMELEN 256 /* max total length of a domain name in the DNS */ |
#define | BASE_ENTERPRISES BASE_CUSTOM |
#define | STRINGS_ENTERPRISES CF_FUNC(enterprises_base_custom) |
#define | ADDR_RESOLV_MACADDR(at) (((at)->type == AT_ETHER) || ((at)->type == AT_EUI64)) |
#define | ADDR_RESOLV_NETADDR(at) (((at)->type == AT_IPv4) || ((at)->type == AT_IPv6) || ((at)->type == AT_IPX)) |
#define | TRIED_RESOLVE_ADDRESS (1U<<0) /* name resolution is being/has been tried */ |
#define | NAME_RESOLVED (1U<<1) /* the name field contains a host name, not a printable address */ |
#define | RESOLVED_ADDRESS_USED (1U<<2) /* a get_hostname* call returned the host name */ |
#define | STATIC_HOSTNAME (1U<<3) /* do not update entries from hosts file with DNS responses */ |
#define | NAME_RESOLVED_PREFIX (1U<<4) /* name was generated from a prefix (e.g., OUI) instead of the entire address */ |
#define | TRIED_OR_RESOLVED_MASK (TRIED_RESOLVE_ADDRESS | NAME_RESOLVED) |
#define | USED_AND_RESOLVED_MASK (NAME_RESOLVED | RESOLVED_ADDRESS_USED) |
Typedefs | |
typedef struct _e_addr_resolve | e_addr_resolve |
Flags to control name resolution. | |
typedef struct hashether | hashether_t |
typedef struct hasheui64 | hasheui64_t |
typedef struct hashwka | hashwka_t |
typedef struct hashmanuf | hashmanuf_t |
typedef struct serv_port | serv_port_t |
typedef struct _resolved_name | resolved_name_t |
Functions | |
WS_DLL_PUBLIC hashipv4_t * | new_ipv4 (const unsigned addr) |
WS_DLL_PUBLIC bool | fill_dummy_ip4 (const unsigned addr, hashipv4_t *volatile tp) |
WS_DLL_PUBLIC char * | udp_port_to_display (wmem_allocator_t *allocator, unsigned port) |
WS_DLL_PUBLIC char * | tcp_port_to_display (wmem_allocator_t *allocator, unsigned port) |
char * | dccp_port_to_display (wmem_allocator_t *allocator, unsigned port) |
WS_DLL_PUBLIC char * | sctp_port_to_display (wmem_allocator_t *allocator, unsigned port) |
WS_DLL_PUBLIC const char * | serv_name_lookup (port_type proto, unsigned port) |
WS_DLL_PUBLIC const char * | enterprises_lookup (uint32_t value, const char *unknown_str) |
WS_DLL_PUBLIC const char * | try_enterprises_lookup (uint32_t value) |
WS_DLL_PUBLIC void | enterprises_base_custom (char *buf, uint32_t value) |
WS_DLL_PUBLIC const char * | try_serv_name_lookup (port_type proto, unsigned port) |
WS_DLL_PUBLIC char * | port_with_resolution_to_str (wmem_allocator_t *scope, port_type proto, unsigned port) |
WS_DLL_PUBLIC int | port_with_resolution_to_str_buf (char *buf, unsigned long buf_size, port_type proto, unsigned port) |
void | addr_resolve_pref_init (struct pref_module *nameres) |
void | addr_resolve_pref_apply (void) |
WS_DLL_PUBLIC void | disable_name_resolution (void) |
WS_DLL_PUBLIC bool | host_name_lookup_process (void) |
WS_DLL_PUBLIC const char * | get_hostname (const unsigned addr) |
WS_DLL_PUBLIC char * | get_hostname_wmem (wmem_allocator_t *allocator, const unsigned addr) |
WS_DLL_PUBLIC const char * | get_hostname6 (const ws_in6_addr *ad) |
WS_DLL_PUBLIC char * | get_hostname6_wmem (wmem_allocator_t *allocator, const ws_in6_addr *ad) |
WS_DLL_PUBLIC const char * | get_ether_name (const uint8_t *addr) |
const char * | get_hostname_ss7pc (const uint8_t ni, const uint32_t pc) |
void | fill_unresolved_ss7pc (const char *pc_addr, const uint8_t ni, const uint32_t pc) |
WS_DLL_PUBLIC const char * | tvb_get_ether_name (tvbuff_t *tvb, int offset) |
const char * | get_ether_name_if_known (const uint8_t *addr) |
const char * | get_manuf_name (const uint8_t *addr, size_t size) |
WS_DLL_PUBLIC const char * | get_manuf_name_if_known (const uint8_t *addr, size_t size) |
const char * | uint_get_manuf_name_if_known (const uint32_t oid) |
WS_DLL_PUBLIC const char * | tvb_get_manuf_name (tvbuff_t *tvb, int offset) |
WS_DLL_PUBLIC const char * | tvb_get_manuf_name_if_known (tvbuff_t *tvb, int offset) |
const char * | get_eui64_name (const uint8_t *addr) |
char * | eui64_to_display (wmem_allocator_t *allocator, const uint64_t addr) |
char * | get_ipxnet_name (wmem_allocator_t *allocator, const uint32_t addr) |
char * | get_vlan_name (wmem_allocator_t *allocator, const uint16_t id) |
WS_DLL_PUBLIC unsigned | get_hash_ether_status (hashether_t *ether) |
WS_DLL_PUBLIC bool | get_hash_ether_used (hashether_t *ether) |
WS_DLL_PUBLIC char * | get_hash_ether_hexaddr (hashether_t *ether) |
WS_DLL_PUBLIC char * | get_hash_ether_resolved_name (hashether_t *ether) |
WS_DLL_PUBLIC bool | get_hash_manuf_used (hashmanuf_t *manuf) |
WS_DLL_PUBLIC char * | get_hash_manuf_resolved_name (hashmanuf_t *manuf) |
WS_DLL_PUBLIC bool | get_hash_wka_used (hashwka_t *wka) |
WS_DLL_PUBLIC char * | get_hash_wka_resolved_name (hashwka_t *wka) |
WS_DLL_PUBLIC void | add_ipv4_name (const unsigned addr, const char *name, const bool static_entry) |
WS_DLL_PUBLIC void | add_ipv6_name (const ws_in6_addr *addr, const char *name, const bool static_entry) |
WS_DLL_PUBLIC bool | add_hosts_file (const char *hosts_file) |
WS_DLL_PUBLIC bool | add_ip_name_from_string (const char *addr, const char *name) |
WS_DLL_PUBLIC resolved_name_t * | get_edited_resolved_name (const char *addr) |
WS_DLL_PUBLIC addrinfo_lists_t * | get_addrinfo_list (void) |
void | add_ether_byip (const unsigned ip, const uint8_t *eth) |
WS_DLL_PUBLIC bool | get_host_ipaddr (const char *host, uint32_t *addrp) |
WS_DLL_PUBLIC bool | get_host_ipaddr6 (const char *host, ws_in6_addr *addrp) |
WS_DLL_PUBLIC wmem_map_t * | get_manuf_hashtable (void) |
WS_DLL_PUBLIC wmem_map_t * | get_wka_hashtable (void) |
WS_DLL_PUBLIC wmem_map_t * | get_eth_hashtable (void) |
WS_DLL_PUBLIC wmem_map_t * | get_serv_port_hashtable (void) |
WS_DLL_PUBLIC wmem_map_t * | get_ipxnet_hash_table (void) |
WS_DLL_PUBLIC wmem_map_t * | get_vlan_hash_table (void) |
WS_DLL_PUBLIC wmem_map_t * | get_ipv4_hash_table (void) |
WS_DLL_PUBLIC wmem_map_t * | get_ipv6_hash_table (void) |
WS_DLL_PUBLIC void | set_resolution_synchrony (bool synchronous) |
WS_DLL_LOCAL void | name_resolver_init (void) |
WS_DLL_LOCAL void | host_name_lookup_reset (void) |
WS_DLL_LOCAL void | addr_resolv_init (void) |
WS_DLL_LOCAL void | addr_resolv_cleanup (void) |
WS_DLL_PUBLIC bool | str_to_ip (const char *str, void *dst) |
WS_DLL_PUBLIC bool | str_to_ip6 (const char *str, void *dst) |
WS_DLL_LOCAL bool | str_to_eth (const char *str, char *eth_bytes) |
WS_DLL_LOCAL unsigned | ipv6_oat_hash (const void *key) |
WS_DLL_LOCAL gboolean | ipv6_equal (const void *v1, const void *v2) |
Variables | |
WS_DLL_PUBLIC e_addr_resolve | gbl_resolv_flags |
char * | g_ethers_path |
char * | g_ipxnets_path |
char * | g_pethers_path |
char * | g_pipxnets_path |
Definitions for network object lookup
Laurent Deniel laure.nosp@m.nt.d.nosp@m.eniel.nosp@m.@fre.nosp@m.e.fr
Wireshark - Network traffic analyzer By Gerald Combs geral.nosp@m.d@wi.nosp@m.resha.nosp@m.rk.o.nosp@m.rg Copyright 1998 Gerald Combs
SPDX-License-Identifier: GPL-2.0-or-later
WS_DLL_PUBLIC bool add_hosts_file | ( | const char * | hosts_file | ) |
Add an additional "hosts" file for IPv4 and IPv6 name resolution.
The file can be added before host_name_lookup_init() is called and will be re-read each time host_name_lookup_init() is called.
hosts_file | Absolute path to the hosts file. |
WS_DLL_PUBLIC addrinfo_lists_t * get_addrinfo_list | ( | void | ) |
Get lists of host name to address mappings we know about.
The struct contains two g_lists one with hashipv4_t entries and one with hashipv6_t entries.
WS_DLL_PUBLIC bool get_host_ipaddr | ( | const char * | host, |
uint32_t * | addrp | ||
) |
Translates a string representing a hostname or dotted-decimal IPv4 address into a numeric IPv4 address value in network byte order. If compiled with c-ares, the request will wait a maximum of 250ms for the request to finish. Otherwise the wait time will be system-dependent, usually much longer. Immediately returns false for hostnames if network name resolution is disabled.
[in] | host | The hostname. |
[out] | addrp | The numeric IPv4 address in network byte order. |
WS_DLL_PUBLIC bool get_host_ipaddr6 | ( | const char * | host, |
ws_in6_addr * | addrp | ||
) |
Translates a string representing a hostname or colon-hex IPv6 address into a numeric IPv6 address value in network byte order. If compiled with c-ares, the request will wait a maximum of 250ms for the request to finish. Otherwise the wait time will be system-dependent, usually much longer. Immediately returns false for hostnames if network name resolution is disabled.
[in] | host | The hostname. |
[out] | addrp | The numeric IPv6 address in network byte order. |
WS_DLL_PUBLIC bool host_name_lookup_process | ( | void | ) |
If we're using c-ares process outstanding host name lookups. This is called from a GLIB timeout in Wireshark and before processing each packet in the first pass of two-pass TShark.