Merge branch 'master' of gnunet.org:gnunet
[oweals/gnunet.git] / src / util / gnunet-helper-w32-console.h
1 /*
2      This file is part of GNUnet.
3      Copyright (C) 2014 GNUnet e.V.
4
5      GNUnet is free software: you can redistribute it and/or modify it
6      under the terms of the GNU Affero 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.
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      Affero General Public License for more details.
14     
15      You should have received a copy of the GNU Affero General Public License
16      along with this program.  If not, see <http://www.gnu.org/licenses/>.
17 */
18
19 /**
20  * @author LRN
21  * @file src/util/gnunet-helper-w32-console.h
22  */
23 #ifndef GNUNET_HELPER_W32_CONSOLE_H
24 #define GNUNET_HELPER_W32_CONSOLE_H
25
26 #include "platform.h"
27 #include "gnunet_crypto_lib.h"
28 #include "gnunet_common.h"
29
30 /**
31  * Input event from the console
32  */
33 #define GNUNET_MESSAGE_TYPE_W32_CONSOLE_HELPER_INPUT 60000
34
35 /**
36  * Chars from the console
37  */
38 #define GNUNET_MESSAGE_TYPE_W32_CONSOLE_HELPER_CHARS 60001
39
40 GNUNET_NETWORK_STRUCT_BEGIN
41
42 /**
43  * This is just a dump of the INPUT_RECORD structure.
44  */
45 struct GNUNET_W32_CONSOLE_input
46 {
47   /**
48    * Type:  GNUNET_MESSAGE_TYPE_W32_CONSOLE_HELPER_INPUT
49    */
50   struct GNUNET_MessageHeader header;
51
52   INPUT_RECORD input_record GNUNET_PACKED;
53 };
54
55 /**
56  * A header, followed by UTF8-encoded, 0-terminated string
57  */
58 struct GNUNET_W32_CONSOLE_chars
59 {
60   /**
61    * Type:  GNUNET_MESSAGE_TYPE_W32_CONSOLE_HELPER_CHARS
62    */
63   struct GNUNET_MessageHeader header;
64
65   /* followed by a string */
66 };
67
68 GNUNET_NETWORK_STRUCT_END
69
70 #endif