diff options
23 files changed, 151 insertions, 159 deletions
diff --git a/configure.ac b/configure.ac index fc04139a5..15a829f02 100644 --- a/configure.ac +++ b/configure.ac | |||
@@ -158,7 +158,7 @@ AS_CASE(["$host_os"], | |||
158 | ], | 158 | ], |
159 | [*solaris*],[ | 159 | [*solaris*],[ |
160 | AC_DEFINE_UNQUOTED(SOLARIS,1,[This is a Solaris system]) | 160 | AC_DEFINE_UNQUOTED(SOLARIS,1,[This is a Solaris system]) |
161 | AC_DEFINE_UNQUOTED(_REENTRANT,1,[Need with solaris or errno doesnt work]) | 161 | AC_DEFINE_UNQUOTED(_REENTRANT,1,[Need with solaris or errno does not work]) |
162 | AC_CHECK_LIB(resolv, res_init) | 162 | AC_CHECK_LIB(resolv, res_init) |
163 | AC_CHECK_LIB(rt, nanosleep) | 163 | AC_CHECK_LIB(rt, nanosleep) |
164 | build_target="solaris" | 164 | build_target="solaris" |
@@ -188,7 +188,7 @@ AC_DEFINE_UNQUOTED([GNUNET_DEFAULT_INTERFACE], $DEFAULT_INTERFACE, [This should | |||
188 | AC_SUBST(DEFAULT_INTERFACE) | 188 | AC_SUBST(DEFAULT_INTERFACE) |
189 | 189 | ||
190 | # Disable TCP-based IPC on systems that support UNIX domain | 190 | # Disable TCP-based IPC on systems that support UNIX domain |
191 | # sockets in default configuratin: | 191 | # sockets in default configuration: |
192 | AC_SUBST(UNIXONLY) | 192 | AC_SUBST(UNIXONLY) |
193 | 193 | ||
194 | 194 | ||
diff --git a/contrib/apparmor/abstractions/gnunet-common b/contrib/apparmor/abstractions/gnunet-common index 3bf6806f5..cb41b2bff 100644 --- a/contrib/apparmor/abstractions/gnunet-common +++ b/contrib/apparmor/abstractions/gnunet-common | |||
@@ -3,10 +3,10 @@ | |||
3 | #GNUnet configuration file | 3 | #GNUnet configuration file |
4 | @{GNUNET_PREFIX}/share/gnunet/config.d/ r, | 4 | @{GNUNET_PREFIX}/share/gnunet/config.d/ r, |
5 | @{GNUNET_PREFIX}/share/gnunet/config.d/*.conf r, | 5 | @{GNUNET_PREFIX}/share/gnunet/config.d/*.conf r, |
6 | 6 | ||
7 | /etc/gnunet.conf r, | 7 | /etc/gnunet.conf r, |
8 | @{HOME}/.config/gnunet.conf r, | 8 | @{HOME}/.config/gnunet.conf r, |
9 | owner @{GNUNET_USER}/.config/gnunet.conf r, | 9 | owner @{GNUNET_USER}/.config/gnunet.conf r, |
10 | 10 | ||
11 | #GNUnet librairies | 11 | #GNUnet libraries |
12 | @{GNUNET_PREFIX}/lib/libgnunet*.so.* mr, | 12 | @{GNUNET_PREFIX}/lib/libgnunet*.so.* mr, |
diff --git a/contrib/apparmor/gnunet-fs-gtk b/contrib/apparmor/gnunet-fs-gtk index 0ffb0b38b..cd98febf7 100644 --- a/contrib/apparmor/gnunet-fs-gtk +++ b/contrib/apparmor/gnunet-fs-gtk | |||
@@ -9,7 +9,7 @@ profile @{GNUNET_PREFIX}/bin/gnunet-fs-gtk { | |||
9 | #include <abstractions/gnunet-gtk> | 9 | #include <abstractions/gnunet-gtk> |
10 | #include <abstractions/user-download> | 10 | #include <abstractions/user-download> |
11 | 11 | ||
12 | # /dev/shm/LE-* rw, | 12 | # /dev/shm/LE-* rw, |
13 | 13 | ||
14 | owner @{HOME}/.config/gtk-*/bookmarks r, | 14 | owner @{HOME}/.config/gtk-*/bookmarks r, |
15 | owner @{HOME}/.local/share/gnunet/fs/persistence/gnunet-fs-gtk/download-child/* rw, | 15 | owner @{HOME}/.local/share/gnunet/fs/persistence/gnunet-fs-gtk/download-child/* rw, |
@@ -21,8 +21,8 @@ profile @{GNUNET_PREFIX}/bin/gnunet-fs-gtk { | |||
21 | owner @{HOME}/.local/share/gnunet/fs/persistence/gnunet-fs-gtk/publish-file/* rw, | 21 | owner @{HOME}/.local/share/gnunet/fs/persistence/gnunet-fs-gtk/publish-file/* rw, |
22 | owner @{HOME}/.local/share/gnunet/fs/persistence/gnunet-fs-gtk/publish/ ra, | 22 | owner @{HOME}/.local/share/gnunet/fs/persistence/gnunet-fs-gtk/publish/ ra, |
23 | owner @{HOME}/.local/share/gnunet/fs/persistence/gnunet-fs-gtk/publish/* rw, | 23 | owner @{HOME}/.local/share/gnunet/fs/persistence/gnunet-fs-gtk/publish/* rw, |
24 | 24 | ||
25 | #Acces to files to share ? (lets create a gnunet directory in home) | 25 | #Access to files to share ? (lets create a gnunet directory in home) |
26 | owner @{HOME}/gnunet-fs/ r, | 26 | owner @{HOME}/gnunet-fs/ r, |
27 | 27 | ||
28 | @{GNUNET_PREFIX}/bin/gnunet-fs-gtk mr, | 28 | @{GNUNET_PREFIX}/bin/gnunet-fs-gtk mr, |
@@ -31,13 +31,13 @@ profile @{GNUNET_PREFIX}/bin/gnunet-fs-gtk { | |||
31 | 31 | ||
32 | /usr/share/glib-*/schemas/gschemas.compiled r, | 32 | /usr/share/glib-*/schemas/gschemas.compiled r, |
33 | 33 | ||
34 | #abstractions/dconf but we need write right here | 34 | #abstractions/dconf but we need write right here |
35 | /run/user/*/dconf/user rw, | 35 | /run/user/*/dconf/user rw, |
36 | 36 | ||
37 | @{HOME}/.cache/thumbnails/normal/*.png r, | 37 | @{HOME}/.cache/thumbnails/normal/*.png r, |
38 | 38 | ||
39 | @{GNUNET_PREFIX}/lib/gnunet/libexec/gnunet-helper-fs-publish Px, | 39 | @{GNUNET_PREFIX}/lib/gnunet/libexec/gnunet-helper-fs-publish Px, |
40 | 40 | ||
41 | # Site-specific additions and overrides. See local/README for details. | 41 | # Site-specific additions and overrides. See local/README for details. |
42 | #include <local/gnunet> | 42 | #include <local/gnunet> |
43 | } | 43 | } |
diff --git a/contrib/apparmor/gnunet-helper-dns b/contrib/apparmor/gnunet-helper-dns index b5e219585..bd5fe2f0c 100644 --- a/contrib/apparmor/gnunet-helper-dns +++ b/contrib/apparmor/gnunet-helper-dns | |||
@@ -27,7 +27,7 @@ profile @{GNUNET_PREFIX}/lib/gnunet/libexec/gnunet-helper-dns { | |||
27 | /usr/bin/sysctl rix, | 27 | /usr/bin/sysctl rix, |
28 | /usr/bin/xtables-multi rix, | 28 | /usr/bin/xtables-multi rix, |
29 | 29 | ||
30 | #Librairies | 30 | # Libraries |
31 | /usr/lib/iptables/libxt_MARK.so mr, | 31 | /usr/lib/iptables/libxt_MARK.so mr, |
32 | /usr/lib/iptables/libxt_owner.so mr, | 32 | /usr/lib/iptables/libxt_owner.so mr, |
33 | /usr/lib/iptables/libxt_standard.so mr, | 33 | /usr/lib/iptables/libxt_standard.so mr, |
@@ -42,7 +42,7 @@ profile @{GNUNET_PREFIX}/lib/gnunet/libexec/gnunet-helper-dns { | |||
42 | /usr/lib/locale/locale-archive r, | 42 | /usr/lib/locale/locale-archive r, |
43 | 43 | ||
44 | @{GNUNET_PREFIX}/lib/gnunet/libexec/gnunet-helper-dns mr, | 44 | @{GNUNET_PREFIX}/lib/gnunet/libexec/gnunet-helper-dns mr, |
45 | 45 | ||
46 | # Site-specific additions and overrides. See local/README for details. | 46 | # Site-specific additions and overrides. See local/README for details. |
47 | #include <local/gnunet> | 47 | #include <local/gnunet> |
48 | } | 48 | } |
diff --git a/contrib/apparmor/gnunet-service-dns b/contrib/apparmor/gnunet-service-dns index 394b97eb1..665fd7c43 100644 --- a/contrib/apparmor/gnunet-service-dns +++ b/contrib/apparmor/gnunet-service-dns | |||
@@ -14,11 +14,11 @@ profile @{GNUNET_PREFIX}/lib/gnunet/libexec/gnunet-service-dns { | |||
14 | 14 | ||
15 | @{GNUNET_PREFIX}/lib/gnunet/libexec/gnunet-service-dns mr, | 15 | @{GNUNET_PREFIX}/lib/gnunet/libexec/gnunet-service-dns mr, |
16 | 16 | ||
17 | #Gnunet librairies | 17 | #Gnunet libraries |
18 | @{GNUNET_PREFIX}/lib/libgnunetdnsstub.so.* mr, | 18 | @{GNUNET_PREFIX}/lib/libgnunetdnsstub.so.* mr, |
19 | @{GNUNET_PREFIX}/lib/libgnunetstatistics.so.* mr, | 19 | @{GNUNET_PREFIX}/lib/libgnunetstatistics.so.* mr, |
20 | @{GNUNET_PREFIX}/lib/libgnunettun.so.* mr, | 20 | @{GNUNET_PREFIX}/lib/libgnunettun.so.* mr, |
21 | 21 | ||
22 | # Site-specific additions and overrides. See local/README for details. | 22 | # Site-specific additions and overrides. See local/README for details. |
23 | #include <local/gnunet-sgid> | 23 | #include <local/gnunet-sgid> |
24 | } | 24 | } |
diff --git a/contrib/conf/uncrustify_precommit b/contrib/conf/uncrustify_precommit index fd29998c3..24873330f 100755 --- a/contrib/conf/uncrustify_precommit +++ b/contrib/conf/uncrustify_precommit | |||
@@ -30,6 +30,6 @@ if [ $RET = 1 ]; | |||
30 | then | 30 | then |
31 | echo "Run" | 31 | echo "Run" |
32 | echo "uncrustify --no-backup -c uncrustify.cfg ${crustified}" | 32 | echo "uncrustify --no-backup -c uncrustify.cfg ${crustified}" |
33 | echo "before commiting." | 33 | echo "before committing." |
34 | fi | 34 | fi |
35 | exit $RET | 35 | exit $RET |
diff --git a/contrib/conf/wireshark/wireshark.lua b/contrib/conf/wireshark/wireshark.lua index ac77029f6..3571a693f 100644 --- a/contrib/conf/wireshark/wireshark.lua +++ b/contrib/conf/wireshark/wireshark.lua | |||
@@ -6,7 +6,7 @@ local f = gwlan_proto.fields | |||
6 | f.len = ProtoField.uint16 ("gnunet.len", "Gnunet Message Len") | 6 | f.len = ProtoField.uint16 ("gnunet.len", "Gnunet Message Len") |
7 | f.type = ProtoField.uint16 ("gnunet.type", "Gnunet Message Type") | 7 | f.type = ProtoField.uint16 ("gnunet.type", "Gnunet Message Type") |
8 | -- rhs_proto.fields.sequence = ProtoField.uint16("rhs.sequence","Sequence number") | 8 | -- rhs_proto.fields.sequence = ProtoField.uint16("rhs.sequence","Sequence number") |
9 | f_proto = DissectorTable.new("gnunet.proto", "Gnunet Protocoll", FT_UINT16, BASE_DEC) | 9 | f_proto = DissectorTable.new("gnunet.proto", "GNUnet Protocol", FT_UINT16, BASE_DEC) |
10 | --gwlan_proto.fields = {f_len, f_type} | 10 | --gwlan_proto.fields = {f_len, f_type} |
11 | 11 | ||
12 | function gwlan_proto.dissector(buffer,pinfo,tree) | 12 | function gwlan_proto.dissector(buffer,pinfo,tree) |
@@ -80,8 +80,8 @@ function fragment.dissector(buffer,pinfo,tree) | |||
80 | if buffer(10,2):uint() == 0 then | 80 | if buffer(10,2):uint() == 0 then |
81 | if (buffer(8,2):uint() <= buffer:len() - 12) then | 81 | if (buffer(8,2):uint() <= buffer:len() - 12) then |
82 | gnunet_packet_disector(buffer(12):tvb(),pinfo,tree) | 82 | gnunet_packet_disector(buffer(12):tvb(),pinfo,tree) |
83 | end | 83 | end |
84 | else | 84 | else |
85 | subtree:add(buffer(12), "Data: " .. buffer(12)) | 85 | subtree:add(buffer(12), "Data: " .. buffer(12)) |
86 | end | 86 | end |
87 | end | 87 | end |
@@ -92,7 +92,7 @@ hello = Proto("gnunet.hello","Gnunet Hello Message") | |||
92 | function hello.dissector(buffer,pinfo,tree) | 92 | function hello.dissector(buffer,pinfo,tree) |
93 | pinfo.cols.protocol = "Gnunet Hello Message" | 93 | pinfo.cols.protocol = "Gnunet Hello Message" |
94 | local subtree = tree:add(hello, buffer(),"Gnunet Hello Message (" .. buffer:len() .. ")") | 94 | local subtree = tree:add(hello, buffer(),"Gnunet Hello Message (" .. buffer:len() .. ")") |
95 | gnunet_message_header(buffer, pinfo, subtree) | 95 | gnunet_message_header(buffer, pinfo, subtree) |
96 | if buffer:len() > (264 + 8) then | 96 | if buffer:len() > (264 + 8) then |
97 | subtree:add(buffer(4,4),"Reserved: " .. buffer(4,4):uint()) | 97 | subtree:add(buffer(4,4),"Reserved: " .. buffer(4,4):uint()) |
98 | RsaPublicKeyBinaryEncoded(buffer(8 , 264):tvb(),pinfo, subtree) | 98 | RsaPublicKeyBinaryEncoded(buffer(8 , 264):tvb(),pinfo, subtree) |
@@ -110,7 +110,7 @@ function wlan.dissector(buffer,pinfo,tree) | |||
110 | if buffer:len() > (4 + 4 + 2*64) then | 110 | if buffer:len() > (4 + 4 + 2*64) then |
111 | subtree:add(buffer(4,4),"CRC: " .. buffer(4,4):uint()) | 111 | subtree:add(buffer(4,4),"CRC: " .. buffer(4,4):uint()) |
112 | local peer = GNUNET_PeerIdentity(buffer(8,64), pinfo, subtree) | 112 | local peer = GNUNET_PeerIdentity(buffer(8,64), pinfo, subtree) |
113 | peer:append_text(" Traget") | 113 | peer:append_text(" Target") |
114 | peer = GNUNET_PeerIdentity(buffer(8 + 64,64), pinfo, subtree) | 114 | peer = GNUNET_PeerIdentity(buffer(8 + 64,64), pinfo, subtree) |
115 | peer:append_text(" Source") | 115 | peer:append_text(" Source") |
116 | else | 116 | else |
@@ -118,7 +118,7 @@ function wlan.dissector(buffer,pinfo,tree) | |||
118 | end | 118 | end |
119 | if (buffer:len() - (4 + 4 + 2*64) > 0) then | 119 | if (buffer:len() - (4 + 4 + 2*64) > 0) then |
120 | gnunet_packet_disector(buffer(4 + 4 + 2*64):tvb(),pinfo,tree) | 120 | gnunet_packet_disector(buffer(4 + 4 + 2*64):tvb(),pinfo,tree) |
121 | end | 121 | end |
122 | end | 122 | end |
123 | 123 | ||
124 | function RsaPublicKeyBinaryEncoded(buffer,pinfo,tree) | 124 | function RsaPublicKeyBinaryEncoded(buffer,pinfo,tree) |
diff --git a/contrib/guix.README b/contrib/guix.README index d73b0f4aa..1e8bd3126 100644 --- a/contrib/guix.README +++ b/contrib/guix.README | |||
@@ -25,5 +25,5 @@ environment, run: | |||
25 | 25 | ||
26 | guix environment --load-path=<gnunet.git>/contrib/guix.scm --ad-hoc guix | 26 | guix environment --load-path=<gnunet.git>/contrib/guix.scm --ad-hoc guix |
27 | 27 | ||
28 | It is recommented to also pass the '--pure' option to guix, to make | 28 | It is recommended to also pass the '--pure' option to guix, to make |
29 | sure the environment is not polluted with existing packages. | 29 | sure the environment is not polluted with existing packages. |
diff --git a/contrib/packages/alpine/gnunet/gnunet-gns-proxy.initd b/contrib/packages/alpine/gnunet/gnunet-gns-proxy.initd index 2a4dcc1c4..ac5db666c 100644 --- a/contrib/packages/alpine/gnunet/gnunet-gns-proxy.initd +++ b/contrib/packages/alpine/gnunet/gnunet-gns-proxy.initd | |||
@@ -13,7 +13,7 @@ depend() { | |||
13 | } | 13 | } |
14 | 14 | ||
15 | start() { | 15 | start() { |
16 | # Enable GNS proxy for existant users. | 16 | # Enable GNS proxy for existing users. |
17 | for user in $users; do | 17 | for user in $users; do |
18 | # Create/Renew GNS certificate authority (CA) per user. | 18 | # Create/Renew GNS certificate authority (CA) per user. |
19 | su $user -c "gnunet-gns-proxy-setup-ca" | 19 | su $user -c "gnunet-gns-proxy-setup-ca" |
diff --git a/contrib/patches/lrn-indent.diff b/contrib/patches/lrn-indent.diff index 8ba3b77cc..2cf61d2cf 100644 --- a/contrib/patches/lrn-indent.diff +++ b/contrib/patches/lrn-indent.diff | |||
@@ -40,13 +40,13 @@ diff -u indent-2.2.11/src/handletoken.c indent-2.2.11.my/src/handletoken.c | |||
40 | + parser_state_tos->in_parameter_declaration = 0; | 40 | + parser_state_tos->in_parameter_declaration = 0; |
41 | + } | 41 | + } |
42 | } | 42 | } |
43 | 43 | ||
44 | /** | 44 | /** |
45 | diff -u indent-2.2.11/src/indent.h indent-2.2.11.my/src/indent.h | 45 | diff -u indent-2.2.11/src/indent.h indent-2.2.11.my/src/indent.h |
46 | --- indent-2.2.11/src/indent.h 2009-10-11 23:15:34 +0400 | 46 | --- indent-2.2.11/src/indent.h 2009-10-11 23:15:34 +0400 |
47 | +++ indent-2.2.11.my/src/indent.h 2011-08-16 14:19:37 +0400 | 47 | +++ indent-2.2.11.my/src/indent.h 2011-08-16 14:19:37 +0400 |
48 | @@ -318,6 +318,11 @@ | 48 | @@ -318,6 +318,11 @@ |
49 | int brace_indent; /*!< number of spaces to indent braces from the suround if, while, etc. in -bl | 49 | int brace_indent; /*!< number of spaces to indent braces from the surround if, while, etc. in -bl |
50 | * (bype_2 == 0) code */ | 50 | * (bype_2 == 0) code */ |
51 | int expect_output_file; /*!< Means "-o" was specified. */ | 51 | int expect_output_file; /*!< Means "-o" was specified. */ |
52 | + int diff_decls_and_defs; /*!< Makes indent think that function prototypes are terminated by ';', | 52 | + int diff_decls_and_defs; /*!< Makes indent think that function prototypes are terminated by ';', |
@@ -55,7 +55,7 @@ diff -u indent-2.2.11/src/indent.h indent-2.2.11.my/src/indent.h | |||
55 | + * This is the default. | 55 | + * This is the default. |
56 | + */ | 56 | + */ |
57 | } user_options_ty; | 57 | } user_options_ty; |
58 | 58 | ||
59 | extern user_options_ty settings; | 59 | extern user_options_ty settings; |
60 | @@ -430,6 +435,7 @@ | 60 | @@ -430,6 +435,7 @@ |
61 | * slightly different */ | 61 | * slightly different */ |
@@ -71,7 +71,7 @@ diff -u indent-2.2.11/src/lexi.c indent-2.2.11.my/src/lexi.c | |||
71 | @@ -616,8 +616,11 @@ | 71 | @@ -616,8 +616,11 @@ |
72 | * I've added '=' to this list to keep from breaking | 72 | * I've added '=' to this list to keep from breaking |
73 | * a non-valid C macro from libc. -jla */ | 73 | * a non-valid C macro from libc. -jla */ |
74 | 74 | ||
75 | - if (*tp != ';' && *tp != ',' && *tp != '(' && *tp != '=') | 75 | - if (*tp != ';' && *tp != ',' && *tp != '(' && *tp != '=') |
76 | + if ((*tp != ';' || !settings.diff_decls_and_defs) && | 76 | + if ((*tp != ';' || !settings.diff_decls_and_defs) && |
77 | + *tp != ',' && *tp != '(' && *tp != '=') | 77 | + *tp != ',' && *tp != '(' && *tp != '=') |
diff --git a/contrib/scripts/check-texinfo.awk.in b/contrib/scripts/check-texinfo.awk.in index 3d6a1c643..4efa73658 100755 --- a/contrib/scripts/check-texinfo.awk.in +++ b/contrib/scripts/check-texinfo.awk.in | |||
@@ -52,11 +52,6 @@ BEGIN { | |||
52 | } | 52 | } |
53 | 53 | ||
54 | { | 54 | { |
55 | if (/wether/) { | ||
56 | printf "...lines containing a popular typo\n" ; | ||
57 | print FILENAME":"NR":"$0 ; | ||
58 | } | ||
59 | |||
60 | if (/the the/) { | 55 | if (/the the/) { |
61 | printf "...lines containing a popular typo\n" ; | 56 | printf "...lines containing a popular typo\n" ; |
62 | print FILENAME":"NR":"$0 ; | 57 | print FILENAME":"NR":"$0 ; |
diff --git a/contrib/scripts/gdb-iterate-dll.py b/contrib/scripts/gdb-iterate-dll.py index 28c435ccb..882dee039 100644 --- a/contrib/scripts/gdb-iterate-dll.py +++ b/contrib/scripts/gdb-iterate-dll.py | |||
@@ -7,7 +7,7 @@ def search_dll(head, field, match, pfield): | |||
7 | 7 | ||
8 | head: name of the symbol denoting the head of the DLL | 8 | head: name of the symbol denoting the head of the DLL |
9 | field: the field that should be search for match | 9 | field: the field that should be search for match |
10 | match: the mathing value for field | 10 | match: the matching value for field |
11 | pfield: the field whose value is to be printed for matched elements; None to | 11 | pfield: the field whose value is to be printed for matched elements; None to |
12 | print all fields of the matched elemented | 12 | print all fields of the matched elemented |
13 | """ | 13 | """ |
diff --git a/contrib/scripts/gnunet-chk.py.in b/contrib/scripts/gnunet-chk.py.in index afc0924f4..74e9e4cf9 100755 --- a/contrib/scripts/gnunet-chk.py.in +++ b/contrib/scripts/gnunet-chk.py.in | |||
@@ -32,7 +32,7 @@ from functools import reduce | |||
32 | # Defaults | 32 | # Defaults |
33 | DBLOCK_SIZE = (32 * 1024) # Data block size | 33 | DBLOCK_SIZE = (32 * 1024) # Data block size |
34 | 34 | ||
35 | # Pick a multiple of 2 here to achive 8-byte alignment! We also | 35 | # Pick a multiple of 2 here to achieve 8-byte alignment! We also |
36 | # probably want DBlocks to have (roughly) the same size as IBlocks. | 36 | # probably want DBlocks to have (roughly) the same size as IBlocks. |
37 | # With SHA-512, the optimal value is 32768 byte / 128 byte = 256 (128 | 37 | # With SHA-512, the optimal value is 32768 byte / 128 byte = 256 (128 |
38 | # byte = 2 * 512 bits). DO NOT CHANGE! | 38 | # byte = 2 * 512 bits). DO NOT CHANGE! |
@@ -288,7 +288,7 @@ def compute_rootchk(readin, size): | |||
288 | current_depth = 0 | 288 | current_depth = 0 |
289 | chks = [None] * (depth * CHK_PER_INODE) # list buffer | 289 | chks = [None] * (depth * CHK_PER_INODE) # list buffer |
290 | read_offset = 0 | 290 | read_offset = 0 |
291 | logging.debug("Begining to calculate tree hash with depth: " + repr(depth)) | 291 | logging.debug("Beginning to calculate tree hash with depth: " + repr(depth)) |
292 | while True: | 292 | while True: |
293 | if (depth == current_depth): | 293 | if (depth == current_depth): |
294 | off = CHK_PER_INODE * (depth - 1) | 294 | off = CHK_PER_INODE * (depth - 1) |
@@ -370,7 +370,7 @@ if '__main__' == __name__: | |||
370 | opts, args = getopt.getopt(sys.argv[1:], "h", ["help"]) | 370 | opts, args = getopt.getopt(sys.argv[1:], "h", ["help"]) |
371 | except getopt.GetoptError as err: | 371 | except getopt.GetoptError as err: |
372 | print(err) | 372 | print(err) |
373 | print("Exception occured") | 373 | print("Exception occurred") |
374 | usage() | 374 | usage() |
375 | sys.exit(2) | 375 | sys.exit(2) |
376 | for option, value in opts: | 376 | for option, value in opts: |
diff --git a/contrib/scripts/visualize_stats.sh b/contrib/scripts/visualize_stats.sh index aaa5e657b..b3404b164 100755 --- a/contrib/scripts/visualize_stats.sh +++ b/contrib/scripts/visualize_stats.sh | |||
@@ -1,7 +1,7 @@ | |||
1 | #!/bin/bash | 1 | #!/bin/bash |
2 | # | 2 | # |
3 | # This script polls gnunet-stats repeatedly to create statistics plots. | 3 | # This script polls gnunet-stats repeatedly to create statistics plots. |
4 | # Use 'collect' to collect statistics and 'plot' to plot whats been | 4 | # Use 'collect' to collect statistics and 'plot' to plot what has been |
5 | # collected. All plots will be written to $STATDIR as separate .png files. | 5 | # collected. All plots will be written to $STATDIR as separate .png files. |
6 | # | 6 | # |
7 | # WARNING: calling 'collect' will delete all files in $STATDIR. | 7 | # WARNING: calling 'collect' will delete all files in $STATDIR. |
@@ -10,7 +10,7 @@ | |||
10 | # | 10 | # |
11 | # Note: gnuplot syntax has changed across versions. This | 11 | # Note: gnuplot syntax has changed across versions. This |
12 | # script perhaps will not produce color images with older gnuplots. | 12 | # script perhaps will not produce color images with older gnuplots. |
13 | # The script should work atleast with gnuplot 3.8k patchlevel 1. | 13 | # The script should work at least with gnuplot 3.8k patchlevel 1. |
14 | # | 14 | # |
15 | 15 | ||
16 | SLEEP=120 | 16 | SLEEP=120 |
@@ -26,10 +26,10 @@ mkdir -p $STATDIR | |||
26 | case "$1" in | 26 | case "$1" in |
27 | collect) | 27 | collect) |
28 | rm -f $STATDIR/* | 28 | rm -f $STATDIR/* |
29 | 29 | ||
30 | STARTTIME=`date +%s` | 30 | STARTTIME=`date +%s` |
31 | IFS=":" | 31 | IFS=":" |
32 | 32 | ||
33 | while true; do | 33 | while true; do |
34 | NOW=`date +%s` | 34 | NOW=`date +%s` |
35 | RELAT=$[$NOW-$STARTTIME] | 35 | RELAT=$[$NOW-$STARTTIME] |
@@ -45,7 +45,7 @@ case "$1" in | |||
45 | # Write new stats | 45 | # Write new stats |
46 | echo $RELAT $VALUE >>"$STATDIR/$KEY.dat" | 46 | echo $RELAT $VALUE >>"$STATDIR/$KEY.dat" |
47 | echo $RELAT $PREV $VALUE >>"$STATDIR/$KEY.diff" | 47 | echo $RELAT $PREV $VALUE >>"$STATDIR/$KEY.diff" |
48 | 48 | ||
49 | done | 49 | done |
50 | sleep $SLEEP | 50 | sleep $SLEEP |
51 | done | 51 | done |
@@ -61,13 +61,13 @@ case "$1" in | |||
61 | rm "$FILENAME.png" | 61 | rm "$FILENAME.png" |
62 | fi | 62 | fi |
63 | done | 63 | done |
64 | 64 | ||
65 | # Plot diff | 65 | # Plot diff |
66 | ls -1 $STATDIR/*.diff | while read FILENAME; do | 66 | ls -1 $STATDIR/*.diff | while read FILENAME; do |
67 | BASENAME=`basename "$FILENAME" | sed -e "s/ *\..*//g"` | 67 | BASENAME=`basename "$FILENAME" | sed -e "s/ *\..*//g"` |
68 | echo "set terminal png;set output '$FILENAME.png';set title '$BASENAME - diff';plot '$FILENAME' using (\$1/60):(\$3-\$2) title '' with lines;" | nice gnuplot 2> $TMP | 68 | echo "set terminal png;set output '$FILENAME.png';set title '$BASENAME - diff';plot '$FILENAME' using (\$1/60):(\$3-\$2) title '' with lines;" | nice gnuplot 2> $TMP |
69 | EC=`cat $TMP | grep "empty" | grep "Warning" | wc -l` | 69 | EC=`cat $TMP | grep "empty" | grep "Warning" | wc -l` |
70 | if test $EC -ge 1 | 70 | if test $EC -ge 1 |
71 | then | 71 | then |
72 | rm "$FILENAME.png" | 72 | rm "$FILENAME.png" |
73 | fi | 73 | fi |
@@ -80,7 +80,5 @@ case "$1" in | |||
80 | *) | 80 | *) |
81 | echo $"Usage: $0 {collect|plot|view}" | 81 | echo $"Usage: $0 {collect|plot|view}" |
82 | exit 1 | 82 | exit 1 |
83 | |||
84 | esac | ||
85 | 83 | ||
86 | 84 | esac | |
diff --git a/contrib/vagrant/Vagrantfile b/contrib/vagrant/Vagrantfile index d6b671b24..de7f07ed5 100644 --- a/contrib/vagrant/Vagrantfile +++ b/contrib/vagrant/Vagrantfile | |||
@@ -34,7 +34,7 @@ Vagrant.configure(2) do |config| | |||
34 | config.cache.scope = :box | 34 | config.cache.scope = :box |
35 | end | 35 | end |
36 | 36 | ||
37 | # use http proxy if avaiable | 37 | # use http proxy if available |
38 | if ENV['http_proxy'] && Vagrant.has_plugin?("vagrant-proxyconf") | 38 | if ENV['http_proxy'] && Vagrant.has_plugin?("vagrant-proxyconf") |
39 | config.proxy.http = "$http_proxy" | 39 | config.proxy.http = "$http_proxy" |
40 | config.proxy.https = "$https_proxy" | 40 | config.proxy.https = "$https_proxy" |
diff --git a/doc/handbook/chapters/developer.texi b/doc/handbook/chapters/developer.texi index 1bf7a7b24..7546f7ac7 100644 --- a/doc/handbook/chapters/developer.texi +++ b/doc/handbook/chapters/developer.texi | |||
@@ -8885,7 +8885,7 @@ block is more recent during the store operation. | |||
8885 | 8885 | ||
8886 | 8886 | ||
8887 | The REVOCATION subsystem is responsible for key revocation of Egos. | 8887 | The REVOCATION subsystem is responsible for key revocation of Egos. |
8888 | If a user learns that theis private key has been compromised or has lost | 8888 | If a user learns that their private key has been compromised or has lost |
8889 | it, they can use the REVOCATION system to inform all of the other users | 8889 | it, they can use the REVOCATION system to inform all of the other users |
8890 | that their private key is no longer valid. | 8890 | that their private key is no longer valid. |
8891 | The subsystem thus includes ways to query for the validity of keys and to | 8891 | The subsystem thus includes ways to query for the validity of keys and to |
@@ -9782,61 +9782,61 @@ attempt to retransmit them. | |||
9782 | @node MESSENGER Subsystem | 9782 | @node MESSENGER Subsystem |
9783 | @section MESSENGER Subsystem | 9783 | @section MESSENGER Subsystem |
9784 | 9784 | ||
9785 | The MESSENGER subsystem is responsible for secure end-to-end communication in | 9785 | The MESSENGER subsystem is responsible for secure end-to-end communication in |
9786 | groups of nodes in the GNUnet overlay network. MESSENGER builds on the CADET | 9786 | groups of nodes in the GNUnet overlay network. MESSENGER builds on the CADET |
9787 | subsystem which provides a reliable and secure end-to-end communication between | 9787 | subsystem which provides a reliable and secure end-to-end communication between |
9788 | the nodes inside of these groups. | 9788 | the nodes inside of these groups. |
9789 | 9789 | ||
9790 | Additionally to the CADET security benefits, MESSENGER provides following | 9790 | Additionally to the CADET security benefits, MESSENGER provides following |
9791 | properties designed for application level usage: | 9791 | properties designed for application level usage: |
9792 | 9792 | ||
9793 | @itemize @bullet | 9793 | @itemize @bullet |
9794 | @item MESSENGER provides integrity by signing the messages with the users | 9794 | @item MESSENGER provides integrity by signing the messages with the users |
9795 | provided ego | 9795 | provided ego |
9796 | @item MESSENGER adds (optional) forward secrecy by replacing the key pair of the | 9796 | @item MESSENGER adds (optional) forward secrecy by replacing the key pair of the |
9797 | used ego and signing the propagation of the new one with old one (chaining | 9797 | used ego and signing the propagation of the new one with old one (chaining |
9798 | egos) | 9798 | egos) |
9799 | @item MESSENGER provides verification of a original sender by checking against | 9799 | @item MESSENGER provides verification of a original sender by checking against |
9800 | all used egos from a member which are currently in active use (active use | 9800 | all used egos from a member which are currently in active use (active use |
9801 | depends on the state of a member session) | 9801 | depends on the state of a member session) |
9802 | @item MESSENGER offsers (optional) decentralized message forwarding between all | 9802 | @item MESSENGER offsers (optional) decentralized message forwarding between all |
9803 | nodes in a group to improve availability and prevent MITM-attacks | 9803 | nodes in a group to improve availability and prevent MITM-attacks |
9804 | @item MESSENGER handles new connections and disconnections from nodes in the | 9804 | @item MESSENGER handles new connections and disconnections from nodes in the |
9805 | group by reconnecting them preserving an efficient structure for message | 9805 | group by reconnecting them preserving an efficient structure for message |
9806 | distribution (ensuring availability and accountablity) | 9806 | distribution (ensuring availability and accountablity) |
9807 | @item MESSENGER provides replay protection (messages can be uniquely identified | 9807 | @item MESSENGER provides replay protection (messages can be uniquely identified |
9808 | via SHA-512, include a timestamp and the hash of the last message) | 9808 | via SHA-512, include a timestamp and the hash of the last message) |
9809 | @item MESSENGER allows detection for dropped messages by chaining them (messages | 9809 | @item MESSENGER allows detection for dropped messages by chaining them (messages |
9810 | refer to the last message by their hash) improving accountability | 9810 | refer to the last message by their hash) improving accountability |
9811 | @item MESSENGER allows requesting messages from other peers explicitly to ensure | 9811 | @item MESSENGER allows requesting messages from other peers explicitly to ensure |
9812 | availability | 9812 | availability |
9813 | @item MESSENGER provides confidentiality by padding messages to few different | 9813 | @item MESSENGER provides confidentiality by padding messages to few different |
9814 | sizes (512 bytes, 4096 bytes, 32768 bytes and maximal message size from | 9814 | sizes (512 bytes, 4096 bytes, 32768 bytes and maximal message size from |
9815 | CADET) | 9815 | CADET) |
9816 | @item MESSENGER adds (optional) confidentiality with ECDHE to exchange and use | 9816 | @item MESSENGER adds (optional) confidentiality with ECDHE to exchange and use |
9817 | symmetric encryption, encrypting with both AES-256 and Twofish but | 9817 | symmetric encryption, encrypting with both AES-256 and Twofish but |
9818 | allowing only selected members to decrypt (using the receivers ego for | 9818 | allowing only selected members to decrypt (using the receivers ego for |
9819 | ECDHE) | 9819 | ECDHE) |
9820 | @end itemize | 9820 | @end itemize |
9821 | 9821 | ||
9822 | Also MESSENGER provides multiple features with privacy in mind: | 9822 | Also MESSENGER provides multiple features with privacy in mind: |
9823 | 9823 | ||
9824 | @itemize @bullet | 9824 | @itemize @bullet |
9825 | @item MESSENGER allows deleting messages from all peers in the group by the | 9825 | @item MESSENGER allows deleting messages from all peers in the group by the |
9826 | original sender (uses the MESSENGER provided verification) | 9826 | original sender (uses the MESSENGER provided verification) |
9827 | @item MESSENGER allows using the publicly known anonymous ego instead of any | 9827 | @item MESSENGER allows using the publicly known anonymous ego instead of any |
9828 | unique identifying ego | 9828 | unique identifying ego |
9829 | @item MESSENGER allows your node to decide between acting as host of the used | 9829 | @item MESSENGER allows your node to decide between acting as host of the used |
9830 | messaging room (sharing your peer's identity with all nodes in the group) | 9830 | messaging room (sharing your peer's identity with all nodes in the group) |
9831 | or acting as guest (sharing your peer's identity only with the nodes you | 9831 | or acting as guest (sharing your peer's identity only with the nodes you |
9832 | explicitly open a connection to) | 9832 | explicitly open a connection to) |
9833 | @item MESSENGER handles members independently of the peer's identity making | 9833 | @item MESSENGER handles members independently of the peer's identity making |
9834 | forwarded messages indistinguishable from directly received ones ( | 9834 | forwarded messages indistinguishable from directly received ones ( |
9835 | complicating the tracking of messages and identifying its origin) | 9835 | complicating the tracking of messages and identifying its origin) |
9836 | @item MESSENGER allows names of members being not unique (also names are | 9836 | @item MESSENGER allows names of members being not unique (also names are |
9837 | optional) | 9837 | optional) |
9838 | @item MESSENGER does not include information about the selected receiver of an | 9838 | @item MESSENGER does not include information about the selected receiver of an |
9839 | explicitly encrypted message in its header, complicating it for other | 9839 | explicitly encrypted message in its header, complicating it for other |
9840 | members to draw conclusions from communication partners | 9840 | members to draw conclusions from communication partners |
9841 | @end itemize | 9841 | @end itemize |
9842 | 9842 | ||
@@ -9848,71 +9848,71 @@ Also MESSENGER provides multiple features with privacy in mind: | |||
9848 | @node libgnunetmessenger | 9848 | @node libgnunetmessenger |
9849 | @subsection libgnunetmessenger | 9849 | @subsection libgnunetmessenger |
9850 | 9850 | ||
9851 | The MESSENGER API (defined in @file{gnunet_messenger_service.h}) allows P2P | 9851 | The MESSENGER API (defined in @file{gnunet_messenger_service.h}) allows P2P |
9852 | applications built using GNUnet to communicate with specified kinds of messages | 9852 | applications built using GNUnet to communicate with specified kinds of messages |
9853 | in a group. It provides applications the ability to send and receive encrypted | 9853 | in a group. It provides applications the ability to send and receive encrypted |
9854 | messages to any group of peers participating in GNUnet in a decentralized way ( | 9854 | messages to any group of peers participating in GNUnet in a decentralized way ( |
9855 | without even knowing all peers's identities). | 9855 | without even knowing all peers's identities). |
9856 | 9856 | ||
9857 | MESSENGER delivers messages to other peers in "rooms". A room uses a variable | 9857 | MESSENGER delivers messages to other peers in "rooms". A room uses a variable |
9858 | amount of CADET "channels" which will all be used for message distribution. Each | 9858 | amount of CADET "channels" which will all be used for message distribution. Each |
9859 | channel can represent an outgoing connection opened by entering a room with | 9859 | channel can represent an outgoing connection opened by entering a room with |
9860 | @code{GNUNET_MESSENGER_enter_room} or an incoming connection if the room was | 9860 | @code{GNUNET_MESSENGER_enter_room} or an incoming connection if the room was |
9861 | opened before via @code{GNUNET_MESSENGER_open_room}. | 9861 | opened before via @code{GNUNET_MESSENGER_open_room}. |
9862 | 9862 | ||
9863 | @image{images/messenger_room,6in,,Room structure} | 9863 | @image{images/messenger_room,6in,,Room structure} |
9864 | 9864 | ||
9865 | To enter a room you have to specify the "door" (peer's identity of a peer which | 9865 | To enter a room you have to specify the "door" (peer's identity of a peer which |
9866 | has opened the room) and the key of the room (which is identical to a CADET | 9866 | has opened the room) and the key of the room (which is identical to a CADET |
9867 | "port"). To open a room you have to specify only the key to use. When opening a | 9867 | "port"). To open a room you have to specify only the key to use. When opening a |
9868 | room you automatically distribute a PEER-message sharing your peer's identity in | 9868 | room you automatically distribute a PEER-message sharing your peer's identity in |
9869 | the room. | 9869 | the room. |
9870 | 9870 | ||
9871 | Entering or opening a room can also be combined in any order. In any case you | 9871 | Entering or opening a room can also be combined in any order. In any case you |
9872 | will automatically get a unique member ID and send a JOIN-message notifying | 9872 | will automatically get a unique member ID and send a JOIN-message notifying |
9873 | others about your entry and your public key from your selected ego. | 9873 | others about your entry and your public key from your selected ego. |
9874 | 9874 | ||
9875 | The ego can be selected by name with the initial @code{GNUNET_MESSENGER_connect} | 9875 | The ego can be selected by name with the initial @code{GNUNET_MESSENGER_connect} |
9876 | besides setting a (identity-)callback for each change/confirmation of the used | 9876 | besides setting a (identity-)callback for each change/confirmation of the used |
9877 | ego and a (message-)callback which gets called every time a message gets sent or | 9877 | ego and a (message-)callback which gets called every time a message gets sent or |
9878 | received in the room. Once the identity-callback got called you can check your | 9878 | received in the room. Once the identity-callback got called you can check your |
9879 | used ego with @code{GNUNET_MESSENGER_get_key} providing only its public key. The | 9879 | used ego with @code{GNUNET_MESSENGER_get_key} providing only its public key. The |
9880 | function returns NULL if the anonymous ego is used. If the ego should be | 9880 | function returns NULL if the anonymous ego is used. If the ego should be |
9881 | replaced with a newly generated one, you can use @code{GNUNET_MESSENGER_update} | 9881 | replaced with a newly generated one, you can use @code{GNUNET_MESSENGER_update} |
9882 | to ensure proper chaining of used egos. | 9882 | to ensure proper chaining of used egos. |
9883 | 9883 | ||
9884 | Also once the identity-callback got called you can check your used name with | 9884 | Also once the identity-callback got called you can check your used name with |
9885 | @code{GNUNET_MESSENGER_get_name} and potentially change or set a name via | 9885 | @code{GNUNET_MESSENGER_get_name} and potentially change or set a name via |
9886 | @code{GNUNET_MESSENGER_set_name}. A name is for example required to create a new | 9886 | @code{GNUNET_MESSENGER_set_name}. A name is for example required to create a new |
9887 | ego with @code{GNUNET_MESSENGER_update}. Also any change in ego or name will | 9887 | ego with @code{GNUNET_MESSENGER_update}. Also any change in ego or name will |
9888 | automatically be distributed in the room with a NAME- or KEY-message | 9888 | automatically be distributed in the room with a NAME- or KEY-message |
9889 | respectively. | 9889 | respectively. |
9890 | 9890 | ||
9891 | To send a message a message inside of a room you can use | 9891 | To send a message a message inside of a room you can use |
9892 | @code{GNUNET_MESSENGER_send_message}. If you specify a selected contact as | 9892 | @code{GNUNET_MESSENGER_send_message}. If you specify a selected contact as |
9893 | receiver, the message gets encrypted automatically and will be sent as PRIVATE- | 9893 | receiver, the message gets encrypted automatically and will be sent as PRIVATE- |
9894 | message instead. | 9894 | message instead. |
9895 | 9895 | ||
9896 | To request a potentially missed message or to get a specific message after its | 9896 | To request a potentially missed message or to get a specific message after its |
9897 | original call of the message-callback, you can use | 9897 | original call of the message-callback, you can use |
9898 | @code{GNUNET_MESSENGER_get_message}. Additionally once a message was distributed | 9898 | @code{GNUNET_MESSENGER_get_message}. Additionally once a message was distributed |
9899 | to application level and the message-callback got called, you can get the | 9899 | to application level and the message-callback got called, you can get the |
9900 | contact respresenting a message's sender respectively with | 9900 | contact respresenting a message's sender respectively with |
9901 | @code{GNUNET_MESSENGER_get_sender}. This allows getting name and the public key | 9901 | @code{GNUNET_MESSENGER_get_sender}. This allows getting name and the public key |
9902 | of any sender currently in use with @code{GNUNET_MESSENGER_contact_get_name} | 9902 | of any sender currently in use with @code{GNUNET_MESSENGER_contact_get_name} |
9903 | and @code{GNUNET_MESSENGER_contact_get_key}. It is also possible to iterate | 9903 | and @code{GNUNET_MESSENGER_contact_get_key}. It is also possible to iterate |
9904 | through all current members of a room with | 9904 | through all current members of a room with |
9905 | @code{GNUNET_MESSENGER_iterate_members} using a callback. | 9905 | @code{GNUNET_MESSENGER_iterate_members} using a callback. |
9906 | 9906 | ||
9907 | To leave a room you can use @code{GNUNET_MESSENGER_close_room} which will also | 9907 | To leave a room you can use @code{GNUNET_MESSENGER_close_room} which will also |
9908 | close the rooms connections once all applications on the same peer have left | 9908 | close the rooms connections once all applications on the same peer have left |
9909 | the room. Leaving a room will also send a LEAVE-message closing a member session | 9909 | the room. Leaving a room will also send a LEAVE-message closing a member session |
9910 | on all connected peers before any connection will be closed. Leaving a room is | 9910 | on all connected peers before any connection will be closed. Leaving a room is |
9911 | however not required for any application to keep your member session open | 9911 | however not required for any application to keep your member session open |
9912 | between multiple sessions of the actual application. | 9912 | between multiple sessions of the actual application. |
9913 | 9913 | ||
9914 | Finally, when an application no longer wants to use CADET, it should call | 9914 | Finally, when an application no longer wants to use CADET, it should call |
9915 | @code{GNUNET_MESSENGER_disconnect}. You don't have to explicitly close the used | 9915 | @code{GNUNET_MESSENGER_disconnect}. You don't have to explicitly close the used |
9916 | rooms or leave them. | 9916 | rooms or leave them. |
9917 | 9917 | ||
9918 | Here is a little summary to the kinds of messages you can send manually: | 9918 | Here is a little summary to the kinds of messages you can send manually: |
@@ -9928,33 +9928,33 @@ Here is a little summary to the kinds of messages you can send manually: | |||
9928 | @node MERGE-message | 9928 | @node MERGE-message |
9929 | @subsubsection MERGE-message | 9929 | @subsubsection MERGE-message |
9930 | 9930 | ||
9931 | MERGE-messages will generally be sent automatically to reduce the amount of | 9931 | MERGE-messages will generally be sent automatically to reduce the amount of |
9932 | parallel chained messages. This is necessary to close a member session for | 9932 | parallel chained messages. This is necessary to close a member session for |
9933 | example. You can also send MERGE-messages manually if required to merge two | 9933 | example. You can also send MERGE-messages manually if required to merge two |
9934 | chains of messages. | 9934 | chains of messages. |
9935 | 9935 | ||
9936 | @node INVITE-message | 9936 | @node INVITE-message |
9937 | @subsubsection INVITE-message | 9937 | @subsubsection INVITE-message |
9938 | 9938 | ||
9939 | INVITE-messages can be used to invite other members in a room to a different | 9939 | INVITE-messages can be used to invite other members in a room to a different |
9940 | room, sharing one potential door and the required key to enter the room. This | 9940 | room, sharing one potential door and the required key to enter the room. This |
9941 | kind of message is typically sent as encrypted PRIVATE-message to selected | 9941 | kind of message is typically sent as encrypted PRIVATE-message to selected |
9942 | members because it doesn't make much sense to invite all members from one room | 9942 | members because it doesn't make much sense to invite all members from one room |
9943 | to another considering a rooms key doesn't specify its usage. | 9943 | to another considering a rooms key doesn't specify its usage. |
9944 | 9944 | ||
9945 | @node TEXT-message | 9945 | @node TEXT-message |
9946 | @subsubsection TEXT-message | 9946 | @subsubsection TEXT-message |
9947 | 9947 | ||
9948 | TEXT-messages can be used to send simple text-based messages and should be | 9948 | TEXT-messages can be used to send simple text-based messages and should be |
9949 | considered as being in readable form without complex decoding. The text has to | 9949 | considered as being in readable form without complex decoding. The text has to |
9950 | end with a NULL-terminator character and should be in UTF-8 encoding for most | 9950 | end with a NULL-terminator character and should be in UTF-8 encoding for most |
9951 | compatibility. | 9951 | compatibility. |
9952 | 9952 | ||
9953 | @node FILE-message | 9953 | @node FILE-message |
9954 | @subsubsection FILE-message | 9954 | @subsubsection FILE-message |
9955 | 9955 | ||
9956 | FILE-messages can be used to share files inside of a room. They do not contain | 9956 | FILE-messages can be used to share files inside of a room. They do not contain |
9957 | the actual file being shared but its original hash, filename, URI to download | 9957 | the actual file being shared but its original hash, filename, URI to download |
9958 | the file and a symmetric key to decrypt the downloaded file. | 9958 | the file and a symmetric key to decrypt the downloaded file. |
9959 | 9959 | ||
9960 | It is recommended to use the FS subsystem and the FILE-messages in combination. | 9960 | It is recommended to use the FS subsystem and the FILE-messages in combination. |
@@ -9962,30 +9962,29 @@ It is recommended to use the FS subsystem and the FILE-messages in combination. | |||
9962 | @node DELETE-message | 9962 | @node DELETE-message |
9963 | @subsubsection DELETE-message | 9963 | @subsubsection DELETE-message |
9964 | 9964 | ||
9965 | DELETE-messages can be used to delete messages selected with its hash. You can | 9965 | DELETE-messages can be used to delete messages selected with its hash. You can |
9966 | also select any custom delay relative to the time of sending the DELETE-message. | 9966 | also select any custom delay relative to the time of sending the DELETE-message. |
9967 | Deletion will only be processed on each peer in a room if the sender is | 9967 | Deletion will only be processed on each peer in a room if the sender is |
9968 | authorized. | 9968 | authorized. |
9969 | 9969 | ||
9970 | The only information of a deleted message which being kept will be the chained | 9970 | The only information of a deleted message which being kept will be the chained |
9971 | hashes connecting the message graph for potential traversion. For example the | 9971 | hashes connecting the message graph for potential traversion. For example the |
9972 | check for completion of a member session requires this information. | 9972 | check for completion of a member session requires this information. |
9973 | 9973 | ||
9974 | @node Member sessions | 9974 | @node Member sessions |
9975 | @subsection Member sessions | 9975 | @subsection Member sessions |
9976 | 9976 | ||
9977 | A member session is a triple of the room key, the member ID and the public key | 9977 | A member session is a triple of the room key, the member ID and the public key |
9978 | of the member's ego. Member sessions allow that a member can change their ID or | 9978 | of the member's ego. Member sessions allow that a member can change their ID or |
9979 | their ego once at a time without losing the ability to delete old messages or | 9979 | their ego once at a time without losing the ability to delete old messages or |
9980 | identifying the original sender of a message. On every change of ID or EGO a | 9980 | identifying the original sender of a message. On every change of ID or EGO a |
9981 | session will be marked as closed. So every session chain will only contain one | 9981 | session will be marked as closed. So every session chain will only contain one |
9982 | open session with the current ID and public key. | 9982 | open session with the current ID and public key. |
9983 | 9983 | ||
9984 | If a session is marked as closed the MESSENGER service will check from the first | 9984 | If a session is marked as closed the MESSENGER service will check from the first |
9985 | message opening a session to its last one closing the session for completion. If | 9985 | message opening a session to its last one closing the session for completion. If |
9986 | a the service can confirm that there is no message still missing which was sent | 9986 | a the service can confirm that there is no message still missing which was sent |
9987 | from the closed member session, it will be marked as completed. | 9987 | from the closed member session, it will be marked as completed. |
9988 | 9988 | ||
9989 | A completed member session is not able to verify any incoming message to ensure | 9989 | A completed member session is not able to verify any incoming message to ensure |
9990 | forward secrecy preventing others from using old stolen egos. | 9990 | forward secrecy preventing others from using old stolen egos. |
9991 | |||
diff --git a/doc/handbook/chapters/installation.texi b/doc/handbook/chapters/installation.texi index 24431e20f..54fb3f486 100644 --- a/doc/handbook/chapters/installation.texi +++ b/doc/handbook/chapters/installation.texi | |||
@@ -1533,7 +1533,7 @@ Now restart your webserver and your peer... | |||
1533 | @subsection Blacklisting peers | 1533 | @subsection Blacklisting peers |
1534 | 1534 | ||
1535 | Transport service supports to deny connecting to a specific peer of to a | 1535 | Transport service supports to deny connecting to a specific peer of to a |
1536 | specific peer with a specific transport plugin using te blacklisting | 1536 | specific peer with a specific transport plugin using the blacklisting |
1537 | component of transport service. With@ blacklisting it is possible to deny | 1537 | component of transport service. With@ blacklisting it is possible to deny |
1538 | connections to specific peers of@ to use a specific plugin to a specific | 1538 | connections to specific peers of@ to use a specific plugin to a specific |
1539 | peer. Peers can be blacklisted using@ the configuration or a blacklist | 1539 | peer. Peers can be blacklisted using@ the configuration or a blacklist |
@@ -1560,7 +1560,7 @@ To blacklist connections to P565... on peer AG2P... using all plugins add: | |||
1560 | P565723JO1C2HSN6J29TAQ22MN6CI8HTMUU55T0FUQG4CMDGGEQ8UCNBKUMB94GC8R9G4FB2SF9LDOBAJ6AMINBP4JHHDD6L7VD801G = | 1560 | P565723JO1C2HSN6J29TAQ22MN6CI8HTMUU55T0FUQG4CMDGGEQ8UCNBKUMB94GC8R9G4FB2SF9LDOBAJ6AMINBP4JHHDD6L7VD801G = |
1561 | @end example | 1561 | @end example |
1562 | 1562 | ||
1563 | You can also add a blacklist client usign the blacklist API. On a | 1563 | You can also add a blacklist client using the blacklist API. On a |
1564 | blacklist check, blacklisting first checks internally if the peer is | 1564 | blacklist check, blacklisting first checks internally if the peer is |
1565 | blacklisted and if not, it asks the blacklisting clients. Clients are | 1565 | blacklisted and if not, it asks the blacklisting clients. Clients are |
1566 | asked if it is OK to connect to a peer ID, the plugin is omitted. | 1566 | asked if it is OK to connect to a peer ID, the plugin is omitted. |
diff --git a/doc/man/gnunet-gns.1 b/doc/man/gnunet-gns.1 index 5595981b0..de48369f5 100644 --- a/doc/man/gnunet-gns.1 +++ b/doc/man/gnunet-gns.1 | |||
@@ -64,7 +64,7 @@ Resolve the specified name using the GNU Name System. | |||
64 | .It Fl T Ar TIMEOUT | Fl -timeout= Ns Ar TIMEOUT | 64 | .It Fl T Ar TIMEOUT | Fl -timeout= Ns Ar TIMEOUT |
65 | How much time to wait for a resolution to finish. | 65 | How much time to wait for a resolution to finish. |
66 | Example: "5s" for 5 seconds or "3m" for 3 minutes. | 66 | Example: "5s" for 5 seconds or "3m" for 3 minutes. |
67 | Defaults to "forver" (No timeout). | 67 | Defaults to "forever" (No timeout). |
68 | .It Fl v | -version | 68 | .It Fl v | -version |
69 | Print GNUnet version number. | 69 | Print GNUnet version number. |
70 | .El | 70 | .El |
diff --git a/doc/man/gnunet-testbed-profiler.1 b/doc/man/gnunet-testbed-profiler.1 index b39544641..d079609ad 100644 --- a/doc/man/gnunet-testbed-profiler.1 +++ b/doc/man/gnunet-testbed-profiler.1 | |||
@@ -46,7 +46,7 @@ is a command line profiling driver for the testbed. | |||
46 | .It Fl c Ar FILENAME | Fl -config= Ns Ar FILENAME | 46 | .It Fl c Ar FILENAME | Fl -config= Ns Ar FILENAME |
47 | Use the configuration file FILENAME. | 47 | Use the configuration file FILENAME. |
48 | .It Fl e Ar COUNT | Fl -num-errors= Ns Ar COUNT | 48 | .It Fl e Ar COUNT | Fl -num-errors= Ns Ar COUNT |
49 | Tolerate COUNT number of continious timeout failures. | 49 | Tolerate COUNT number of continuous timeout failures. |
50 | .It Fl H Ar FILENAME | Fl -hosts= Ns Ar FILENAME | 50 | .It Fl H Ar FILENAME | Fl -hosts= Ns Ar FILENAME |
51 | Name of the file with the login information for the testbed. | 51 | Name of the file with the login information for the testbed. |
52 | .It Fl h | -help | 52 | .It Fl h | -help |
diff --git a/doc/man/gnunet-timeout.1 b/doc/man/gnunet-timeout.1 index a36141c36..85ecc88c1 100644 --- a/doc/man/gnunet-timeout.1 +++ b/doc/man/gnunet-timeout.1 | |||
@@ -35,7 +35,7 @@ | |||
35 | .Sh DESCRIPTION | 35 | .Sh DESCRIPTION |
36 | .Nm | 36 | .Nm |
37 | can be used to run another process with a timeout. | 37 | can be used to run another process with a timeout. |
38 | It is provided because the standard "timout" utility may not be available on all platforms. | 38 | It is provided because the standard "timeout" utility may not be available on all platforms. |
39 | .Sh SEE ALSO | 39 | .Sh SEE ALSO |
40 | .Xr timeout 1 | 40 | .Xr timeout 1 |
41 | .sp | 41 | .sp |
diff --git a/doc/man/gnunet.conf.5.in b/doc/man/gnunet.conf.5.in index 116e7de3b..19136b849 100644 --- a/doc/man/gnunet.conf.5.in +++ b/doc/man/gnunet.conf.5.in | |||
@@ -54,7 +54,7 @@ encountered. | |||
54 | .It | 54 | .It |
55 | A section contains a number of options of the form "OPTION=VALUE". | 55 | A section contains a number of options of the form "OPTION=VALUE". |
56 | .It | 56 | .It |
57 | Whitespace surounding the "=" token is striped out, in other words | 57 | Whitespace surrounding the "=" token is striped out, in other words |
58 | "OPTION = VALUE" and "OPTION=VALUE" are treated equal. | 58 | "OPTION = VALUE" and "OPTION=VALUE" are treated equal. |
59 | .It | 59 | .It |
60 | Empty lines and lines beginning with a "#" are treated as comments. | 60 | Empty lines and lines beginning with a "#" are treated as comments. |
@@ -166,7 +166,7 @@ Set to NO if this is a system service. | |||
166 | In the following sections the absence of a default value is either | 166 | In the following sections the absence of a default value is either |
167 | expressed as "Default value:" followed by nothing, or the lack of this line. | 167 | expressed as "Default value:" followed by nothing, or the lack of this line. |
168 | .Ss ARM | 168 | .Ss ARM |
169 | .Bl -tag -width indent | 169 | .Bl -tag -width indent |
170 | .It PORT | 170 | .It PORT |
171 | Default value: 2087 | 171 | Default value: 2087 |
172 | .It HOSTNAME | 172 | .It HOSTNAME |
@@ -215,7 +215,7 @@ options differ. | |||
215 | If set to YES, ARM will only start services that are marked as per-user | 215 | If set to YES, ARM will only start services that are marked as per-user |
216 | services (and we'll expect a system user to run ARM to provide system-level | 216 | services (and we'll expect a system user to run ARM to provide system-level |
217 | services). | 217 | services). |
218 | Per-user services enable better personalization and priviledge separation and | 218 | Per-user services enable better personalization and privilege separation and |
219 | in particular ensures that personal data is stored under $HOME, which might be | 219 | in particular ensures that personal data is stored under $HOME, which might be |
220 | important in a multi-user system (or if $HOME is encrypted and | 220 | important in a multi-user system (or if $HOME is encrypted and |
221 | .Pa /var/ | 221 | .Pa /var/ |
@@ -321,7 +321,7 @@ Default value: 2.00 | |||
321 | .It 1.0 | 321 | .It 1.0 |
322 | Fair with respect to addresses without preferences. | 322 | Fair with respect to addresses without preferences. |
323 | .It > 1.0 | 323 | .It > 1.0 |
324 | The bigger, the more respect is payed to preferences. | 324 | The bigger, the more respect is paid to preferences. |
325 | .El | 325 | .El |
326 | .It PROP_STABILITY_FACTOR | 326 | .It PROP_STABILITY_FACTOR |
327 | Should we stick to existing connections are prefer to switch? | 327 | Should we stick to existing connections are prefer to switch? |
@@ -430,7 +430,7 @@ Default value: 5 min | |||
430 | Percentage of packets CADET is artificially dropping. | 430 | Percentage of packets CADET is artificially dropping. |
431 | Used for testing only! | 431 | Used for testing only! |
432 | .It ID_ANNOUNCE_TIME | 432 | .It ID_ANNOUNCE_TIME |
433 | How frequently do we usually anounce our presence in the DHT? | 433 | How frequently do we usually announce our presence in the DHT? |
434 | .Pp | 434 | .Pp |
435 | Default value: 1 h | 435 | Default value: 1 h |
436 | .It CONNECT_TIMEOUT | 436 | .It CONNECT_TIMEOUT |
diff --git a/doc/release_policy.rfc.txt b/doc/release_policy.rfc.txt index 41c98ec93..e13e72f43 100644 --- a/doc/release_policy.rfc.txt +++ b/doc/release_policy.rfc.txt | |||
@@ -7,17 +7,17 @@ social process in order to find a decision in a cooperativ and common | |||
7 | way. | 7 | way. |
8 | 8 | ||
9 | 9 | ||
10 | I. Driver | 10 | I. Driver |
11 | ========= | 11 | ========= |
12 | (What is the problem and what solution did we find?) | 12 | (What is the problem and what solution did we find?) |
13 | 13 | ||
14 | In the past it was sometimes unclear when and how the community would reach its | 14 | In the past it was sometimes unclear when and how the community would reach its |
15 | next release. Members were lacking in orientation and felt demotivated. | 15 | next release. Members were lacking in orientation and felt demotivated. |
16 | 16 | ||
17 | Another minor concern not yet analysed in depth was the expectation to show the | 17 | Another minor concern not yet analysed in depth was the expectation to show the |
18 | public that the GNUnet project is still active and making progress. With an old | 18 | public that the GNUnet project is still active and making progress. With an old |
19 | release distributed by popular linux distributions it was hard to showcase | 19 | release distributed by popular linux distributions it was hard to showcase |
20 | people the GNUnet features and encourage to participate in the project. | 20 | people the GNUnet features and encourage to participate in the project. |
21 | 21 | ||
22 | To show people how the GNUnet project is releasing its software we hereby | 22 | To show people how the GNUnet project is releasing its software we hereby |
23 | document the current release model: | 23 | document the current release model: |
@@ -55,7 +55,7 @@ document the current release model: | |||
55 | 55 | ||
56 | For further information see: https://trunkbaseddevelopment.com/ | 56 | For further information see: https://trunkbaseddevelopment.com/ |
57 | 57 | ||
58 | II. Evaluation Criteria | 58 | II. Evaluation Criteria |
59 | ======================= | 59 | ======================= |
60 | (what are criteria to interpret the results as success if we review | 60 | (what are criteria to interpret the results as success if we review |
61 | the problem and solution after a year or so) | 61 | the problem and solution after a year or so) |
@@ -74,7 +74,7 @@ code. I don't have a magic bullet to motivate you to write more tests, | |||
74 | or to improve existing tests. -CG | 74 | or to improve existing tests. -CG |
75 | 75 | ||
76 | Your argument is good. Two or three of us thought that the problem is about | 76 | Your argument is good. Two or three of us thought that the problem is about |
77 | missing releases which we feld demotivating. We thought, we were stuck | 77 | missing releases which we felt demotivating. We thought, we were stuck |
78 | somewhere. But as you state, it is us not doing the necessary work. What I | 78 | somewhere. But as you state, it is us not doing the necessary work. What I |
79 | still find useful is to document the release process. In consequence I | 79 | still find useful is to document the release process. In consequence I |
80 | changed the problem statement. -xrs | 80 | changed the problem statement. -xrs |
@@ -106,7 +106,7 @@ for improving that situation). -CG | |||
106 | With resprect to changes kept in branches the reason why I personally keep | 106 | With resprect to changes kept in branches the reason why I personally keep |
107 | changes back is because it takes very long for me to get something really | 107 | changes back is because it takes very long for me to get something really |
108 | working in C. Before that I either not worth it or I don't want to blame | 108 | working in C. Before that I either not worth it or I don't want to blame |
109 | other before not being sure it's not my fault. | 109 | other before not being sure it's not my fault. |
110 | 110 | ||
111 | Can we track branches? Can we write a little cronjob that checks for branches | 111 | Can we track branches? Can we write a little cronjob that checks for branches |
112 | that are to long undercover with the aim to recommend the responsible person | 112 | that are to long undercover with the aim to recommend the responsible person |
@@ -137,7 +137,7 @@ rewrites are happening, it is important to minimize the number of | |||
137 | branches. -CG | 137 | branches. -CG |
138 | 138 | ||
139 | Thank you for clarifying. I added the API aspect above. -xrs | 139 | Thank you for clarifying. I added the API aspect above. -xrs |
140 | 140 | ||
141 | 141 | ||
142 | IV. Doing | 142 | IV. Doing |
143 | ========= | 143 | ========= |
@@ -153,7 +153,7 @@ Let me list what I think needs doing: | |||
153 | 2) A culture of fixing "other people"'s bugs: test case failures, | 153 | 2) A culture of fixing "other people"'s bugs: test case failures, |
154 | portability issues, Mantis reports, all the non-sexy | 154 | portability issues, Mantis reports, all the non-sexy |
155 | stuff. Not the 'psycstore' was written by tg, so no | 155 | stuff. Not the 'psycstore' was written by tg, so no |
156 | need for !tg to try to fix it, or the "I use sqlite, | 156 | need for !tg to try to fix it, or the "I use sqlite, |
157 | why should I bother with postgres?"-crap I have heard | 157 | why should I bother with postgres?"-crap I have heard |
158 | too often. | 158 | too often. |
159 | 3) Improving test cases: better code coverage, more corner | 159 | 3) Improving test cases: better code coverage, more corner |
diff --git a/doc/system_specific/FROM_SOURCE b/doc/system_specific/FROM_SOURCE index 7b0ebf436..2e98ab5c0 100644 --- a/doc/system_specific/FROM_SOURCE +++ b/doc/system_specific/FROM_SOURCE | |||
@@ -204,7 +204,7 @@ $ gnunet-arm -s | |||
204 | @subsection Install the GNUnet-gtk user interface from Git | 204 | @subsection Install the GNUnet-gtk user interface from Git |
205 | 205 | ||
206 | 206 | ||
207 | Install depencies: | 207 | Install dependencies: |
208 | 208 | ||
209 | @example | 209 | @example |
210 | $ sudo apt-get install libgtk-3-dev libunique-3.0-dev libgladeui-dev \ | 210 | $ sudo apt-get install libgtk-3-dev libunique-3.0-dev libgladeui-dev \ |
@@ -866,7 +866,7 @@ This means that you have to make sure the proper tools are used in the build pro | |||
866 | For example, after installing texinfo you need to make sure the new texinfo is actually used: | 866 | For example, after installing texinfo you need to make sure the new texinfo is actually used: |
867 | 867 | ||
868 | @example | 868 | @example |
869 | $ echo 'export PATH="/usr/local/opt/texinfo/bin:$PATH"' >> ~/.bash_profile | 869 | $ echo 'export PATH="/usr/local/opt/texinfo/bin:$PATH"' >> ~/.bash_profile |
870 | @end example | 870 | @end example |
871 | 871 | ||
872 | Note: brew tells you the appropriate command when executing | 872 | Note: brew tells you the appropriate command when executing |
@@ -886,7 +886,7 @@ $ export CC=gcc-7 | |||
886 | 886 | ||
887 | You might see configure failing telling you that it ``cannot run C compiled programs.''. | 887 | You might see configure failing telling you that it ``cannot run C compiled programs.''. |
888 | In this case, you might need to open/run Xcode once and you will be prompted to | 888 | In this case, you might need to open/run Xcode once and you will be prompted to |
889 | install additonal packages. | 889 | install additional packages. |
890 | Then, you might have to manually install the command line tools from here https://developer.apple.com/download/more/ (you need an Apple ID for this). | 890 | Then, you might have to manually install the command line tools from here https://developer.apple.com/download/more/ (you need an Apple ID for this). |
891 | Install those and execute | 891 | Install those and execute |
892 | 892 | ||