diff options
| author | Louis Scalbert <louis.scalbert@6wind.com> | 2022-11-09 15:17:19 +0100 |
|---|---|---|
| committer | Louis Scalbert <louis.scalbert@6wind.com> | 2023-02-10 13:52:01 +0100 |
| commit | ae251b86845a976534f978b4a323cfee779916ee (patch) | |
| tree | 4d40515b9db7d494b9641df47b106c2bdb608acc /lib/affinitymap.h | |
| parent | fa1b95c3ec8c1c34116ffe1cc908fb08459bd3e4 (diff) | |
lib,zebra: add affinity-map configuration hooks
Add affinity-map hooks to check the utilization of affinity-map in
link-params before its deletion and to update link-params when the
affinity-map bit-position is updated.
Signed-off-by: Louis Scalbert <louis.scalbert@6wind.com>
Diffstat (limited to 'lib/affinitymap.h')
| -rw-r--r-- | lib/affinitymap.h | 16 |
1 files changed, 16 insertions, 0 deletions
diff --git a/lib/affinitymap.h b/lib/affinitymap.h index 323439c743..19edf5a269 100644 --- a/lib/affinitymap.h +++ b/lib/affinitymap.h @@ -50,6 +50,11 @@ DECLARE_QOBJ_TYPE(affinity_map); struct affinity_maps { struct list *maps; + bool (*check_use_hook)(const char *affmap_name); + bool (*check_update_hook)(const char *affmap_name, uint16_t new_pos); + void (*update_hook)(const char *affmap_name, uint16_t old_pos, + uint16_t new_pos); + QOBJ_FIELDS; }; DECLARE_QOBJ_TYPE(affinity_maps); @@ -61,6 +66,17 @@ void affinity_map_unset(const char *name); struct affinity_map *affinity_map_get(const char *name); char *affinity_map_name_get(const int pos); +bool affinity_map_check_use_hook(const char *affmap_name); +bool affinity_map_check_update_hook(const char *affmap_name, uint16_t new_pos); +void affinity_map_update_hook(const char *affmap_name, uint16_t new_pos); + +void affinity_map_set_check_use_hook(bool (*func)(const char *affmap_name)); +void affinity_map_set_check_update_hook(bool (*func)(const char *affmap_name, + uint16_t new_pos)); +void affinity_map_set_update_hook(void (*func)(const char *affmap_name, + uint16_t old_pos, + uint16_t new_pos)); + void cli_show_affinity_map(struct vty *vty, const struct lyd_node *dnode, bool show_defaults); |
