mirror of https://lore.kernel.org/lkml/
 help / color / mirror / Atom feed
From: Fabian Frederick <fabf@skynet.be>
To: linux-kernel@vger.kernel.org
Cc: Fabian Frederick <fabf@skynet.be>,
	Andrew Morton <akpm@linux-foundation.org>
Subject: [PATCH 2/6 linux-next] FS/AFFS: define AFFSNAMEMAX to replace constant use
Date: Tue,  3 Feb 2015 19:07:53 +0100	[thread overview]
Message-ID: <1422986877-13475-2-git-send-email-fabf@skynet.be> (raw)
In-Reply-To: <1422986877-13475-1-git-send-email-fabf@skynet.be>

30 was used all over the place to compare name length against
AFFS maximum name length.

Cc: Andrew Morton <akpm@linux-foundation.org>
Signed-off-by: Fabian Frederick <fabf@skynet.be>
---
 fs/affs/affs.h     |  2 ++
 fs/affs/amigaffs.c |  6 +++---
 fs/affs/dir.c      |  3 ++-
 fs/affs/namei.c    | 16 ++++++++--------
 fs/affs/super.c    |  2 +-
 5 files changed, 16 insertions(+), 13 deletions(-)

diff --git a/fs/affs/affs.h b/fs/affs/affs.h
index ff44ff3..26c89fb 100644
--- a/fs/affs/affs.h
+++ b/fs/affs/affs.h
@@ -30,6 +30,8 @@
 #define AFFS_AC_SIZE		(AFFS_CACHE_SIZE/sizeof(struct affs_ext_key)/2)
 #define AFFS_AC_MASK		(AFFS_AC_SIZE-1)
 
