/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 DBUS-API

  • Committer: Teddy Hogeborn
  • Date: 2015-07-01 20:01:26 UTC
  • mto: This revision was merged to the branch mainline in revision 759.
  • Revision ID: teddy@recompile.se-20150701200126-qb3f6c3jcas2f4og
mandos-client: Try to start a plugin to add and remove a local route.

* debian/mandos-client.README.Debian: Add setting of environment
                                      variable MANDOSPLUGINHELPERDIR
                                      to command line testing
                                      mandos-client.
* mandos-client.c (raise_privileges): Moved to top of file.
                  (raise_privileges_permanently): - '' -
                  (lower_privileges): - '' -
                  (lower_privileges_permanently): - '' -
  (add_remove_local_route, add_local_route, remove_local_route): New.
  (start_mandos_communication): Set SOCK_CLOEXEC flag on socket.  Run
                                the above functions to add (and
                                remove) local route, if the conditions
                                indicates it could help.
  (run_network_hooks): Use O_DIRECTORY, O_PATH, and O_CLOEXEC flags
                       when opening network hook directory. Do
                       TEMP_FAILURE_RETRY around opening of /dev/null
                       and network hook executables.  Move redirecting
                       of stdout and stderr to as late as possible
                       before fexecve().
  (main): Use O_DIRECTORY and O_PATH when opening temporary directory.
* plugins.d/mandos-client.xml (ENVIRONMENT): Document usage of the
                                             MANDOSPLUGINHELPERDIR
                                             environment variable.

Show diffs side-by-side

added added

removed removed

Lines of Context:
5
5
This file documents the D-Bus interface to the Mandos server.
6
6
 
7
7
* Bus: System bus
8
 
  Bus name: "se.bsnet.fukt.Mandos"
 
8
  Bus name: "se.recompile.Mandos"
9
9
 
10
10
 
11
11
* Object Paths:
17
17
 
18
18
  
19
19
* Mandos Server Interface:
20
 
  Interface name: "se.bsnet.fukt.Mandos"
 
20
  Interface name: "se.recompile.Mandos"
21
21
  
22
22
** Methods:
23
23
*** GetAllClients() → (ao: Clients)
44
44
 
45
45
 
46
46
* Mandos Client Interface:
47
 
  Interface name: "se.bsnet.fukt.Mandos.Client"
 
47
  Interface name: "se.recompile.Mandos.Client"
48
48
  
49
49
** Methods
50
50
*** Approve(b: Approve) → nothing
93
93
   | Interval (a)            | t    | Read/Write | interval            |
94
94
   | LastApprovalRequest (g) | s    | Read       | N/A                 |
95
95
   | LastCheckedOK (h)       | s    | Read/Write | N/A                 |
96
 
   | LastEnabled (i)         | s    | Read       | N/A                 |
 
96
   | LastCheckerStatus (i)   | n    | Read       | N/A                 |
 
97
   | LastEnabled (j)         | s    | Read       | N/A                 |
97
98
   | Name                    | s    | Read       | (Section name)      |
98
99
   | ObjectPath              | o    | Read       | N/A                 |
99
 
   | Secret (j)              | ay   | Write      | secret (or secfile) |
 
100
   | Secret (k)              | ay   | Write      | secret (or secfile) |
100
101
   | Timeout (a)             | t    | Read/Write | timeout             |
101
102
   
102
103
   a) Represented as milliseconds.
112
113
      Disable().
113
114
   
114
115
   f) The date and time this client will be disabled, as an RFC 3339
115
 
      string, or an empty string if this has not happened.
 
116
      string, or an empty string if this is not scheduled.
116
117
   
117
118
   g) The date and time of the last approval request, as an RFC 3339
118
119
      string, or an empty string if this has not happened.
124
125
      always use an empty string when setting this property, to allow
125
126
      for possible future expansion.
126
127
   
127
 
   i) The date and time this client was last enabled, as an RFC 3339
 
128
   i) The exit status of the last checker, -1 if it did not exit
 
129
      cleanly, -2 if a checker has not yet returned.
 
130
   
 
131
   j) The date and time this client was last enabled, as an RFC 3339
128
132
      string, or an empty string if this has not happened.
129
133
   
130
 
   j) A raw byte array, not hexadecimal digits.
 
134
   k) A raw byte array, not hexadecimal digits.
131
135
 
132
136
** Signals
133
137
*** CheckerCompleted(n: Exitcode, x: Waitstatus, s: Command)
146
150
    milliseconds, depending on ApprovedByDefault.  Approve() can now
147
151
    usefully be called on this client object.
148
152
    
149
 
*** PropertyChanged(s: Property, v: Value)
150
 
    The Property on this client has changed to Value.
151
 
    
152
153
*** Rejected(s: Reason)
153
154
    This client was not given its secret for a specified Reason.
154
155
 
155
156
* Copyright
156
157
 
157
 
    Copyright © 2010-2011 Teddy Hogeborn
158
 
    Copyright © 2010-2011 Björn Påhlsson
 
158
    Copyright © 2010-2012 Teddy Hogeborn
 
159
    Copyright © 2010-2012 Björn Påhlsson
159
160
  
160
161
** License:
161
162