chiark / gitweb /
bus: add new sd_bus_creds object to encapsulate process credentials
[elogind.git] / TODO
diff --git a/TODO b/TODO
index 9cdeabbe3359a66cdced28d5850983f594a8d246..6a130ac85b47e8749d40650a06842307a90b7bde 100644 (file)
--- a/TODO
+++ b/TODO
@@ -1,5 +1,4 @@
 Bugfixes:
-
 * enabling an instance unit creates a pointless link, and
   the unit will be started with getty@getty.service:
     $ systemctl enable getty@.service
@@ -24,7 +23,7 @@ Bugfixes:
 
 Fedora 20:
 
-* external: ps should gain colums for slice and machine
+* external: ps should gain colums for slice
 
 * localed:
   - localectl: support new converted x11→console keymaps
@@ -34,8 +33,6 @@ Fedora 20:
 
 CGroup Rework Completion:
 
-* introduce "mainpid" for scopes (or maybe not?)
-
 * implement system-wide DefaultCPUAccounting=1 switch (and similar for blockio, memory?)
 
 * implement per-slice CPUFairScheduling=1 switch
@@ -46,6 +43,60 @@ CGroup Rework Completion:
 
 Features:
 
+* general: get rid of readdir_r/dirent_storage stuff, it's unnecessary on Linux
+
+* add API to clone sd_bus_message objects
+
+* sd-bus: synthesized messages should get serial number (uint32_t) -1
+
+* sd-event: allow multiple signal handlers per signal
+
+* when we detect low battery and no AC on boot, show pretty splash and refuse boot
+
+* move libasyncns into systemd as libsystemd-asyncns
+
+* calendarspec: support value ranges with ".." notation. Example: 2013-4..8-1
+
+* sd-bus: when triggering property change events, allow a NULL strv indicate that all properties listed as such are send out as changed
+
+* sd-bus: enforce signatures on response messages
+
+* sd-bus: see if we can drop more message validation on the sending side
+
+* sd-bus: introduce sd_bus_creds object and attach it to messages as well as allow querying it for names
+
+* sd-bus: support "const" properties as flag
+
+* sd-event: when a handler returns an error, just turn off its event
+  source, 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
+
+* sd-event: child pid handling: first invoke waitid(WNOHANG) and call event handler, only afterwards reap the process
+
+* sd-event: native support for watchdog stuff
+
+* machined, localed: when we try to kill an empty cgroup, generate an ESRCH call over the bus
+
+* sd-bus: SD_BUS_COMMENT() macro for inclusion in vtables, syntax inspired by gdbus
+
+* libsystemd-journal, libsystemd-login, libudev: add calls to easily attach these objects to sd-event event loops
+
+* be more careful what we export on the bus as (usec_t) 0 and (usec_t) -1
+
+* add field to transient units that indicate whether systemd or somebody else saves/restores its settings, for integration with libvirt
+
+* systemctl: rework wait filter to not require match callback
+
+* unify dispatch table in systemctl_main() and friends
+
+* bus: access policy as vtable flag
+
+* journalctl: support -M to read journal of containers and determine journal directory from root directory of container
+
+* tmpfiles: to make sure we don't delete unpacked tarballs with old timestamps right-away never delete stuff that is inside a directory with a new mtime
+
 * "systemctl mask" should find all names by which a unit is accessible
   (i.e. by scanning for symlinks to it) and link them all to /dev/null
 
@@ -56,10 +107,6 @@ Features:
 * socket-proxyd:
   - Support multiple inherited sockets mapped to different remote hosts
   - Use a nonblocking alternative to getaddrinfo
-  - Until we can start daemons directly, find a less ugly, less racy alternative than shell scripts for the second man page example.
-  - Support starting daemons directly without requiring a shell script; update man pages
-
-* optimize the cgroup propagation bits, especially unit_get_members_mask(), cgroup_context_get_mask()
 
 * "systemctl cat" or "systemctl view" command or or so, that cats the backing unit file of a service, plus its drop-ins and shows them in a pager
 
@@ -73,8 +120,6 @@ Features:
 
 * move config_parse_path_strv() out of conf-parser.c
 
-* libdsystemd-bus should expose utf8 validation calls
-
 * After coming back from hibernation reset hibernation swap partition using the /dev/snapshot ioctl APIs
 
 * If we try to find a unit via a dangling symlink, generate a clean
@@ -342,9 +387,6 @@ Features:
 * service: watchdog logic: for testing purposes allow ping, but do not require pong
 
 * journal:
-  - do not use magic msync() in src/journal/journal-file.c, just call fsync()
-      <alxchk> poettering: looks like msync just calls vfs_fsync
-      http://git.kernel.org/cgit/linux/kernel/git/torvalds/linux.git/tree/mm/msync.c#n18
   - import and delete pstore filesystem content at startup
   - journald: also get thread ID from client, plus thread name
   - journal: when waiting for journal additions in the client always sleep at least 1s or so, in order to minimize wakeups
@@ -410,8 +452,6 @@ Features:
 * deal with sendmail/postfix exclusivity
 
 * timer units:
-  - configurable jitter for timer events
-  - Adjust timers to be triggered at the same time as sd-event timers
   - timer events with system resume
   - timer units should get the ability to trigger when:
     o CLOCK_REALTIME makes jumps (TFD_TIMER_CANCEL_ON_SET)
@@ -489,6 +529,7 @@ Features:
   - nspawn: maybe add a way to drop additional caps, in addition to add additional caps
   - nspawn: maybe explicitly reset loginuid?
   - nspawn: make it work for dwalsh and shared /usr containers -- tmpfs mounts as command line parameters, selinux exec context
+  - refuses to boot containers without /etc/machine-id (OK?), and with empty /etc/machine-id (not OK).
 
 * cryptsetup:
   - cryptsetup-generator: allow specification of passwords in crypttab itself
@@ -720,10 +761,13 @@ Features:
    - Make sure ID_PATH is always exported and complete for
      network devices where possible, so we can safely rely
      on Path= matching
-   - NamePolicy= replace the current naming rules
-   - MACPolicy= support 'firmware', 'synthetic' and 'random'
    - Check if Driver= is broken, or just my driver (bcma)
 
+* sd-rtnl:
+   - replace sd_rtnl_message_append() by type-safe versions
+   - improve container support, and add support for entering containers when reading
+   - add support for more attribute types
+
 External:
 
 * dbus:
@@ -775,8 +819,6 @@ Regularly:
 
 * Use PR_SET_PROCTITLE_AREA if it becomes available in the kernel
 
-* %m in printf() instead of strerror(errno);
-
 * pahole
 
 * set_put(), hashmap_put() return values check. i.e. == 0 doesn't free()!