X-Git-Url: https://www.chiark.greenend.org.uk/ucgi/~ianmdlvl/git?p=elogind.git;a=blobdiff_plain;f=TODO;h=fa0282b7c399e56f7fc594d7b0d7cc610368d6a4;hp=7568418f4c6ac567506825b19c62eda2674e3eb3;hb=9c92ce6d67f88beb31dd6555d12ae3f632218a39;hpb=df9db010def086cefa1225d0ac071cba96d9a610 diff --git a/TODO b/TODO index 7568418f4..fa0282b7c 100644 --- a/TODO +++ b/TODO @@ -4,24 +4,12 @@ Bugfixes: * Should systemctl status \* work on all unit types, not just .service? -* enabling an instance unit creates a pointless link, and - the unit will be started with getty@getty.service: - $ systemctl enable getty@.service - ln -s '/usr/lib/systemd/system/getty@.service' '/etc/systemd/system/getty.target.wants/getty@.service' - * Dangling symlinks of .automount unit files in .wants/ directories, set up automount points even when the original .automount file did not exist anymore. Only the .mount unit was still around. * properly handle .mount unit state tracking when two mount points are stacked one on top of another on the exact same mount point. -* shorten the message to sane length: - "Cannot add dependency job for unit display-manager.service, ignoring: Unit display-manager.service - failed to load: No such file or directory. See system logs and 'systemctl status display-manager.service' for details." - -* sd_bus_unref() is broken regarding self-references and "pseudo thread-safety". - See the comment in sd_bus_unref() for more.. - External: * Fedora: when installing fedora with yum --installroot /var/run is a directory, not a symlink https://bugzilla.redhat.com/show_bug.cgi?id=975864 @@ -32,10 +20,62 @@ External: * Fedora: move kernel image to /usr/lib/modules/, kernel-install will take care of populating /boot +* Fedora: remove /etc/resolv.conf tmpfiles hack + Features: + +* libsystemd-network: + - I don't think there should be a client side object for dhcp + releases (probably not even a directory in /run for it) + +* resolved: + - IDN (?) + - DNSSEC + - LLMNR: + - do not fail daemon startup if socket is already busy (container) + - process incoming notification of conflict + - send notifications of conflict + - detect conflicts + - collect multiple responses + - jitter interval support + - watch udev initialization state + - watch local host name + - reprobe after suspend + - mDNS/DNS-SD + - avahi compat + - DNS-SD service registration from socket units + - port sd-resolve to direct bus calls + - nss module: fallback to glibc dns modules if resolved cannot be contacted + - edns0 + - dname + - cname on PTR (?) + +* Ignore .busname units on classic D-Bus boots, systemd-resolved cannot be started on kdbus + without the active policy and should get a Wants=org.freedesktop.resolve1.busname to + pull-in the policy. + +* Allow multiple ExecStart= for all Type= settings, so that we can cover rescue.service nicely + +* the resolv.conf tmpfiles line should be covered by ENABLE_NETWORKD... + +* sysusers: + - also create entries in /etc/shadow, /etc/gshadow + - allow setting the home directory of system users + +* Add a new verb "systemctl top" + +* order OnCalendar timer units after timer-sync.target if DefaultDependencies=no so that we don't trigger them prematurely + +* refuse mounting on symlinks + +* logind: allow users to kill or lock their own sessions + +* add new gpt type for btrfs volumes + * support empty /etc boots nicely: - - tmpfiles: add nice way to copy files /usr/share/factory/etc → /etc - nspawn/gpt-generator: introduce new gpt partition type for /usr + - fstab-generator: support systemd.volatile=yes|no|state on the kernel cmdline, too, similar to nspawn's --volatile= + - fstab-generator: add support for usr= in addition to root= on the kernel cmdline * generator that automatically discovers btrfs subvolumes, identifies their purpose based on some xattr on them. @@ -52,8 +92,6 @@ Features: * figure out a nice way how we can let the admin know what child/sibling unit causes cgroup membership for a specific unit -* add a kernel command line option to enable the debug shell - * journalctl: add the ability to look for the most recent process of a binary. journalctl /usr/bin/X11 --pid=-1 or so... * set NOTIFY_SOCKET also for control processes @@ -220,12 +258,6 @@ Features: - add 'set -e' to scripts in test/ - make stuff in test/ work with separate output dir -* systemctl delete x.snapshot leaves no trace in logs (at least at default level). - -* make the coredump collector tool move itself into the user's cgroup - so that the coredump is properly written to the user's own journal - file. - * seems that when we follow symlinks to units we prefer the symlink destination path over /etc and /usr. We should not do that. Instead /etc should always override /run+/usr and also any symlink @@ -400,13 +432,6 @@ Features: mode, it will never touch the RTC if the no reliable time source is active or the user did not request anything like it. -* libunwind support for coredump pattern hook, and includes this in - the message for coredumps. After all, libunwind is now capable to - unwind coredumps since a few weeks ago. This probably requires that - we have nice support for multi-line messages on display in - logs-show.c. Alternatively: use libelfutil, which seems to be the - better supported alternative. - * add libsystemd-password or so to query passwords during boot using the password agent logic * If we show an error about a unit (such as not showing up) and it has no Description string, then show a description string generated form the reverse of unit_name_mangle(). @@ -585,8 +610,6 @@ Features: * allow port=0 in .socket units -* support systemd.mask= on the kernel command line. - * recreate systemd's D-Bus private socket file on SIGUSR2 * Support --test based on current system state @@ -625,17 +648,14 @@ Features: * networkd: - add more keys to [Route] and [Address] sections - add support for more DHCPv4 options (and, longer term, other kinds of dynamic config) - - send hostname to DHCP server - add proper initrd support (in particular generate .network/.link files based on /proc/cmdline) - add reduced [Link] support to .network files - add Scope= parsing option for [Network] - properly handle routerless dhcp leases - - set lifetime on the address acquired from dhcp - - patch kernel to support module alias for tunnel device (ipip/sit/gre), - then remove remove libkmod dependency and CAP_SYS_MODULE - - add veth netdev support (c.f. http://shorewall.net/bridge-Shorewall-perl.html#veth) - - add tun/tap netdev support + - default to DHCP unicast, but make broadcast opt-in. detect devices that needs broadcast and opt-in automatically (needs kernel patch?) - add more attribute support for SIT tunnel + - work with non-ethernet devices + - add support for more bond options * networkd-wait-online: - make operstates to wait for configurable? @@ -644,6 +664,23 @@ Features: - figure out how much we can increase Maximum Message Size - export timezone information - FORCERENEW + - support RFC4702 (pass FQDN) + +* dhcp6: + - add functions to set previously stored IPv6 addresses on startup and get + them at shutdown; store them in client->ia_na + - write more test cases + - implement and do duplicate address detection, see rfc 4862, 5.4. + - implement reconfigure support, see 5.3., 15.11. and 22.20. + - implement information request, see 1.2. and 18.1.5. + - implement support for temporary adressess (IA_TA) + - implement elapsed time option + - implement dhcpv6 authentication + - investigate the usefulness of Confirm messages; i.e. are there any + situations where the link changes without any loss in carrier detection + or interface down + - some servers don't do rapid commit without a filled in IA_NA, verify + this behavior External: @@ -679,6 +716,9 @@ External: * register catalog database signature as file magic +* zsh shell completion: - should complete options, but currently + does not + Regularly: * look for close() vs. close_nointr() vs. close_nointr_nofail()