Defines | Typedefs | Enumerations | Functions

threads.h File Reference

Implements threaded DNS resolution. More...

#include <string>
#include <vector>
#include <stack>
#include <list>
#include <map>
#include "params.h"
#include "utils.h"
#include "sock_shared.h"
#include "utils/my_assert.h"
Include dependency graph for threads.h:
This graph shows which files directly or indirectly include this file:

Go to the source code of this file.

Defines

#define TCID_INVALID   (0L)
 Value for 'threaded_connect_id' type, indicating invalid ID.

Typedefs

typedef long threaded_connect_id
 ID for threaded connect.

Enumerations

enum  e_resolv_result { RR_OK, RR_FAILURE, RR_SCHEDULED }
enum  e_resolv_time { RT_RESOLVE_NOW, RT_RESOLVE_SCHEDULE }

Functions

long threads_connect (const string &localIP, const string &remote, unsigned short remote_port, const string &comment, bool async)
 Connects to remote host (create separate thread).
void threads_done ()
 Does an epilog for all running threads.
void threads_flushdns ()
 Flushes the DNS cache.
bool threads_get_connect (long id, int &ec, c_socket &s)
void threads_loop ()
 Processes results from threads (should be called in a loop).
e_resolv_result threads_resolve4 (const char *domain, in_addr &result, e_resolv_time request_type)
 Resolves DNS name or text IPv4 address to IPv4 address via DNS.
e_resolv_result threads_resolve4 (const char *domain, vector< in_addr > &result, e_resolv_time request_type)
 Resolves DNS name or text IPv4 address to IPv4 address via DNS.
e_resolv_result threads_resolve6 (const char *domain, in_addr6_ &result, e_resolv_time request_type)
 Resolves DNS name or text IPv6 address to IPv6 address via DNS.
e_resolv_result threads_resolve6 (const char *domain, vector< in_addr6_ > &result, e_resolv_time request_type)
 Resolves DNS name or text IPv6 address to IPv6 address via DNS.
e_resolv_result threads_reverse4 (const char *address, char *dns_name, size_t dns_max_size, e_resolv_time request_type)
 Resolves IPv4 address to DNS name via DNS (reverse lookup).
e_resolv_result threads_reverse6 (in_addr6_ address, char *dns_name, size_t dns_max_size, e_resolv_time request_type)
 Resolves IPv6 address to DNS name via DNS (reverse lookup).

Detailed Description

Implements threaded DNS resolution.

Definition in file threads.h.


Generated on Sat Aug 7 2010 15:26:15 for VooDoo cIRCle by doxygen 1.7.1

Get VooDoo cIRCle at SourceForge.net. Fast, secure and Free Open Source software downloads