2
0

class_ip.rst 6.3 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118
  1. .. Generated automatically by doc/tools/makerst.py in Godot's source tree.
  2. .. DO NOT EDIT THIS FILE, but the IP.xml source instead.
  3. .. The source is found in doc/classes or modules/<name>/doc_classes.
  4. .. _class_IP:
  5. IP
  6. ==
  7. **Inherits:** :ref:`Object<class_object>`
  8. **Inherited By:** :ref:`IP_Unix<class_ip_unix>`
  9. **Category:** Core
  10. Brief Description
  11. -----------------
  12. Internet protocol (IP) support functions like DNS resolution.
  13. Member Functions
  14. ----------------
  15. +------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------+
  16. | void | :ref:`clear_cache<class_IP_clear_cache>` **(** :ref:`String<class_string>` hostname="" **)** |
  17. +------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------+
  18. | void | :ref:`erase_resolve_item<class_IP_erase_resolve_item>` **(** :ref:`int<class_int>` id **)** |
  19. +------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------+
  20. | :ref:`Array<class_array>` | :ref:`get_local_addresses<class_IP_get_local_addresses>` **(** **)** const |
  21. +------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------+
  22. | :ref:`String<class_string>` | :ref:`get_resolve_item_address<class_IP_get_resolve_item_address>` **(** :ref:`int<class_int>` id **)** const |
  23. +------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------+
  24. | :ref:`int<class_int>` | :ref:`get_resolve_item_status<class_IP_get_resolve_item_status>` **(** :ref:`int<class_int>` id **)** const |
  25. +------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------+
  26. | :ref:`String<class_string>` | :ref:`resolve_hostname<class_IP_resolve_hostname>` **(** :ref:`String<class_string>` host, :ref:`int<class_int>` ip_type=3 **)** |
  27. +------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------+
  28. | :ref:`int<class_int>` | :ref:`resolve_hostname_queue_item<class_IP_resolve_hostname_queue_item>` **(** :ref:`String<class_string>` host, :ref:`int<class_int>` ip_type=3 **)** |
  29. +------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------+
  30. Numeric Constants
  31. -----------------
  32. - **RESOLVER_MAX_QUERIES** = **32** --- Maximum number of concurrent DNS resolver queries allowed, ``RESOLVER_INVALID_ID`` is returned if exceeded.
  33. - **RESOLVER_INVALID_ID** = **-1** --- Invalid ID constant. Returned if ``RESOLVER_MAX_QUERIES`` is exceeded.
  34. Enums
  35. -----
  36. .. _enum_IP_ResolverStatus:
  37. enum **ResolverStatus**
  38. - **RESOLVER_STATUS_NONE** = **0** --- DNS hostname resolver status: No status.
  39. - **RESOLVER_STATUS_WAITING** = **1** --- DNS hostname resolver status: Waiting.
  40. - **RESOLVER_STATUS_DONE** = **2** --- DNS hostname resolver status: Done.
  41. - **RESOLVER_STATUS_ERROR** = **3** --- DNS hostname resolver status: Error.
  42. .. _enum_IP_Type:
  43. enum **Type**
  44. - **TYPE_NONE** = **0** --- Address type: None.
  45. - **TYPE_IPV4** = **1** --- Address type: Internet protocol version 4 (IPv4).
  46. - **TYPE_IPV6** = **2** --- Address type: Internet protocol version 6 (IPv6).
  47. - **TYPE_ANY** = **3** --- Address type: Any.
  48. Description
  49. -----------
  50. IP contains support functions for the Internet Protocol (IP). TCP/IP support is in different classes (see :ref:`StreamPeerTCP<class_streampeertcp>` and :ref:`TCP_Server<class_tcp_server>`). IP provides DNS hostname resolution support, both blocking and threaded.
  51. Member Function Description
  52. ---------------------------
  53. .. _class_IP_clear_cache:
  54. - void **clear_cache** **(** :ref:`String<class_string>` hostname="" **)**
  55. Removes all of a "hostname"'s cached references. If no "hostname" is given then all cached IP addresses are removed.
  56. .. _class_IP_erase_resolve_item:
  57. - void **erase_resolve_item** **(** :ref:`int<class_int>` id **)**
  58. 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.
  59. .. _class_IP_get_local_addresses:
  60. - :ref:`Array<class_array>` **get_local_addresses** **(** **)** const
  61. Returns all of the user's current IPv4 and IPv6 addresses as an array.
  62. .. _class_IP_get_resolve_item_address:
  63. - :ref:`String<class_string>` **get_resolve_item_address** **(** :ref:`int<class_int>` id **)** const
  64. 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>`).
  65. .. _class_IP_get_resolve_item_status:
  66. - :ref:`int<class_int>` **get_resolve_item_status** **(** :ref:`int<class_int>` id **)** const
  67. Returns a queued hostname's status as a RESOLVER_STATUS\_\* constant, given its queue "id".
  68. .. _class_IP_resolve_hostname:
  69. - :ref:`String<class_string>` **resolve_hostname** **(** :ref:`String<class_string>` host, :ref:`int<class_int>` ip_type=3 **)**
  70. 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".
  71. .. _class_IP_resolve_hostname_queue_item:
  72. - :ref:`int<class_int>` **resolve_hostname_queue_item** **(** :ref:`String<class_string>` host, :ref:`int<class_int>` ip_type=3 **)**
  73. 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.