aboutsummaryrefslogtreecommitdiff
path: root/src/include/block_dns.h
diff options
context:
space:
mode:
authorChristian Grothoff <christian@grothoff.org>2013-09-21 20:13:06 +0000
committerChristian Grothoff <christian@grothoff.org>2013-09-21 20:13:06 +0000
commit04bb54e0efe6f6770c016aedbb776dd4ae801972 (patch)
treebc59ffb8bd008cfb0b3e8c9ffdd8135f27c630bb /src/include/block_dns.h
parentcf4e6f6646619f854cab70c117452d44e3355fb6 (diff)
downloadgnunet-04bb54e0efe6f6770c016aedbb776dd4ae801972.tar.gz
gnunet-04bb54e0efe6f6770c016aedbb776dd4ae801972.zip
changing DNS block plugin to represent DNS exit services instead of hidden services
Diffstat (limited to 'src/include/block_dns.h')
-rw-r--r--src/include/block_dns.h46
1 files changed, 10 insertions, 36 deletions
diff --git a/src/include/block_dns.h b/src/include/block_dns.h
index 1af28af36..928a95126 100644
--- a/src/include/block_dns.h
+++ b/src/include/block_dns.h
@@ -1,6 +1,6 @@
1/* 1/*
2 This file is part of GNUnet. 2 This file is part of GNUnet.
3 (C) 2009 Christian Grothoff (and other contributing authors) 3 (C) 2013 Christian Grothoff (and other contributing authors)
4 4
5 GNUnet is free software; you can redistribute it and/or modify 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 6 it under the terms of the GNU General Public License as published
@@ -20,29 +20,19 @@
20 20
21/** 21/**
22 * @file include/block_dns.h 22 * @file include/block_dns.h
23 * @author Philipp Toelke 23 * @author Christian Grothoff
24 */ 24 */
25#ifndef _GNVPN_BLOCKDNS_H_ 25#ifndef BLOCK_DNS_H
26#define _GNVPN_BLOCKDNS_H_ 26#define BLOCK_DNS_H
27 27
28#include "gnunet_common.h" 28#include "gnunet_util_lib.h"
29#include "gnunet_crypto_lib.h"
30
31/**
32 * Bitmask describing what IP-protocols are supported by the service
33 */
34enum GNUNET_DNS_ServiceTypes
35{
36 GNUNET_DNS_SERVICE_TYPE_UDP = 1,
37 GNUNET_DNS_SERVICE_TYPE_TCP = 2
38};
39 29
40GNUNET_NETWORK_STRUCT_BEGIN 30GNUNET_NETWORK_STRUCT_BEGIN
41 31
42/** 32/**
43 * This is the structure describing an dns-record such as www.gnunet. 33 * This is the structure describing an DNS exit service.
44 */ 34 */
45struct GNUNET_DNS_Record 35struct GNUNET_DNS_Advertisement
46{ 36{
47 /** 37 /**
48 * Signature of the peer affirming that he is offering the service. 38 * Signature of the peer affirming that he is offering the service.
@@ -56,31 +46,15 @@ struct GNUNET_DNS_Record
56 struct GNUNET_CRYPTO_EccSignaturePurpose purpose; 46 struct GNUNET_CRYPTO_EccSignaturePurpose purpose;
57 47
58 /** 48 /**
59 * The peer providing this service 49 * When does this signature expire?
60 */
61 struct GNUNET_CRYPTO_EccPublicSignKey peer;
62
63 /**
64 * The descriptor for the service
65 * (a peer may provide more than one service)
66 */
67 struct GNUNET_HashCode service_descriptor;
68
69 /**
70 * When does this record expire?
71 */ 50 */
72 struct GNUNET_TIME_AbsoluteNBO expiration_time; 51 struct GNUNET_TIME_AbsoluteNBO expiration_time;
73 52
74 /** 53 /**
75 * Four TCP and UDP-Ports that are used by this service, big endian format 54 * The peer providing this service
76 */ 55 */
77 uint64_t ports GNUNET_PACKED; 56 struct GNUNET_CRYPTO_EccPublicSignKey peer;
78 57
79 /**
80 * What connection-types (UDP, TCP, ...) are supported by the service.
81 * Contains an 'enum GNUNET_DNS_ServiceTypes' in big endian format.
82 */
83 uint32_t service_type GNUNET_PACKED;
84}; 58};
85GNUNET_NETWORK_STRUCT_END 59GNUNET_NETWORK_STRUCT_END
86 60