chiark / gitweb /
service: actually leave watchdog enabled in the states where it matters
[elogind.git] / TODO
diff --git a/TODO b/TODO
index 253d0bf1b2ed94e1488b5c0662f4af4122b4cd65..7f56a264699e619a6a94e3d585d4c39f47e91df6 100644 (file)
--- a/TODO
+++ b/TODO
@@ -30,6 +30,8 @@ External:
 
 Features:
 
+* libsystemd-journal returns the object created as first param in sd_journal_new(), sd_bus_new() and suchlike as last...
+
 * cgroups:
   - implement system-wide DefaultCPUAccounting=1 switch (and similar for blockio, memory?)
   - implement per-slice CPUFairScheduling=1 switch
@@ -45,9 +47,11 @@ Features:
   - add field to transient units that indicate whether systemd or somebody else saves/restores its settings, for integration with libvirt
   - ensure scope units may be started only a single time
 
-* switch to SipHash for hashmaps/sets?
+* code cleanup
+  - get rid of readdir_r/dirent_storage stuff, it's unnecessary on Linux
+  - we probably should replace the left-over uses of strv_append() and replace them by strv_push() or strv_extend()
 
-* general: get rid of readdir_r/dirent_storage stuff, it's unnecessary on Linux
+* switch to SipHash for hashmaps/sets?
 
 * when we detect low battery and no AC on boot, show pretty splash and refuse boot
 
@@ -71,8 +75,6 @@ Features:
 
 * Add a new Distribute=$NUMBER key to socket units that makes use of SO_REUSEPORT to distribute network traffic on $NUMBER instances
 
-* we probably should replace the left-over uses of strv_append() and replace them by strv_push() or strv_extend()
-
 * move config_parse_path_strv() out of conf-parser.c
 
 * After coming back from hibernation reset hibernation swap partition using the /dev/snapshot ioctl APIs
@@ -112,8 +114,6 @@ Features:
   ReadOnlyDirectories=... for whitelisting files for a service.
 
 * libsystemd-bus:
-  - default policy (allow uid == 0 and our own uid)
-  - access policy as vtable flag
   - when kdbus doesn't take our message without memfds, try again with memfds
   - implement translator service
   - implement monitor logic
@@ -123,11 +123,13 @@ Features:
   - support "const" properties as flag
   - add API to clone sd_bus_message objects
   - SD_BUS_COMMENT() macro for inclusion in vtables, syntax inspired by gdbus
-  - make sd_bus_open_system_container() kdbus aware
+  - sort out error codes for sd_bus_release_name(), distuingish: successful removal from foreign name, from non-existing name
+  - kdbus: matches against source or destination pids for an "strace -p"-like feel. Problem: The PID info needs to be available in userspace too...
+  - kdbus: we need a way to distuingish messages we got due to monitoring from normal messages, since we want to bind methods only to the latter
+  - figure out what to do when fields in the kdbus header and in the payload header do not match
   - longer term:
     * priority queues
     * priority inheritance
-  - sort out error codes for sd_bus_release_name(), distuingish: successful removal from foreign name, from non-existing name
 
 * sd-event
   - allow multiple signal handlers per signal
@@ -135,8 +137,7 @@ Features:
     but do not return anything up to the event loop caller. Instead
     add parameter to sd_event_request_quit() to take retval. This way
     errors rippling upwards are the option, not the default
-  - child pid handling: first invoke waitid(WNOHANG) and call event handler, only afterwards reap the process
-  - native support for watchdog stuff
+  - event sources should not be able to keep the sd_event around unconditionally
 
 * in the final killing spree, detect processes from the root directory, and
   complain loudly if they have argv[0][0] == '@' set.