summaryrefslogtreecommitdiffstats
path: root/PICA_nodewait.h
diff options
context:
space:
mode:
authorme_desk <me_desk@fb96df88-216d-11de-830c-f3023f12d8ac>2012-12-27 03:33:59 +0000
committerme_desk <me_desk@fb96df88-216d-11de-830c-f3023f12d8ac>2012-12-27 03:33:59 +0000
commit11e1161d05f3c78728776cef301a304534baea21 (patch)
treec0bb3472fefdf42a142b0e183be1419f8dd1a5f0 /PICA_nodewait.h
parent93649cf80cfc979c5c4a5d54feedb4a526cb0c00 (diff)
downloadpica-pica-11e1161d05f3c78728776cef301a304534baea21.tar.gz
pica-pica-11e1161d05f3c78728776cef301a304534baea21.zip
nodewait - asynchronous DNS resolve and connect to nodes using threads
git-svn-id: svn://localhost/project_picapica/trunk@215 fb96df88-216d-11de-830c-f3023f12d8ac
Diffstat (limited to 'PICA_nodewait.h')
-rw-r--r--PICA_nodewait.h37
1 files changed, 37 insertions, 0 deletions
diff --git a/PICA_nodewait.h b/PICA_nodewait.h
new file mode 100644
index 0000000..614db09
--- /dev/null
+++ b/PICA_nodewait.h
@@ -0,0 +1,37 @@
+#ifndef PICA_NODEWAIT_H
+#define PICA_NODEWAIT_H
+
+#include "PICA_nodeaddrlist.h"
+#include "PICA_node.h"
+
+#define PICA_NODEWAIT_NEW 1
+#define PICA_NODEWAIT_RUNNING 2
+#define PICA_NODEWAIT_FINISHED_OK 3
+#define PICA_NODEWAIT_FINISHED_ERR 4
+
+struct nodewait
+{
+struct newconn nc;
+int state;
+time_t tmst;
+
+//unsigned int addr_type;
+// union address_ptr
+// {
+// struct PICA_nodeaddr_ipv4 *ipv4;
+// struct PICA_nodeaddr_ipv6 *ipv6;
+// struct PICA_nodeaddr_dns *dns;
+// } addrptr;
+
+struct PICA_nodeaddr addr;
+
+struct nodewait *next;
+};
+
+extern struct nodewait *nodewait_list;
+
+struct nodewait *nodewait_list_addnew();
+void nodewait_list_delete(struct nodewait *nw);
+void nodewait_start_connection(struct PICA_nodeaddr *a);
+
+#endif