]> git.ipfire.org Git - thirdparty/util-linux.git/commit
libmount: (mountinfo) parse empty strings in source
authorAlban Crequy <alban@kinvolk.io>
Fri, 22 Jun 2018 11:54:25 +0000 (13:54 +0200)
committerKarel Zak <kzak@redhat.com>
Tue, 10 Jul 2018 11:48:38 +0000 (13:48 +0200)
commit18a52a5094f820b5da013daf5972eb8e65be9680
treef00518c084e8e7dc0a30b222e211ad1cb4d99c52
parent66638b0b7023ea8f3b1b4adcca8cd092357b53c9
libmount: (mountinfo) parse empty strings in source

The source of a mount in /proc/self/mountinfo can unfortunately be an
empty string. Before this patch, 'mount' and 'mountpoint' fail as
following:

  $ sudo mount -t tmpfs "" /tmp/bb
  $ mount
  mount: /proc/self/mountinfo: parse error at line 64 -- ignored
  $ mountpoint /tmp/bb
  /tmp/bb is not a mountpoint

This patch fixes the parsing. It is unfortunately more complex because
sscanf() does not handle fields with empty strings easily.

Other projects have their own parser for mountinfo and have similar
issues. I know of runc and runtime-tools (I'll send a patch for those
two) but there are probably others.

Signed-off-by: Alban Crequy <alban@kinvolk.io>
libmount/src/tab_parse.c