.. Generated automatically by doc/tools/makerst.py in Godot's source tree. .. DO NOT EDIT THIS FILE, but the IP.xml source instead. .. The source is found in doc/classes or modules//doc_classes. .. _class_IP: IP == **Inherits:** :ref:`Object` **Inherited By:** :ref:`IP_Unix` **Category:** Core Brief Description ----------------- Internet protocol (IP) support functions like DNS resolution. Member Functions ---------------- +------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------+ | void | :ref:`clear_cache` **(** :ref:`String` hostname="" **)** | +------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------+ | void | :ref:`erase_resolve_item` **(** :ref:`int` id **)** | +------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------+ | :ref:`Array` | :ref:`get_local_addresses` **(** **)** const | +------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------+ | :ref:`String` | :ref:`get_resolve_item_address` **(** :ref:`int` id **)** const | +------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------+ | :ref:`int` | :ref:`get_resolve_item_status` **(** :ref:`int` id **)** const | +------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------+ | :ref:`String` | :ref:`resolve_hostname` **(** :ref:`String` host, :ref:`int` ip_type=3 **)** | +------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------+ | :ref:`int` | :ref:`resolve_hostname_queue_item` **(** :ref:`String` host, :ref:`int` ip_type=3 **)** | +------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------+ Numeric Constants ----------------- - **RESOLVER_MAX_QUERIES** = **32** --- Maximum number of concurrent DNS resolver queries allowed, ``RESOLVER_INVALID_ID`` is returned if exceeded. - **RESOLVER_INVALID_ID** = **-1** --- Invalid ID constant. Returned if ``RESOLVER_MAX_QUERIES`` is exceeded. Enums ----- .. _enum_IP_ResolverStatus: enum **ResolverStatus** - **RESOLVER_STATUS_NONE** = **0** --- DNS hostname resolver status: No status. - **RESOLVER_STATUS_WAITING** = **1** --- DNS hostname resolver status: Waiting. - **RESOLVER_STATUS_DONE** = **2** --- DNS hostname resolver status: Done. - **RESOLVER_STATUS_ERROR** = **3** --- DNS hostname resolver status: Error. .. _enum_IP_Type: enum **Type** - **TYPE_NONE** = **0** --- Address type: None. - **TYPE_IPV4** = **1** --- Address type: Internet protocol version 4 (IPv4). - **TYPE_IPV6** = **2** --- Address type: Internet protocol version 6 (IPv6). - **TYPE_ANY** = **3** --- Address type: Any. Description ----------- IP contains support functions for the Internet Protocol (IP). TCP/IP support is in different classes (see :ref:`StreamPeerTCP` and :ref:`TCP_Server`). IP provides DNS hostname resolution support, both blocking and threaded. Member Function Description --------------------------- .. _class_IP_clear_cache: - void **clear_cache** **(** :ref:`String` hostname="" **)** Removes all of a "hostname"'s cached references. If no "hostname" is given then all cached IP addresses are removed. .. _class_IP_erase_resolve_item: - void **erase_resolve_item** **(** :ref:`int` id **)** Removes a given item "id" from the queue. This should be used to free a queue after it has completed to enable more queries to happen. .. _class_IP_get_local_addresses: - :ref:`Array` **get_local_addresses** **(** **)** const Returns all of the user's current IPv4 and IPv6 addresses as an array. .. _class_IP_get_resolve_item_address: - :ref:`String` **get_resolve_item_address** **(** :ref:`int` id **)** const Returns a queued hostname's IP address, given its queue "id". Returns an empty string on error or if resolution hasn't happened yet (see :ref:`get_resolve_item_status`). .. _class_IP_get_resolve_item_status: - :ref:`int` **get_resolve_item_status** **(** :ref:`int` id **)** const Returns a queued hostname's status as a RESOLVER_STATUS\_\* constant, given its queue "id". .. _class_IP_resolve_hostname: - :ref:`String` **resolve_hostname** **(** :ref:`String` host, :ref:`int` ip_type=3 **)** Returns a given hostname's IPv4 or IPv6 address when resolved (blocking-type method). The address type returned depends on the TYPE\_\* constant given as "ip_type". .. _class_IP_resolve_hostname_queue_item: - :ref:`int` **resolve_hostname_queue_item** **(** :ref:`String` host, :ref:`int` ip_type=3 **)** Creates a queue item to resolve a hostname to an IPv4 or IPv6 address depending on the TYPE\_\* constant given as "ip_type". Returns the queue ID if successful, or RESOLVER_INVALID_ID on error.