chiark / gitweb /
man: document sd-bus error functions
[elogind.git] / TODO
diff --git a/TODO b/TODO
index 8025169033db2cd2fa9948e0e9e1ce4408d8fc87..ed628035a71e1c0d91d8744eff9572ebd8568d65 100644 (file)
--- a/TODO
+++ b/TODO
@@ -48,11 +48,8 @@ Features:
   - ensure scope units may be started only a single time
 
 * 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()
 
-* switch to SipHash for hashmaps/sets?
-
 * when we detect low battery and no AC on boot, show pretty splash and refuse boot
 
 * move libasyncns into systemd as libsystemd-asyncns
@@ -87,8 +84,9 @@ Features:
 
 * refuse boot if /etc/os-release is missing or /etc/machine-id cannot be set up
 
-* given that logind/machined now let PID 1 do all nasty work, we can
-  probably reduce the capability set they retain substantially.
+* given that logind now lets PID 1 do all nasty work, we can
+  probably reduce the capability set it retains substantially.
+  (we need CAP_SYS_ADMIN for drmSetMaster(), so maybe not worth it)
 
 * btrfs raid assembly: some .device jobs stay stuck in the queue
 
@@ -104,8 +102,6 @@ Features:
   Maybe take a BSD lock at the disk device node and teach udev to
   check for that and suppress event handling.
 
-* document logic of auto/noauto and fail/nofail in fstab in systemd.mount or systemd-fstab-generator man page
-
 * something pulls in pcre as shared object dependency into our daemons such as hostnamed.
 
 * allow implementation of InaccessibleDirectories=/ plus
@@ -113,21 +109,26 @@ Features:
 
 * libsystemd-bus:
   - when kdbus doesn't take our message without memfds, try again with memfds
-  - implement translator service
   - implement monitor logic
-  - properly map matches with well-known names against messages with unique names
-  - when triggering property change events, allow a NULL strv indicate that all properties listed as such are send out as changed
   - see if we can drop more message validation on the sending side
-  - 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
-  - sort out error codes for sd_bus_release_name(), distuingish: successful removal from foreign name, from non-existing name
+  - systemd-bus-proxyd needs to enforce good old XML policy
+  - upload minimal kdbus policy into the kernel at boot
   - 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
-  - kdbus: when we do "systemctl daemon-reexec" the call doesn't get properly cancelled
   - longer term:
     * priority queues
     * priority inheritance
+  - check sender of response messages
+  - dbus spec updates:
+       - kdbus mapping
+       - NameLost/NameAcquired obsolete
+       - GVariant
+       - "const" properties (posted)
+  - port exit-on-idle logic to byebye ioctl
+  - make use of "drop" ioctl in pid 1 bus activation
+  - bus proxy: override unique id sender for messages from driver to match the well-known name
+  - bus driver: GetNameOwner() for "org.freedesktop.DBus" should return "org.freedesktop.DBus"
 
 * sd-event
   - allow multiple signal handlers per signal?
@@ -294,7 +295,6 @@ Features:
   - journal: sanely deal with entries which are larger than the individual file size, but where the components would fit
   - Replace utmp, wtmp, btmp, and lastlog completely with journal
   - journalctl: instead --after-cursor= maybe have a --cursor=XYZ+1 syntax?
-  - journalctl: support -M to read journal of containers and determine journal directory from root directory of container
   - tmpfiles: when applying ownership to /run/log/journal, also do this for the journal fails contained in it
   - when a kernel driver logs in a tight loop, we should ratelimit that too.
   - journald: optionally, log debug messages to /run but everything else to /var
@@ -308,11 +308,9 @@ Features:
     hence doing this via signals is not going to work.
 
 * document:
-  - document that deps in [Unit] sections ignore Alias= fileds in
+  - document that deps in [Unit] sections ignore Alias= fields in
     [Install] units of other units, unless those units are disabled
   - man: clarify that time-sync.target is not only sysv compat but also useful otherwise. Same for similar targets
-  - Document word splitting syntax for ExecStart= and friends
-  - document that units from /etc override those from /usr and /run
   - document the exit codes when services fail before they are exec()ed
   - document that service reload may be implemented as service reexec
   - document in wiki how to map ical recurrence events to systemd timer unit calendar specifications
@@ -342,7 +340,7 @@ Features:
   - rework wait filter to not require match callback
   - better error message if you run systemctl without systemd running
   - systemctl status output should should include list of triggering units and their status
-  - in systemctl list-timers show time trggering units ran last
+  - in systemctl list-timers show time triggering units ran last
 
 * unit install:
   - "systemctl mask" should find all names by which a unit is accessible
@@ -520,8 +518,6 @@ Features:
   - kill scsi_id
   - add trigger --subsystem-match=usb/usb_device device
 
-* cleanup syslog 'priority' vs. 'level' wording
-
 * when a service has the same env var set twice we actually store it twice and return that in systemctl show -p... We should only show the last setting
 
 * introduce mix of BindTo and Requisite