/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: 2011-09-18 15:59:05 UTC
  • mfrom: (24.1.179 mandos)
  • Revision ID: teddy@fukt.bsnet.se-20110918155905-ngj2ig0yheralj1s
* DBUS-API: Document new "Expires" and "ExtendedTimeout" properties.
* README: Refer to the installed manual page more simply.
* mandos (Client.extended_timeout, Client.expires): New attributes.
  (Client.extended_timeout_milliseconds): New.
  (Client.__init__, Client.enable, Client.disable): Set new attributes.
  (Client.checked_ok): Take new "timeout" argument.
  (ClientDBus.expires): Transform into a property which sends a D-Bus
                        signal when changed.
  (ClientDBus._datetime_to_dbus): Return empty D-Bus string on None.
                                  All callers changed to use this.

  (ClientDBus.ApprovedByDefault_dbus_property,
  ClientDBus.ApprovalDelay_dbus_property,
  ClientDBus.ApprovalDuration_dbus_property,
  ClientDBus.Host_dbus_property, ClientDBus.Timeout_dbus_property,
  ClientDBus.Interval_dbus_property,
  ClientDBus.Checker_dbus_property): Bug fix: Only send D-Bus signal
                                     if new value is different.
  (ClientDBus.Timeout_dbus_property): Use new "expires" attribute.
  (ClientDBus.Expires_dbus_property,
  ClientDBus.ExtendedTimeout_dbus_property): New D-Bus properties.
  (ClientHandler.handle): Bump time using extended_timeout value.
  (main.client_defaults): Change default values of "timeout" and
                          "interval", added new default value for
                          "extended_timeout".
* mandos-clients.conf.xml (OPTIONS): Changed default values of
                                     "interval" and "timeout".  Add
                                     new "extended_timeout" option.
  (EXAMPLE): Updated default values.
* mandos-ctl: Show new "ExtendedTimeout" D-Bus property and change it
              using new "--extended-timeout" option.
* mandos-ctl.xml (SYNOPSIS, OPTIONS): Document new
                                      "--extended-timeout" option.
* mandos-monitor (MandosClientWidget.update): Use new "Expires" D-Bus
                                              property.
* mandos.xml (DESCRIPTION): Add reference to intro(8mandos) manual
                            page.
  (CHECKING): Refer to the new "extended_timeout" option in
  clients.conf.

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 Client                              |     | Mandos Server |
13
 
|--------------------------------------------+-----+---------------|
14
 
| Connect                                    |     |               |
15
 
| "1\r\n"                                    | ->  |               |
16
 
| TLS handshake                              | <-> | TLS handshake |
17
 
| OpenPGP public key (part of TLS handshake) | ->  |               |
18
 
|                                            | <-  | Binary blob   |
19
 
|                                            |     | Close         |