More consistent terminology: Clients are no longer "invalid" - they are "disabled". All code and documentation changed to reflect this.
D=Bus API change: The "properties" argument was removed from the "ClientAdded" signal on interface "se.bsnet.fukt.Mandos". All code in both "mandos" and "mandos-monitor" changed to reflect this.
* mandos: Replaced "with closing(F)" with simply "with F" in all places where F is a file object. (Client.still_valid): Removed. All callers changed to look at "Client.enabled" instead. (dbus_service_property): Check for unsupported signatures with the "byte_arrays" option. (DBusObjectWithProperties.Set): - '' - (ClientHandler.handle): Use the reverse pipe to receive the "Client.enabled" attribute instead of the now-removed "Client.still_valid()" method. (ForkingMixInWithPipe): Renamed to "ForkingMixInWithPipes" (all users changed). Now also create a reverse pipe for sending data to the child process. (ForkingMixInWithPipes.add_pipe): Now takes two pipe fd's as arguments. All callers changed. (IPv6_TCPServer.handle_ipc): Take an additional "reply_fd" argument (all callers changed). Close the reply pipe when the child data pipe is closed. New "GETATTR" IPC method; will pickle client attribute and send it over the reply pipe FD. (MandosDBusService.ClientAdded): Removed "properties" argument. All emitters changed. * mandos-clients.conf.xml (DESCRIPTION, OPTIONS): Use "enabled/disabled" terminology. * mandos-ctl: Option "--is-valid" renamed to "--is-enabled". * mandos-monitor: Enable user locale. Try to log exceptions. (MandosClientPropertyCache.__init__): Removed "properties" argument. All callers changed. (UserInterface.add_new_client): Remove "properties" argument. All callers changed. Supply "logger" argument to MandosClientWidget(). (UserInterface.add_client): New "logger" argument. All callers changed. * mandos.xml (BUGS, SECURITY/CLIENTS): Use "enabled/disabled" terminology.