diff --git a/include/search.h b/include/search.h index 81745a917d..c99648f80b 100644 --- a/include/search.h +++ b/include/search.h @@ -34,9 +34,6 @@ struct env_entry { int flags; }; -/* Opaque type for internal use. */ -struct _ENTRY; - /* * Family of hash table handling functions. The functions also * have reentrant counterparts ending with _r. The non-reentrant @@ -45,7 +42,7 @@ struct _ENTRY; /* Data type for reentrant functions. */ struct hsearch_data { - struct _ENTRY *table; + struct env_entry_node *table; unsigned int size; unsigned int filled; /* diff --git a/lib/hashtable.c b/lib/hashtable.c index c77b68f4e6..1093d8adaa 100644 --- a/lib/hashtable.c +++ b/lib/hashtable.c @@ -59,10 +59,10 @@ * which describes the current status. */ -typedef struct _ENTRY { +struct env_entry_node { int used; struct env_entry entry; -} _ENTRY; +}; static void _hdelete(const char *key, struct hsearch_data *htab, @@ -120,7 +120,8 @@ int hcreate_r(size_t nel, struct hsearch_data *htab) htab->filled = 0; /* allocate memory and zero out */ - htab->table = (_ENTRY *) calloc(htab->size + 1, sizeof(_ENTRY)); + htab->table = (struct env_entry_node *)calloc(htab->size + 1, + sizeof(struct env_entry_node)); if (htab->table == NULL) return 0;