xfs
[Top] [All Lists]

[PATCH 2/6] xfsprogs: do slightly less obfuscation in the file name

To: xfs@xxxxxxxxxxx
Subject: [PATCH 2/6] xfsprogs: do slightly less obfuscation in the file name
From: Alex Elder <aelder@xxxxxxx>
Date: Wed, 06 Oct 2010 13:49:04 -0500
Reply-to: aelder@xxxxxxx
When the last five characters in an obfuscated filename are
generated, one of them has a randomized top nibble.  This is a
fairly copmlete way of doing this.  But the lower nibble is already
effectively a random character (taken from four bits of a the hash
value) so we don't lose much by simply assuming the the top bits are
always zero.  This simplifies the generation of two of the final
five characters, and makes them all get done in a consistent way.
Add the use of a mask in the one case it wasn't used to be even more
consistent.

Signed-off-by: Alex Elder <aelder@xxxxxxx>

---
 db/metadump.c |    6 ++----
 1 file changed, 2 insertions(+), 4 deletions(-)

Index: b/db/metadump.c
===================================================================
--- a/db/metadump.c
+++ b/db/metadump.c
@@ -464,8 +464,7 @@ generate_obfuscated_name(
                         */
                        newhash = rol32(newhash, 3) ^ hash;
 
-                       newp[namelen - 5] = (newhash >> 28) |
-                                       (random_filename_char() & 0xf0);
+                       newp[namelen - 5] = (newhash >> 28) & 0x7f;
                        if (is_invalid_char(newp[namelen - 5]))
                                continue;
                        newp[namelen - 4] = (newhash >> 21) & 0x7f;
@@ -477,8 +476,7 @@ generate_obfuscated_name(
                        newp[namelen - 2] = (newhash >> 7) & 0x7f;
                        if (is_invalid_char(newp[namelen - 2]))
                                continue;
-                       newp[namelen - 1] = ((newhash >> 0) ^
-                                       (newp[namelen - 5] >> 4)) & 0x7f;
+                       newp[namelen - 1] = (newhash >> 0) & 0x7f;
                        if (is_invalid_char(newp[namelen - 1]))
                                continue;
                        break;


<Prev in Thread] Current Thread [Next in Thread>
  • [PATCH 2/6] xfsprogs: do slightly less obfuscation in the file name, Alex Elder <=