+#define AFFSNAMEMAX 30
+
 struct affs_ext_key {
 	u32	ext;				/* idx of the extended block */
 	u32	key;				/* block number */
diff --git a/fs/affs/amigaffs.c b/fs/affs/amigaffs.c
index 7a6de60..581a2fb 100644
--- a/fs/affs/amigaffs.c
+++ b/fs/affs/amigaffs.c
@@ -483,11 +483,11 @@ affs_check_name(const unsigned char *name, int len, bool notruncate)
 {
 	int	 i;
 
-	if (len > 30) {
+	if (len > AFFSNAMEMAX) {
 		if (notruncate)
 			return -ENAMETOOLONG;
 		else
-			len = 30;
+			len = AFFSNAMEMAX;
 	}
 	for (i = 0; i < len; i++) {
 		if (name[i] < ' ' || name[i] == ':'
@@ -508,7 +508,7 @@ affs_check_name(const unsigned char *name, int len, bool notruncate)
 int
 affs_copy_name(unsigned char *bstr, struct dentry *dentry)
 {
-	int len = min_t(u64, dentry->d_name.len, 30);
+	int len = min_t(u64, dentry->d_name.len, AFFSNAMEMAX);
 
 	*bstr++ = len;
 	memcpy(bstr, dentry->d_name.name, len);
diff --git a/fs/affs/dir.c b/fs/affs/dir.c
index 580b958..06a3ba7 100644
--- a/fs/affs/dir.c
+++ b/fs/affs/dir.c
@@ -114,7 +114,8 @@ inside:
 				break;
 			}
 
-			namelen = min_t(u8, AFFS_TAIL(sb, fh_bh)->name[0], 30);
+			namelen = min_t(u8, AFFS_TAIL(sb, fh_bh)->name[0],
+					AFFSNAMEMAX);
 			name = AFFS_TAIL(sb, fh_bh)->name + 1;
 			pr_debug("readdir(): dir_emit(\"%.*s\", ino=%u), hash=%d, f_pos=%llx\n",
 				 namelen, name, ino, hash_pos, ctx->pos);
diff --git a/fs/affs/namei.c b/fs/affs/namei.c
index 4a04c2d..f3cd869 100644
--- a/fs/affs/namei.c
+++ b/fs/affs/namei.c
@@ -71,7 +71,7 @@ __affs_hash_dentry(struct qstr *qstr, toupper_t toupper, bool notruncate)
 		return i;
 
 	hash = init_name_hash();
-	i = min_t(u64, qstr->len, 30);
+	i = min_t(u64, qstr->len, AFFSNAMEMAX);
 	for (; i > 0; name++, i--)
 		hash = partial_name_hash(toupper(*name), hash);
 	qstr->hash = end_name_hash(hash);
@@ -114,10 +114,10 @@ static inline int __affs_compare_dentry(unsigned int len,
 	 * If the names are longer than the allowed 30 chars,
 	 * the excess is ignored, so their length may differ.
 	 */
-	if (len >= 30) {
-		if (name->len < 30)
+	if (len >= AFFSNAMEMAX) {
+		if (name->len < AFFSNAMEMAX)
 			return 1;
-		len = 30;
+		len = AFFSNAMEMAX;
 	} else if (len != name->len)
 		return 1;
 
@@ -156,10 +156,10 @@ affs_match(struct dentry *dentry, const u8 *name2, toupper_t toupper)
 	const u8 *name = dentry->d_name.name;
 	int len = dentry->d_name.len;
 
-	if (len >= 30) {
-		if (*name2 < 30)
+	if (len >= AFFSNAMEMAX) {
+		if (*name2 < AFFSNAMEMAX)
 			return 0;
-		len = 30;
+		len = AFFSNAMEMAX;
 	} else if (len != *name2)
 		return 0;
 
@@ -175,7 +175,7 @@ affs_hash_name(struct super_block *sb, const u8 *name, unsigned int len)
 	toupper_t toupper = affs_get_toupper(sb);
 	int hash;
 
-	hash = len = min_t(unsigned, len, 30);
+	hash = len = min_t(unsigned, len, AFFSNAMEMAX);
 	for (; len > 0; len--)
 		hash = (hash * 13 + toupper(*name++)) & 0x7ff;
 
diff --git a/fs/affs/super.c b/fs/affs/super.c
index ee8eca7..c3524bf 100644
--- a/fs/affs/super.c
+++ b/fs/affs/super.c
@@ -584,7 +584,7 @@ affs_statfs(struct dentry *dentry, struct kstatfs *buf)
 	buf->f_bavail  = free;
 	buf->f_fsid.val[0] = (u32)id;
 	buf->f_fsid.val[1] = (u32)(id >> 32);
-	buf->f_namelen = 30;
+	buf->f_namelen = AFFSNAMEMAX;
 	return 0;
 }
 
-- 
2.1.0


  reply	other threads:[~2015-02-03 18:08 UTC|newest]

Thread overview: 8+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2015-02-03 18:07 [PATCH 1/6 linux-next] FS/AFFS: replace min() with casting/constant suffix by min_t Fabian Frederick
2015-02-03 18:07 ` Fabian Frederick [this message]
2015-02-03 22:31   ` [PATCH 2/6 linux-next] FS/AFFS: define AFFSNAMEMAX to replace constant use Andrew Morton
2015-02-03 18:07 ` [PATCH 3/6 linux-next] fs/affs/amigaffs.c: remove else after return Fabian Frederick
2015-02-03 18:07 ` [PATCH 4/6 linux-next] fs/affs/bitmap.c: remove unnecessary return Fabian Frederick
2015-02-03 18:07 ` [PATCH 5/6 linux-next] fs/affs/inode.c: remove double extern affs_symlink_inode_operations Fabian Frederick
2015-02-03 18:07 ` [PATCH 6/6 linux-next] fs/affs/super.c: fix switch indentation Fabian Frederick
2015-02-03 22:30 ` [PATCH 1/6 linux-next] FS/AFFS: replace min() with casting/constant suffix by min_t Andrew Morton

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=1422986877-13475-2-git-send-email-fabf@skynet.be \
    --to=fabf@skynet.be \
    --cc=akpm@linux-foundation.org \
    --cc=linux-kernel@vger.kernel.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox

all inboxes | Powered by JetHome®