blob: c8f2d3970b6c207d6fb53e116ad158ae0545805c (
plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
|
<?xml version="1.0" encoding="UTF-8" ?>
<class name="IP" inherits="Object" category="Core" version="3.1-dev">
<brief_description>
Internet protocol (IP) support functions like DNS resolution.
</brief_description>
<description>
IP contains support functions for the Internet Protocol (IP). TCP/IP support is in different classes (see [StreamPeerTCP] and [TCP_Server]). IP provides DNS hostname resolution support, both blocking and threaded.
</description>
<tutorials>
</tutorials>
<demos>
</demos>
<methods>
<method name="clear_cache">
<return type="void">
</return>
<argument index="0" name="hostname" type="String" default="""">
</argument>
<description>
Removes all of a "hostname"'s cached references. If no "hostname" is given then all cached IP addresses are removed.
</description>
</method>
<method name="erase_resolve_item">
<return type="void">
</return>
<argument index="0" name="id" type="int">
</argument>
<description>
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.
</description>
</method>
<method name="get_local_addresses" qualifiers="const">
<return type="Array">
</return>
<description>
Returns all of the user's current IPv4 and IPv6 addresses as an array.
</description>
</method>
<method name="get_resolve_item_address" qualifiers="const">
<return type="String">
</return>
<argument index="0" name="id" type="int">
</argument>
<description>
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 [method get_resolve_item_status]).
</description>
</method>
<method name="get_resolve_item_status" qualifiers="const">
<return type="int" enum="IP.ResolverStatus">
</return>
<argument index="0" name="id" type="int">
</argument>
<description>
Returns a queued hostname's status as a RESOLVER_STATUS_* constant, given its queue "id".
</description>
</method>
<method name="resolve_hostname">
<return type="String">
</return>
<argument index="0" name="host" type="String">
</argument>
<argument index="1" name="ip_type" type="int" enum="IP.Type" default="3">
</argument>
<description>
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".
</description>
</method>
<method name="resolve_hostname_queue_item">
<return type="int">
</return>
<argument index="0" name="host" type="String">
</argument>
<argument index="1" name="ip_type" type="int" enum="IP.Type" default="3">
</argument>
<description>
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.
</description>
</method>
</methods>
<constants>
<constant name="RESOLVER_STATUS_NONE" value="0" enum="ResolverStatus">
DNS hostname resolver status: No status.
</constant>
<constant name="RESOLVER_STATUS_WAITING" value="1" enum="ResolverStatus">
DNS hostname resolver status: Waiting.
</constant>
<constant name="RESOLVER_STATUS_DONE" value="2" enum="ResolverStatus">
DNS hostname resolver status: Done.
</constant>
<constant name="RESOLVER_STATUS_ERROR" value="3" enum="ResolverStatus">
DNS hostname resolver status: Error.
</constant>
<constant name="RESOLVER_MAX_QUERIES" value="32">
Maximum number of concurrent DNS resolver queries allowed, [code]RESOLVER_INVALID_ID[/code] is returned if exceeded.
</constant>
<constant name="RESOLVER_INVALID_ID" value="-1">
Invalid ID constant. Returned if [code]RESOLVER_MAX_QUERIES[/code] is exceeded.
</constant>
<constant name="TYPE_NONE" value="0" enum="Type">
Address type: None.
</constant>
<constant name="TYPE_IPV4" value="1" enum="Type">
Address type: Internet protocol version 4 (IPv4).
</constant>
<constant name="TYPE_IPV6" value="2" enum="Type">
Address type: Internet protocol version 6 (IPv6).
</constant>
<constant name="TYPE_ANY" value="3" enum="Type">
Address type: Any.
</constant>
</constants>
</class>
|