diff options
author | Marek Lindner <lindner_marek@yahoo.de> | 2010-09-05 01:58:34 +0200 |
---|---|---|
committer | Greg Kroah-Hartman <gregkh@suse.de> | 2010-09-05 00:29:49 -0700 |
commit | 6a0e9fa88df9e3a517a2fd317706aefa10a43191 (patch) | |
tree | 2dcf657e159d168a65af81cb65d21108cae48ead /drivers/staging/batman-adv/hash.h | |
parent | bf3264f6d1039e68ec9881447808327c0260ae61 (diff) | |
download | op-kernel-dev-6a0e9fa88df9e3a517a2fd317706aefa10a43191.zip op-kernel-dev-6a0e9fa88df9e3a517a2fd317706aefa10a43191.tar.gz |
Staging: batman-adv: attach each hard-interface to a soft-interface
This patch replaces the static bat0 interface with a dynamic/abstracted
approach. It is now possible to create multiple batX interfaces by
assigning hard interfaces to them. Each batX interface acts as an
independent mesh network. A soft interface is removed once no hard
interface references it any longer.
Signed-off-by: Marek Lindner <lindner_marek@yahoo.de>
[sven.eckelmann@gmx.de: Rework on top of current version]
Signed-off-by: Sven Eckelmann <sven.eckelmann@gmx.de>
Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
Diffstat (limited to 'drivers/staging/batman-adv/hash.h')
-rw-r--r-- | drivers/staging/batman-adv/hash.h | 4 |
1 files changed, 2 insertions, 2 deletions
diff --git a/drivers/staging/batman-adv/hash.h b/drivers/staging/batman-adv/hash.h index c483e11..2c8e176 100644 --- a/drivers/staging/batman-adv/hash.h +++ b/drivers/staging/batman-adv/hash.h @@ -30,7 +30,7 @@ typedef int (*hashdata_compare_cb)(void *, void *); typedef int (*hashdata_choose_cb)(void *, int); -typedef void (*hashdata_free_cb)(void *); +typedef void (*hashdata_free_cb)(void *, void *); struct element_t { void *data; /* pointer to the data */ @@ -70,7 +70,7 @@ void *hash_remove_bucket(struct hashtable_t *hash, struct hash_it_t *hash_it_t); /* remove the hash structure. if hashdata_free_cb != NULL, this function will be * called to remove the elements inside of the hash. if you don't remove the * elements, memory might be leaked. */ -void hash_delete(struct hashtable_t *hash, hashdata_free_cb free_cb); +void hash_delete(struct hashtable_t *hash, hashdata_free_cb free_cb, void *arg); /* free only the hashtable and the hash itself. */ void hash_destroy(struct hashtable_t *hash); |