summaryrefslogtreecommitdiffstats
path: root/Documentation/TODO
blob: 5b62cdbd683017fa0b74046c03ecb1f35b076f36 (plain) (blame)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170

 Note that items with (!) have high priority.

- (!) remove usage(stderr) on command line errors (unsupported options, etc.)


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)
	

lscpu
-----
  - read cpuid and uname information from file if --sysroot is specified, then
    we can prepare regression tests completely independent on hw and architecture.

lsblk
-----
  - (!) add --tree to force tree output for operations like --sort where the
    --list is enabled by default.

  - currently it does not show mountpoint for all devices in btrfs RAID. It's because
    /proc/#/mountinfo contains reference to the one device only. Maybe we can add some
    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.
   http://thread.gmane.org/gmane.linux.utilities.util-linux-ng/9553/focus=9585

hwlock
------
 - use /var/lib/hwclock/drift to store hw-clock drift numbers.
 - use /etc/adjtime as read-only for UTC/LOCAL information only
 - the /var/lib/hwclock/drift should be implemented backwardly compatible,
   it means use the file only if exists, otherwise follow /etc/adjtime 

bash completion
---------------
- Optional argument handling requires user to press backspace to get
  argument completion.
- Comma separated value, e.g., --output 'value1,value2', are not
  completed for users.

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:

   --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)


partx
-----

 - support mapping by device-mapper if argv[0] is "kpartx" or --dm option is used.
     

docs
----

 - (!) use something better than gtk-doc for libmount and libblkid (doxyden?)

 - (!) add API documentation to libuuid


login-utils:
-----------

  - consolidate newgrp(1)
    * we have "su --group/--supp-group" to switch between groups, newgrp(1) in
      util-linux and shadow-utils (and sg(1) alias in shadow-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
      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 dasd PT (used for example on s390)

libfdisk
--------

 - (!) use fputs_quoted() when print partition name= and allow to use \x%02x
       for input to escape unprintable chars and quotes.

 - 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
----

 - add mllockall() and SCHED_FIFO to hwclock,
   see http://lkml.org/lkml/2008/10/12/132
 

---------------
exotic requests
---------------

 - add SELinux security contexts support to the 'ipcs' utility
   http://bugzilla.redhat.com/show_bug.cgi?id=225342

   Would be great to list the current system IPC Objects with their respective
   security labels (where allowed) with something like 'ipcs -Z' - following the
   way other tools reports those.