summaryrefslogtreecommitdiffstats
path: root/libglusterfs
diff options
context:
space:
mode:
Diffstat (limited to 'libglusterfs')
-rw-r--r--libglusterfs/src/hashfn.c11
-rw-r--r--libglusterfs/src/hashfn.h2
2 files changed, 13 insertions, 0 deletions
diff --git a/libglusterfs/src/hashfn.c b/libglusterfs/src/hashfn.c
index 9ef8955a87d..d53ecb56ac2 100644
--- a/libglusterfs/src/hashfn.c
+++ b/libglusterfs/src/hashfn.c
@@ -33,6 +33,17 @@
#define DM_FULLROUNDS 10 /* 32 is overkill, 16 is strong crypto */
#define DM_PARTROUNDS 6 /* 6 gets complete mixing */
+
+uint32_t
+ReallySimpleHash (char *path, int len)
+{
+ uint32_t hash = 0;
+ for (;len > 0; len--)
+ hash ^= (char)path[len];
+
+ return hash;
+}
+
/*
This is apparently the "fastest hash function for strings".
Written by Paul Hsieh <http://www.azillionmonkeys.com/qed/hash.html>
diff --git a/libglusterfs/src/hashfn.h b/libglusterfs/src/hashfn.h
index 92481126d2d..b8adcc6ccbd 100644
--- a/libglusterfs/src/hashfn.h
+++ b/libglusterfs/src/hashfn.h
@@ -32,4 +32,6 @@ uint32_t SuperFastHash (const char * data, int32_t len);
uint32_t gf_dm_hashfn (const char *msg, int len);
+uint32_t
+ReallySimpleHash (char *path, int len);
#endif /* __HASHFN_H__ */