]> git.ipfire.org Git - thirdparty/util-linux.git/blobdiff - Documentation/TODO
libfdisk: fix fdisk_script_get_table()
[thirdparty/util-linux.git] / Documentation / TODO
index c86f0996ead6c61ea32cdbc9076e580d007aa562..a4a8d789045e77e1062562a9f1ab34e4df007eff 100644 (file)
@@ -1,21 +1,38 @@
 
  Note that items with (!) have high priority.
 
-su/runuser:
-  - (!) implement pty container for all su/runuser session (something like
-    script(1)) to separate user from the original terminal (see CVE-2016-2779)
-
-- add functions strtime_short(), strtime_iso(), strtime_ctime(), ...
-
-- cleanup lib/path.c:
-   - always return rc from all functions
-   - introduce control struct and use openat() from top-level path 
-     (e.g. top-level is /proc, etc)
-- use lib/path.c as low-level API for lib/sysfs.c
-   - now we duplicate code in functions like {path,sysfs}_read_u32, etc. 
-   - it would be also nice to have a way how to redirect sysfs.c functions 
-     to /sys snapshots (e.g. lsblk regression tests)
-       
+col
+---
+  - use unsigned sizes for columns and lines
+  - check for limits to avoid segfaults
+  - make it more robust
+  https://github.com/karelzak/util-linux/issues/749
+
+cal
+---
+   - add option to print calendar in vertical way
+     https://github.com/karelzak/util-linux/issues/604
+   - support another --reforms, see for example freebsd version
+     https://github.com/freebsd/freebsd/blob/master/usr.bin/ncal/ncal.c#L72
+
+script
+------
+   - introduce a new timing file format to record information about multiple
+     streams (stdout, stdin) and events (signals)
+
+   - add support for stdin loggin -- separated log file with raw input and timing
+     records in the timing file
+
+   - for example timing file format:
+              
+             <type> <timestamp> [<offset> | <signal> ...]
+
+            O 0.001296 256
+            S 0.001297 SIGWINCH: columns=50, lines=20
+            I 0.000010 10
+
+     O - output, S - signal, I - input
+
 
 lscpu
 -----
@@ -29,28 +46,6 @@ lsblk
     btrfs specific code to provide a better output for FS based stacks. Not sure.
     https://bugzilla.redhat.com/show_bug.cgi?id=1084453
 
-cfdisk
-------
-  - (!) add auto-sort support (sort partitions automatically) and
-    --sort={auto,never,always} command line option. This feature should be
-    enabled by default for logical partitions if we created all container (extended
-    partition) in the current session.
-      
-
-agetty
------
-  - support default issue (/etc/issue) output for agetty to make it agetty
-    usable on systems with empty /etc. 
-
-    This change is little bit controversial, because now agetty prints nothing 
-    by default and it's probably used by admins to hide information about the 
-    system to unauthorized users. We already have --noissue to disable issue 
-    output. The question is if admins use this option, "rm /etc/issue" is 
-    probably easer than modify inittab (or systemd unit file).
-
-    Maybe we can implement it by --enable-agetty-default-issue compile option and 
-    move the decision to downstream maintainers ;-)
-
 nsenter(1)
 ----------
  - read the default UID and GID from the target process.
@@ -73,18 +68,21 @@ bash completion
 libmount (mount/umount)
 -----------------------
 
- - allow to execute mount(2) in another namespace, something like:
-       mount --namespace=/proc/$n/ns/mnt  /dev/sda2 /bar
-   see https://bugzilla.redhat.com/show_bug.cgi?id=1199554 for more details.
-
- - add options to control fstab/mtab mount options usage, something like:
+ - add --onlyonce to force mount(8) to check if mountpoint is already used. Now
+   "already mounted" detection is used for --all only. The problem is if you
+   call "mount <mountpoint>" more than once for in fstab defined tmpfs (or network
+   filesystem etc.). In this case kernel does not return EBUSY, but a new instance
+   of the FS is created. https://github.com/karelzak/util-linux/issues/448
+   (... just idea, maybe wrong idea)
 
-   --options-mode={ignore,append,prepend,replace}      MNT_OMODE_{IGNORE, ...}
-   --options-source={fstab,mtab,disable}               MNT_OMODE_{FSTAB,MTAB,NOTAB}
-   --options-source-force                              MNT_OMODE_FORCE
-
-   (all this already supported by libmount)
+ - support CAP_SYS_ADMIN; for mount(2) syscall the CAP_SYS_ADMIN is good
+   enough. Unfortunately, mount(8) does more things like check for filesystem
+   type (but it's usually done by udev, so root perms are unnecessary), create
+   loop devices, write to /run/mount/utab or /etc/mtab, etc.
 
+   It would be nice to improve libmount to check for CAP_SYS_ADMIN if suid not
+   set and allow to use it for simple tasks where no another operation is
+   necessary.
 
 partx
 -----
@@ -92,6 +90,14 @@ partx
  - support mapping by device-mapper if argv[0] is "kpartx" or --dm option is used.
      
 
+getopt
+------
+  It would be great if getopt could optionally ignore unknown options.
+  Currently, it outputs -- for every option it doesn't recognize but leaving the
+  option as it is could beneficial wrapper scripts which could then pass the
+  options they don't recognize as they are to the command they are wrapping.
+  https://github.com/karelzak/util-linux/issues/701
+
 docs
 ----
 
@@ -109,17 +115,17 @@ login-utils:
     * the unique functionality provided by newgpr(1) is support for group
       passwords [/etc/gshadow] -- do we really need this functionality?
     * maybe we can mark group-passwords as deprecated, and replace sg(1) and
-      newgpr(1) with su(1) code. The another way is to ask fro group password in
+      newgpr(1) with su(1) code. The another way is to ask for group password in
       su --group too.
     * note that shadow-utils newgpr(1) provides support for syslog and audit log.
 
+
 libblkid
 --------
 
- - (!) don't use internally blkid_loff_t, rather use off_t, size_t, ssize_t,
-       stdint.h types and so on...
-
- - add FSSIZE value  -- filesystem size (klibc requirement)
+ - (!) add support for BitLocker Drive Encryption 
+   https://github.com/karelzak/util-linux/issues/617
+   https://github.com/libyal/libbde/blob/master/documentation/BitLocker%20Drive%20Encryption%20(BDE)%20format.asciidoc
 
  - (!) add support for dasd PT (used for example on s390)
 
@@ -129,14 +135,6 @@ libfdisk
  - add support for Apple Partition Map (see libblkid/src/partitions/mac.c)
    http://en.wikipedia.org/wiki/Apple_Partition_Map
 
- - catch SIGINT (Ctrl-C) and return to main menu.
-   From Red Hat bugzilla #545488:
-
-   While using fdisk normally, if you accidentally pressed the wrong button (to
-   start a sequence of questions for some operation, e.g. 'c' to create
-   partition).  The tool tries too hard to keep asking you for valid input.  You
-   can't provide a blank or invalid input to get it to break out of the current
-   dialog sequence and get back to the main menu.
 
 misc
 ----