/*
* hash.h - hashing routines mainly used for caching key details.
*
- * Jonathan McDowell <noodles@earth.li>
+ * Copyright 2000-2002 Jonathan McDowell <noodles@earth.li>
*
- * Copyright 2000-2002 Project Purple
+ * This program is free software: you can redistribute it and/or modify it
+ * under the terms of the GNU General Public License as published by the Free
+ * Software Foundation; version 2 of the License.
+ *
+ * This program is distributed in the hope that it will be useful, but WITHOUT
+ * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
+ * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for
+ * more details.
+ *
+ * You should have received a copy of the GNU General Public License along with
+ * this program; if not, write to the Free Software Foundation, Inc., 51
+ * Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
*/
#ifndef __HASH_H__
#define __HASH_H__
+#include "keystructs.h"
#include "ll.h"
#include "stats.h"
*/
void inithash(void);
+/**
+ * destroyhash - Clean up the hash after use.
+ *
+ * This function destroys the hash after use, freeing any memory that was
+ * used during its lifetime.
+ */
+void destroyhash(void);
+
/**
* addtohash - Adds a key to the hash.
* @key: The key to add.
* Gets a particular entry from the hash. Useful for doing something over
* all entries in the hash.
*/
-struct ll *gethashtableentry(int entry);
-
-/**
- * hash_getkeysigs - Gets the signatures on a key.
- * @keyid: The key we want the signatures for.
- *
- * This function gets the signatures on a key. It's the same as the
- * getkeysigs function from the keydb module except we also cache the data
- * so that if we need it again we already have it available.
- */
-struct ll *hash_getkeysigs(uint64_t keyid);
+struct ll *gethashtableentry(unsigned int entry);
#endif /* __HASH_H__ */