hash: make delete to use HASH_ITER if it is available

This commit also makes the functions ansi C compliant by adding void to
function argument list.

Signed-off-by: Sami Kerola <kerolasa@iki.fi>
This commit is contained in:
Sami Kerola 2012-12-09 22:43:32 +00:00
parent a9d2d9c82f
commit b59e980cab
2 changed files with 7 additions and 11 deletions

View file

@ -244,6 +244,6 @@ void clean_up(void);
void add_lease(union ipaddr_t *ip, enum ltype type);
struct leases_t *find_lease(union ipaddr_t *ip);
void delete_lease(struct leases_t *lease);
void delete_all_leases();
void delete_all_leases(void);
#endif /* DHCPD_POOLS_H */

View file

@ -87,8 +87,9 @@ void delete_lease(struct leases_t *lease)
free(lease);
}
/* uthash >= 1.9.2
void delete_all_leases()
/*! \brief Delete all leases from hash array. */
#ifdef HASH_ITER
void delete_all_leases(void)
{
struct leases_t *l, *tmp;
HASH_ITER(hh, leases, l, tmp) {
@ -96,14 +97,8 @@ void delete_all_leases()
free(l);
}
}
*/
/*! \brief Delete all leases from hash array.
* FIXME: The prototype should have (void) as an argument.
* FIXME: Take the HASH_ITER + HASH_DEL in use by if uthash version
* allows it.
*/
void delete_all_leases()
#else
void delete_all_leases(void)
{
struct leases_t *l;
while (leases) {
@ -113,3 +108,4 @@ void delete_all_leases()
free(l);
}
}
#endif