pike.git
/
lib
/
modules
/
Protocols.pmod
/
DNS.pmod
version
»
Context lines:
10
20
40
80
file
none
3
pike.git/lib/modules/Protocols.pmod/DNS.pmod:1051:
} else if(q->qr) handle_response(q, m, udp); else handle_query(q, m, udp); } protected void send_reply(mapping r, mapping q, mapping m, Stdio.UDP|object con);
-
protected void
destroy
()
+
protected void
_destruct
()
{ if(sizeof(ports)) { foreach(ports;; object port) destruct(port); } } } //! Base class for implementing a Domain Name Service (DNS) server operating
pike.git/lib/modules/Protocols.pmod/DNS.pmod:1213:
if (write_ready) { int written = con->write(out_buffer); out_buffer = out_buffer[written..]; write_ready = 0; } remove_call_out(c_id); c_id = call_out(destruct, 120, this); }
-
void
destroy
() {
+
protected
void
_destruct
() {
if (con) con->close(); destruct(con); m_delete(connections, this); } } protected int accept(Stdio.Port port) { connections[Connection(port->accept())] = 1; }
pike.git/lib/modules/Protocols.pmod/DNS.pmod:1279:
port = Stdio.Port(args[i+1], accept); } port->set_id(port); // Port objects are stored for destruction when the server // object is destroyed. ports += ({ port }); } }
-
protected void
destroy
()
+
protected void
_destruct
()
{ foreach (connections; Connection con;) { destruct(con); }
-
::
destroy
();
+
::
_destruct
();
} } //! This is both a @[server] and @[tcp_server]. class dual_server { inherit server : UDP; inherit tcp_server : TCP; protected void send_reply(mapping r, mapping q, mapping m, Connection|Stdio.UDP con) {
pike.git/lib/modules/Protocols.pmod/DNS.pmod:1315:
con->send(m->ip, m->port, rpl); } else con->send(rpl); } protected void create(int|string|void arg1, string|int ... args) { ::create(arg1, @args); }
-
protected void
destroy
()
+
protected void
_destruct
()
{
-
::
destroy
();
+
::
_destruct
();
} } #define RETRIES 12 #define RETRY_DELAY 5 //! Synchronous DNS client. class client {