8
** TODO [#A] Wireless network hook
9
8
** TODO [#B] Use capabilities instead of seteuid().
10
9
** TODO [#B] Use struct sockaddr_storage instead of a union
11
10
** TODO [#B] Use getaddrinfo(hints=AI_NUMERICHOST) instead of inet_pton()
12
11
** TODO [#B] Use getnameinfo(serv=NULL, NI_NUMERICHOST) instead of inet_ntop()
13
12
** TODO [#B] Prefer /run/tmp over /tmp, if it exists
14
** TODO [#B] Use in_port_t instead of uint16_t for port numbers.
13
** TODO [#C] Make start_mandos_communication() take "struct server".
17
16
** TODO [#B] use scandir(3) instead of readdir(3)
35
33
** TODO handle printing for errors for plugins
36
*** Hook up stderr of plugins, buffer them, and prepend mandos pluig [plugin name]
34
*** Hook up stderr of plugins, buffer them, and prepend "Mandos Plugin [plugin name]"
37
35
** TODO [#B] use scandir(3) instead of readdir(3)
38
36
** TODO [#C] use same file name rules as run-parts(8)
39
37
** kernel command line option for debug info
40
38
** TODO [#B] Use openat()
43
** TODO Document why we ignore sigint
44
41
** TODO [#B] Log level :BUGS:
45
42
*** TODO /etc/mandos/clients.d/*.conf
46
43
Watch this directory and add/remove/update clients?
47
44
** TODO [#C] config for TXT record
48
45
** TODO Log level dbus option
49
46
SetLogLevel D-Bus call
50
** TODO Implement --foreground :BUGS:
51
[[info:standards:Option%20Table][Table of Long Options]]
52
** TODO Implement --socket
53
[[info:standards:Option%20Table][Table of Long Options]]
54
47
** TODO [#C] DBusServiceObjectUsingSuper
55
48
** TODO [#B] Global enable/disable flag
56
49
** TODO [#B] By-client countdown on number of secrets given
57
50
** TODO [#B] Support RFC 3339 time duration syntax
59
*** NeedsPassword(50) - Timeout, default disapprove
51
** D-Bus Client method NeedsPassword(50) - Timeout, default disapprove
60
52
+ SetPass(u"gazonk", True) -> Approval, persistent
61
53
+ Approve(False) -> Close client connection immediately
62
54
** TODO [#C] python-parsedatetime