diff options
author | Karel Zak | 2014-09-16 15:30:03 +0200 |
---|---|---|
committer | Karel Zak | 2014-09-16 15:30:03 +0200 |
commit | a3b92242ad76a7468cf508e1d878d0815c7e031f (patch) | |
tree | a44369a813a607a7a3f55dcf6635fddbbe90367e /libmount/src/context.c | |
parent | lscpu: fix cppcheck warnings (diff) | |
download | kernel-qcow2-util-linux-a3b92242ad76a7468cf508e1d878d0815c7e031f.tar.gz kernel-qcow2-util-linux-a3b92242ad76a7468cf508e1d878d0815c7e031f.tar.xz kernel-qcow2-util-linux-a3b92242ad76a7468cf508e1d878d0815c7e031f.zip |
libmount: hide details about failed search in fstab/mtab
The current code returns -errno when not found "mount /foo" in fstab
and mtab does not exist (or /etc/mtab points to non-mounted /proc).
This is problem because the return value is too low-level and maybe
misinterpreted by top level code. It's better to always return
MNT_ERR_NOFSTAB when not found in fstab/mtab.
Reported-by: Dylan Cali <calid1984@gmail.com>
Signed-off-by: Karel Zak <kzak@redhat.com>
Diffstat (limited to 'libmount/src/context.c')
-rw-r--r-- | libmount/src/context.c | 10 |
1 files changed, 8 insertions, 2 deletions
diff --git a/libmount/src/context.c b/libmount/src/context.c index 7d2b9e40f..48ee985fa 100644 --- a/libmount/src/context.c +++ b/libmount/src/context.c @@ -2050,8 +2050,14 @@ int mnt_context_apply_fstab(struct libmnt_context *cxt) if (!rc) rc = apply_table(cxt, tab, MNT_ITER_BACKWARD); } - if (rc) - DBG(CXT, ul_debugobj(cxt, "failed to find entry in fstab/mtab")); + if (rc) { + DBG(CXT, ul_debugobj(cxt, "failed to find entry in fstab/mtab [rc=%d]: %m", rc)); + + /* force to "not found in fstab/mtab" error, the details why + * not found are not so important and may be misinterpreted by + * applications... */ + rc = -MNT_ERR_NOFSTAB; + } return rc; } |