summaryrefslogtreecommitdiff
path: root/fs/ubifs/sysfs.c
diff options
context:
space:
mode:
authorDan Carpenter <dan.carpenter@oracle.com>2021-11-09 14:50:51 +0300
committerRichard Weinberger <richard@nod.at>2021-12-24 00:08:19 +0300
commitd3de970bcba0fb171e6aceaa0723d2cd842dc25c (patch)
tree89999bfaf0f8cc740d09d98ec1ef888553b08f67 /fs/ubifs/sysfs.c
parent58225631cf9ae45f98ea04b38b7986e3e7646ee2 (diff)
downloadlinux-d3de970bcba0fb171e6aceaa0723d2cd842dc25c.tar.xz
ubifs: fix snprintf() length check
The snprintf() function returns the number of bytes (not including the NUL terminator) which would have been printed if there were enough space. So it can be greater than UBIFS_DFS_DIR_LEN. And actually if it equals UBIFS_DFS_DIR_LEN then that's okay so this check is too strict. Fixes: 9a620291fc01 ("ubifs: Export filesystem error counters") Signed-off-by: Dan Carpenter <dan.carpenter@oracle.com> Signed-off-by: Richard Weinberger <richard@nod.at>
Diffstat (limited to 'fs/ubifs/sysfs.c')
-rw-r--r--fs/ubifs/sysfs.c2
1 files changed, 1 insertions, 1 deletions
diff --git a/fs/ubifs/sysfs.c b/fs/ubifs/sysfs.c
index 0eb3d7d12450..7acc5a74e5fa 100644
--- a/fs/ubifs/sysfs.c
+++ b/fs/ubifs/sysfs.c
@@ -100,7 +100,7 @@ int ubifs_sysfs_register(struct ubifs_info *c)
n = snprintf(dfs_dir_name, UBIFS_DFS_DIR_LEN + 1, UBIFS_DFS_DIR_NAME,
c->vi.ubi_num, c->vi.vol_id);
- if (n == UBIFS_DFS_DIR_LEN) {
+ if (n > UBIFS_DFS_DIR_LEN) {
/* The array size is too small */
ret = -EINVAL;
goto out_free;