chiark / gitweb /
hippotatd: do not crash on some unexpected requests
[hippotat.git] / PROTOCOL
1 Server maintains a queue of outbound packets for each user
2
3 Packets which are older than the applicable max_queue_time are discarded
4
5 Each incoming request to the server takes up to max_batch_down bytes
6 from the queue and returns them as the POST response body payload
7
8 Each incoming request contains up to max_batch_up bytes of payload.
9 It's a multipart/form-data.
10
11 Authentication: for now, plaintext password
12
13 Routing assistance: none needed; secnet polypath will DTRT
14
15 Client form parameters (multipart/form-data):
16  m              metadata, newline-separated list (text file) of
17                         client ip address (textual)
18                         password
19                         target_requests_outstanding
20                         http_timeout
21  d              data (SLIP format, with SLIP_ESC and `-' swapped)
22
23
24
25 Future nonce-based authentication:
26
27 server keeps big nonce counter for each client
28 meaning is:
29  nonce counter is most recent nonce client has sent
30 also server keeps bitmap of the previous ?64 nonces,
31  whether client has sent them
32
33 client picks.... xxx