/mandos/trunk

To get this branch, use:
bzr branch http://bzr.recompile.se/loggerhead/mandos/trunk

« back to all changes in this revision

Viewing changes to network-protocol.txt

  • Committer: Teddy Hogeborn
  • Date: 2008-08-07 21:45:41 UTC
  • Revision ID: teddy@fukt.bsnet.se-20080807214541-pyg8itw6kphz1dy5
* plugbasedclient.c: Renamed to "mandos-client.c".  All users changed.

* plugins.d/mandosclient.c: Renamed to "plugins.d/password-request.c".
                            All users changed.

* plugins.d/passprompt.c: Renamed to "plugins.d/password-prompt.c".
                          All users changed.

* server.conf: Renamed to "mandos.conf".  All users changed.

* server.py: Renamed to "mandos".
  (daemon): Have default values for arguments. Caller changed.

* Makefile (distclean, mostlyclean, maintainer-clean): New aliases for
                                                       "clean".
  (check, run-client, run-server): New.

* network-protocol.txt: New.

Show diffs side-by-side

added added

removed removed

Lines of Context:
 
1
The Mandos server announces itself as a Zeroconf service of type
 
2
"_mandos._tcp". The Mandos client sends a line of text where the first
 
3
whitespace-separated field is the protocol version, which currently is
 
4
"1".  The client and server then start a TLS protocol handshake with a
 
5
slight quirk: the Mandos server program acts as a TLS "client" while
 
6
the connecting Mandos client acts as a TLS "server".  The Mandos
 
7
client must supply an OpenPGP certificate, and the fingerprint of this
 
8
certificate is used by the Mandos server to look up (in a list read
 
9
from a file at start time) which binary blob to give the client.  No
 
10
other authentication or authorization is done by the server.
 
11
 
 
12
| Mandos server   |     | Mandos client                              |
 
13
|                 |     | <Connect>                                  |
 
14
|                 | <-  | "1\r\n"                                    |
 
15
| <TLS handshake> | <-> | <TLS handshake>                            |
 
16
|                 | <-  | OpenPGP public key (part of TLS handshake) |
 
17
| <Binary blob>   | ->  |                                            |
 
18
| <Close>         |     |                                            |