aboutsummaryrefslogtreecommitdiff
path: root/src/gns/w32resolver.h
diff options
context:
space:
mode:
authorChristian Grothoff <christian@grothoff.org>2012-07-06 07:39:24 +0000
committerChristian Grothoff <christian@grothoff.org>2012-07-06 07:39:24 +0000
commitec59e6a4f56f68916cf8ec8fefca3282a70d16d2 (patch)
treee9fce0d2f7b8dceb717ba434731bde4db594eb0a /src/gns/w32resolver.h
parent2dda2c0e3a7c3813fc334d983b65d9f698953143 (diff)
downloadgnunet-ec59e6a4f56f68916cf8ec8fefca3282a70d16d2.tar.gz
gnunet-ec59e6a4f56f68916cf8ec8fefca3282a70d16d2.zip
-LRN: W32 NS provider for GNS
Also a helper service. A couple tools for installing/removing the provder. And a resolver tool that loads the provider directly.
Diffstat (limited to 'src/gns/w32resolver.h')
-rw-r--r--src/gns/w32resolver.h69
1 files changed, 69 insertions, 0 deletions
diff --git a/src/gns/w32resolver.h b/src/gns/w32resolver.h
new file mode 100644
index 000000000..47078ad9d
--- /dev/null
+++ b/src/gns/w32resolver.h
@@ -0,0 +1,69 @@
1/*
2 This file is part of GNUnet.
3 (C) 2009, 2012 Christian Grothoff (and other contributing authors)
4
5 GNUnet is free software; you can redistribute it and/or modify
6 it under the terms of the GNU General Public License as published
7 by the Free Software Foundation; either version 2, or (at your
8 option) any later version.
9
10 GNUnet is distributed in the hope that it will be useful, but
11 WITHOUT ANY WARRANTY; without even the implied warranty of
12 MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
13 General Public License for more details.
14
15 You should have received a copy of the GNU General Public License
16 along with GNUnet; see the file COPYING. If not, write to the
17 Free Software Foundation, Inc., 59 Temple Place - Suite 330,
18 Boston, MA 02111-1307, USA.
19*/
20
21/**
22 * @author Christian Grothoff
23 * @file gns/w32resolver.h
24 */
25#ifndef W32RESOLVER_H
26#define W32RESOLVER_H
27
28#include "gnunet_common.h"
29
30/**
31 * Request DNS resolution.
32 */
33#define GNUNET_MESSAGE_TYPE_W32RESOLVER_REQUEST 4
34
35/**
36 * Response to a DNS resolution request.
37 */
38#define GNUNET_MESSAGE_TYPE_W32RESOLVER_RESPONSE 5
39
40GNUNET_NETWORK_STRUCT_BEGIN
41
42/**
43 * Request for the resolver. Followed by the 0-terminated hostname.
44 *
45 * The response will be one or more messages of type
46 * W32RESOLVER_RESPONSE, each with the message header immediately
47 * followed by the requested data (struct in[6]_addr).
48 * The last W32RESOLVER_RESPONSE will just be a header without any data
49 * (used to indicate the end of the list).
50 */
51struct GNUNET_W32RESOLVER_GetMessage
52{
53 /**
54 * Type: GNUNET_MESSAGE_TYPE_W32RESOLVER_REQUEST
55 */
56 struct GNUNET_MessageHeader header;
57
58 uint32_t af GNUNET_PACKED;
59
60 uint32_t sc_data1 GNUNET_PACKED;
61 uint16_t sc_data2 GNUNET_PACKED;
62 uint16_t sc_data3 GNUNET_PACKED;
63 uint64_t sc_data4 GNUNET_PACKED;
64 /* followed by 0-terminated string for A/AAAA lookup */
65};
66
67GNUNET_NETWORK_STRUCT_END
68
69#endif