aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorMartin Schanzenbach <mschanzenbach@posteo.de>2021-02-03 21:24:52 +0100
committerMartin Schanzenbach <mschanzenbach@posteo.de>2021-02-03 21:24:52 +0100
commit88336bad3056f80a2bc6b82fa54646d149b9c49f (patch)
treeb531a0816bc7c738d9c353b9f7968b2c3e800b42
parent57bae3cb7c907bc28ea344f7b9165bec7d27cec8 (diff)
downloadwww-88336bad3056f80a2bc6b82fa54646d149b9c49f.tar.gz
www-88336bad3056f80a2bc6b82fa54646d149b9c49f.zip
update Gsoc page
-rw-r--r--template/gsoc.html.j278
1 files changed, 78 insertions, 0 deletions
diff --git a/template/gsoc.html.j2 b/template/gsoc.html.j2
index 5a8066f4..cb822fb5 100644
--- a/template/gsoc.html.j2
+++ b/template/gsoc.html.j2
@@ -27,6 +27,84 @@
27 27
28 28
29 <h2><a name="current" class="subnav-anchor"></a>{{ _("Ideas 2020") }}</h2> 29 <h2><a name="current" class="subnav-anchor"></a>{{ _("Ideas 2020") }}</h2>
30
31 <section>
32 <h4>Transport Next Generation (TNG): Communicator plugins</h4>
33 <p>
34 {% trans %}
35 The GNUnet team is currently working on a transport layer rewrite
36 in order to fix core issues with connectivity.
37 This new component is currently developed under the name "TNG".
38 What is currently known as "transport plugins" will in the TNG
39 be represented as "communicators".
40
41 Communicators are processes with a well defined API that allow
42 to connect peers over a specific protocol.
43 The primary protocol which are already implemented are UNIX sockets,
44 UDP sockets, and TCP sockets.
45
46 For a truly resilient network, other connectivity options such as
47 WiFi mesh, Bluetooth, HTTP(S), QUIC or even more obscure alternatives
48 such as radio are required.
49
50 In this project, the goal is to select, implement and test new
51 communicators.
52 While TNG is not yet ready, communicators can, by design, be developed
53 and tested against the current API.
54
55 We expect that this project can be worked on by multiple students
56 as there are a lot of protocols to choose from.
57 The tasks would consist of:
58 <ol>
59 <li>Deciding which communicators to implement.</li>
60 <li>Test the communicators.</li>
61 <li>Documentation.</li>
62 </ol>
63 Advantageous skills/languages/frameworks:
64 <ol>
65 <li>C</li>
66 <li>Knowledge of HTTPS, QUIC, Bluetooth or WiFi.</li>
67 </ol>
68 <br/>
69 <strong>Difficulty:</strong> Average, but depends on selected protocols.
70 <br/>
71 <strong>Mentors:</strong> Martin Schanzenbach, t3sserakt
72 {% endtrans %}
73 </p>
74 </section>
75
76 <section>
77 <h4>REST: Multi-user support</h4>
78 <p>
79 {% trans %}
80 The REST API currently only supports a single user system.
81 This is an issue as on multi-user systems, access control
82 must be enfoced on a per-user basis.
83
84 In this project, the REST service must be extended to
85 support user authentication.
86 This includes the correct handling of user context switches.
87 <ol>
88 <li>Implement user authentication.</li>
89 <li>Test the access control.</li>
90 <li>Document the changes to the REST API.</li>
91 </ol>
92 Advantageous skills/languages/frameworks:
93 <ol>
94 <li>C</li>
95 <li>Knowledge of user authentication subsystems on Linux/Unix.</li>
96 <li>REST/HTTP Authentication methods</li>
97 </ol>
98 <br/>
99 <strong>Difficulty:</strong> Easy
100 <br/>
101 <strong>Mentors:</strong> Martin Schanzenbach
102 {% endtrans %}
103 </p>
104 </section>
105
106
107
30 <section> 108 <section>
31 <h4>re:claimID/GNUnet Browser Plugin</h4> 109 <h4>re:claimID/GNUnet Browser Plugin</h4>
32 <p> 110 <p>