-/* @(#) $Id: hash_op.h,v 1.4 2009/06/24 17:06:26 dcid Exp $ */
+/* @(#) $Id: ./src/headers/hash_op.h, 2011/09/08 dcid Exp $
+ */
/* Copyright (C) 2009 Trend Micro Inc.
* All rights reserved.
*
* This program is a free software; you can redistribute it
* and/or modify it under the terms of the GNU General Public
- * License (version 3) as published by the FSF - Free Software
+ * License (version 2) as published by the FSF - Free Software
* Foundation.
*
* License details at the LICENSE file included with OSSEC or
* online at: http://www.ossec.net/en/licensing.html
*/
-
+
/* Common API for dealing with directory trees */
-
+
#ifndef _OS_HASHOP
#define _OS_HASHOP
typedef struct _OSHashNode
{
struct _OSHashNode *next;
-
+
void *key;
- void *data;
+ void *data;
}OSHashNode;
unsigned int rows;
unsigned int initial_seed;
unsigned int constant;
-
+
OSHashNode **table;
}OSHash;
* Frees the memory used by the hash.
*/
void *OSHash_Free(OSHash *self);
-
+
/** void OSHash_Add(OSHash *hash, char *key, void *data)
* Key must not be NULL.
*/
int OSHash_Add(OSHash *hash, char *key, void *data);
+int OSHash_Update(OSHash *hash, char *key, void *data);
/** void *OSHash_Get(OSHash *self, char *key)
*/
void *OSHash_Get(OSHash *self, char *key);
+int OSHash_setSize(OSHash *self, int new_size);
#endif