2 This file is part of GNUnet.
3 Copyright (C) 2009, 2012 GNUnet e.V.
5 GNUnet is free software: you can redistribute it and/or modify it
6 under the terms of the GNU General Public License as published
7 by the Free Software Foundation, either version 3 of the License,
8 or (at your option) any later version.
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 Affero General Public License for more details.
17 * @author Christian Grothoff
18 * @file gns/w32resolver.h
24 #include "gnunet_crypto_lib.h"
25 #include "gnunet_common.h"
28 * Request DNS resolution.
30 #define GNUNET_MESSAGE_TYPE_W32RESOLVER_REQUEST 4
33 * Response to a DNS resolution request.
35 #define GNUNET_MESSAGE_TYPE_W32RESOLVER_RESPONSE 5
37 GNUNET_NETWORK_STRUCT_BEGIN
40 * Request for the resolver. Followed by the 0-terminated hostname.
42 * The response will be one or more messages of type
43 * W32RESOLVER_RESPONSE, each with the message header immediately
44 * followed by the requested data (struct in[6]_addr).
45 * The last W32RESOLVER_RESPONSE will just be a header without any data
46 * (used to indicate the end of the list).
48 struct GNUNET_W32RESOLVER_GetMessage
51 * Type: GNUNET_MESSAGE_TYPE_W32RESOLVER_REQUEST
53 struct GNUNET_MessageHeader header;
55 uint32_t af GNUNET_PACKED;
57 uint32_t sc_data1 GNUNET_PACKED;
58 uint16_t sc_data2 GNUNET_PACKED;
59 uint16_t sc_data3 GNUNET_PACKED;
61 /* followed by 0-terminated string for A/AAAA lookup */
64 GNUNET_NETWORK_STRUCT_END