|
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.