4
4
# Mandos Monitor - Control and monitor the Mandos server
6
# Copyright © 2008-2012 Teddy Hogeborn
7
# Copyright © 2008-2012 Björn Påhlsson
6
# Copyright © 2008-2010 Teddy Hogeborn
7
# Copyright © 2008-2010 Björn Påhlsson
9
9
# This program is free software: you can redistribute it and/or modify
10
10
# it under the terms of the GNU General Public License as published by
19
19
# You should have received a copy of the GNU General Public License
20
20
# along with this program. If not, see <http://www.gnu.org/licenses/>.
22
# Contact the authors at <mandos@recompile.se>.
22
# Contact the authors at <mandos@fukt.bsnet.se>.
25
25
from __future__ import (division, absolute_import, print_function,
93
93
>>> string_to_delta("5m 30s")
94
94
datetime.timedelta(0, 330)
96
value = datetime.timedelta(0)
97
regexp = re.compile("(\d+)([dsmhw]?)")
96
timevalue = datetime.timedelta(0)
97
regexp = re.compile("\d+[dsmhw]")
99
for num, suffix in regexp.findall(interval):
101
value += datetime.timedelta(int(num))
103
value += datetime.timedelta(0, int(num))
105
value += datetime.timedelta(0, 0, 0, 0, int(num))
107
value += datetime.timedelta(0, 0, 0, 0, 0, int(num))
109
value += datetime.timedelta(0, 0, 0, 0, 0, 0, int(num))
111
value += datetime.timedelta(0, 0, 0, int(num))
99
for s in regexp.findall(interval):
101
suffix = unicode(s[-1])
104
delta = datetime.timedelta(value)
106
delta = datetime.timedelta(0, value)
108
delta = datetime.timedelta(0, 0, 0, 0, value)
110
delta = datetime.timedelta(0, 0, 0, 0, 0, value)
112
delta = datetime.timedelta(0, 0, 0, 0, 0, 0, value)
115
except (ValueError, IndexError):
114
120
def print_clients(clients, keywords):
115
121
def valuetostring(value, keyword):
296
302
dbus.PROPERTIES_IFACE)
298
if options.checker is not None:
299
305
client.Set(client_interface, "Checker",
301
307
dbus_interface=dbus.PROPERTIES_IFACE)
302
if options.host is not None:
303
309
client.Set(client_interface, "Host", options.host,
304
310
dbus_interface=dbus.PROPERTIES_IFACE)
305
if options.interval is not None:
306
312
client.Set(client_interface, "Interval",
307
313
timedelta_to_milliseconds
308
314
(string_to_delta(options.interval)),
309
315
dbus_interface=dbus.PROPERTIES_IFACE)
310
if options.approval_delay is not None:
316
if options.approval_delay:
311
317
client.Set(client_interface, "ApprovalDelay",
312
318
timedelta_to_milliseconds
313
319
(string_to_delta(options.
314
320
approval_delay)),
315
321
dbus_interface=dbus.PROPERTIES_IFACE)
316
if options.approval_duration is not None:
322
if options.approval_duration:
317
323
client.Set(client_interface, "ApprovalDuration",
318
324
timedelta_to_milliseconds
319
325
(string_to_delta(options.
320
326
approval_duration)),
321
327
dbus_interface=dbus.PROPERTIES_IFACE)
322
if options.timeout is not None:
323
329
client.Set(client_interface, "Timeout",
324
330
timedelta_to_milliseconds
325
331
(string_to_delta(options.timeout)),
326
332
dbus_interface=dbus.PROPERTIES_IFACE)
327
if options.extended_timeout is not None:
333
if options.extended_timeout:
328
334
client.Set(client_interface, "ExtendedTimeout",
329
335
timedelta_to_milliseconds
330
336
(string_to_delta(options.extended_timeout)),
331
337
dbus_interface=dbus.PROPERTIES_IFACE)
332
if options.secret is not None:
333
339
client.Set(client_interface, "Secret",
334
dbus.ByteArray(options.secret.read()),
340
dbus.ByteArray(open(options.secret,
335
342
dbus_interface=dbus.PROPERTIES_IFACE)
336
343
if options.approved_by_default is not None:
337
344
client.Set(client_interface, "ApprovedByDefault",