aboutsummaryrefslogtreecommitdiff
path: root/doc/documentation/gnunet.texi
blob: 29ee25b960bc8438b46ed4193b925e645d6c46b7 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
\input texinfo
@c -*-texinfo-*-

@c %**start of header
@setfilename gnunet.info
@documentencoding UTF-8
@settitle GNUnet Reference Manual
@exampleindent 2
@urefbreakstyle before
@c %**end of header

@include version.texi

@c Set Versions which might be used in more than one place:
@set GNUFTP-URL https://ftp.gnu.org/gnu/gnunet
@set PYPI-URL https://pypi.python.org/packages/source
@set GNURL-VERSION-CURRENT 7.55.1
@set GNUNET-DIST-URL https://gnunet.org/sites/default/files/
@c @set OPENPGP-SIGNING-KEY-ID

@copying
Copyright @copyright{} 2001-2017 GNUnet e.V.

Permission is granted to copy, distribute and/or modify this document
under the terms of the GNU Free Documentation License, Version 1.3 or
any later version published by the Free Software Foundation; with no
Invariant Sections, no Front-Cover Texts, and no Back-Cover Texts.  A
copy of the license is included in the section entitled ``GNU Free
Documentation License''.

A copy of the license is also available from the Free Software
Foundation Web site at @url{http://www.gnu.org/licenses/fdl.html}.

Alternately, this document is also available under the General
Public License, version 3 or later, as published by the Free Software
Foundation.  A copy of the license is included in the section entitled
``GNU General Public License''.

A copy of the license is also available from the Free Software
Foundation Web site at @url{http://www.gnu.org/licenses/gpl.html}.
@end copying

@c TODO: Improve this and improve https://directory.fsf.org/wiki/Gnunet

@dircategory Networking
@direntry
* GNUnet: (gnunet).       Framework for secure peer-to-peer networking
@end direntry

@titlepage
@title GNUnet Reference Manual
@subtitle Installing, configuring, using and contributing to GNUnet
@author The GNUnet Developers

@page
@vskip 0pt plus 1filll
Edition @value{EDITION} @*
@value{UPDATED} @*

@insertcopying
@end titlepage

@summarycontents
@contents

@node Top
@top Contributing to GNUnet


This document describes GNUnet version @value{VERSION}.


GNUnet is a @uref{https://www.gnu.org/, GNU} package.
All code contributions must thus be put under the
@uref{https://www.gnu.org/copyleft/gpl.html, GNU Public License (GPL)}.
All documentation should be put under FSF approved licenses
(see @uref{https://www.gnu.org/copyleft/fdl.html, fdl}).

By submitting documentation, translations, comments and other
content to this website you automatically grant the right to publish
code under the GNU Public License and documentation under either or
both the GNU Public License or the GNU Free Documentation License.
When contributing to the GNUnet project, GNU standards and the
@uref{https://www.gnu.org/philosophy/philosophy.html, GNU philosophy}
should be adhered to.

@cindex copyright assignment
We require a formal copyright assignment for GNUnet contributors
to GNUnet e.V.; nevertheless, we do allow pseudonymous contributions.
By signing the copyright agreement and submitting your code (or
documentation) to us, you agree to share the rights to your code
with GNUnet e.V.; GNUnet e.V. receives non-exclusive ownership
rights, and in particular is allowed to dual-license the code. You
retain non-exclusive rights to your contributions, so you can also
share your contributions freely with other projects.

GNUnet e.V. will publish all accepted contributions under the GPLv3
or any later version. The association may decide to publish
contributions under additional licenses (dual-licensing).

We do not intentionally remove your name from your contributions;
however, due to extensive editing it is not always trivial to
attribute contributors properly. If you find that you significantly
contributed to a file (or the project as a whole) and are not listed
in the respective authors file or section, please do let us know.



@menu

* Philosophy::                      About GNUnet
* Vocabulary::                      Vocabulary
* GNUnet Installation Handbook::    How to install GNUnet
* Using GNUnet::                    Using GNUnet
* Configuration Handbook::          Configuring GNUnet
* GNUnet Developer Handbook::       Developing GNUnet
* GNU Free Documentation License::  The license of this manual.
* GNU General Public License::      The license of this manual.
* Concept Index::                   Concepts.
* Programming Index::               Data types, functions, and variables.

@detailmenu
 --- The Detailed Node Listing ---

Philosophy

* Design Goals::
* Security and Privacy::
* Versatility::
* Practicality::
* Key Concepts::
* Authentication::
* Accounting to Encourage Resource Sharing::
* Confidentiality::
* Anonymity::
* Deniability::
* Peer Identities::
* Zones in the GNU Name System (GNS Zones)::
* Egos::
* Backup of Identities and Egos::
* Revocation::

Vocabulary

* Words and characters::
* Technical Assumptions::

GNUnet Installation Handbook

* Dependencies::
* Pre-installation notes::
* Generic installation instructions::
* Build instructions for Ubuntu 12.04 using Git::
* Build Instructions for Microsoft Windows Platforms::
* Build instructions for Debian 7.5::
* Installing GNUnet from Git on Ubuntu 14.4::
* Build instructions for Debian 8::
* Outdated build instructions for previous revisions::
@c * Portable GNUnet::
* The graphical configuration interface::
* How to start and stop a GNUnet peer::

Configuration Handbook

Using GNUnet

* Checking the Installation::
* First steps - File-sharing::
* First steps - Using the GNU Name System::
* First steps - Using GNUnet Conversation::
* First steps - Using the GNUnet VPN::
* File-sharing::
* The GNU Name System::
* Using the Virtual Public Network::

GNUnet Developer Handbook

* Developer Introduction::
* Code overview::
* System Architecture::
* Subsystem stability::
* Naming conventions and coding style guide::
* Build-system::
* Developing extensions for GNUnet using the gnunet-ext template::
* Writing testcases::
* TESTING library::
* Performance regression analysis with Gauger::
* TESTBED Subsystem::
* libgnunetutil::
* Automatic Restart Manager (ARM)::
* TRANSPORT Subsystem::
* NAT library::
* Distance-Vector plugin::
* SMTP plugin::
* Bluetooth plugin::
* WLAN plugin::
* ATS Subsystem::
* CORE Subsystem::
* CADET Subsystem::
* NSE Subsystem::
* HOSTLIST Subsystem::
* IDENTITY Subsystem::
* NAMESTORE Subsystem::
* PEERINFO Subsystem::
* PEERSTORE Subsystem::
* SET Subsystem::
* STATISTICS Subsystem::
* Distributed Hash Table (DHT)::
* GNU Name System (GNS)::
* GNS Namecache::
* REVOCATION Subsystem::
* File-sharing (FS) Subsystem::
* REGEX Subsystem::

@end detailmenu
@end menu

@c *********************************************************************
@include chapters/philosophy.texi
@c *********************************************************************

@include chapters/vocabulary.texi

@c *********************************************************************
@include chapters/installation.texi
@c *********************************************************************

@c *********************************************************************
@include chapters/user.texi
@c *********************************************************************

@include chapters/configuration.texi

@c *********************************************************************
@include chapters/developer.texi
@c @include gnunet-c-tutorial.texi
@c *********************************************************************

@c *********************************************************************
@node GNU Free Documentation License
@appendix GNU Free Documentation License
@cindex license, GNU Free Documentation License
@include fdl-1.3.texi

@c *********************************************************************
@node GNU General Public License
@appendix GNU General Public License
@cindex license, GNU General Public License
@include gpl-3.0.texi

@c *********************************************************************
@node Concept Index
@unnumbered Concept Index
@printindex cp

@node Programming Index
@unnumbered Programming Index
@syncodeindex tp fn
@syncodeindex vr fn
@printindex fn

@bye