diff options
Diffstat (limited to 'rubbos/app/httpd-2.0.64/srclib/apr-util/dbm/sdbm/sdbm_hash.c')
-rw-r--r-- | rubbos/app/httpd-2.0.64/srclib/apr-util/dbm/sdbm/sdbm_hash.c | 63 |
1 files changed, 0 insertions, 63 deletions
diff --git a/rubbos/app/httpd-2.0.64/srclib/apr-util/dbm/sdbm/sdbm_hash.c b/rubbos/app/httpd-2.0.64/srclib/apr-util/dbm/sdbm/sdbm_hash.c deleted file mode 100644 index 012e3d07..00000000 --- a/rubbos/app/httpd-2.0.64/srclib/apr-util/dbm/sdbm/sdbm_hash.c +++ /dev/null @@ -1,63 +0,0 @@ -/* Copyright 2000-2005 The Apache Software Foundation or its licensors, as - * applicable. - * - * Licensed under the Apache License, Version 2.0 (the "License"); - * you may not use this file except in compliance with the License. - * You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, software - * distributed under the License is distributed on an "AS IS" BASIS, - * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - * See the License for the specific language governing permissions and - * limitations under the License. - */ - -/* - * sdbm - ndbm work-alike hashed database library - * based on Per-Aake Larson's Dynamic Hashing algorithms. BIT 18 (1978). - * author: oz@nexus.yorku.ca - * status: ex-public domain. keep it that way. - * - * hashing routine - */ - -#include "apr_sdbm.h" -#include "sdbm_private.h" - -/* - * polynomial conversion ignoring overflows - * [this seems to work remarkably well, in fact better - * then the ndbm hash function. Replace at your own risk] - * use: 65599 nice. - * 65587 even better. - */ -long sdbm_hash(const char *str, int len) -{ - register unsigned long n = 0; - -#define DUFF /* go ahead and use the loop-unrolled version */ -#ifdef DUFF - -#define HASHC n = *str++ + 65599 * n - - if (len > 0) { - register int loop = (len + 8 - 1) >> 3; - - switch(len & (8 - 1)) { - case 0: do { - HASHC; case 7: HASHC; - case 6: HASHC; case 5: HASHC; - case 4: HASHC; case 3: HASHC; - case 2: HASHC; case 1: HASHC; - } while (--loop); - } - - } -#else - while (len--) - n = *str++ + 65599 * n; -#endif - return n; -} |