diff --git a/include/proto/stick_table.h b/include/proto/stick_table.h index 813b3b971..38ec9ae8f 100644 --- a/include/proto/stick_table.h +++ b/include/proto/stick_table.h @@ -46,6 +46,7 @@ struct stktable_key *stktable_fetch_key(struct proxy *px, struct session *l4, unsigned long table_type); int stktable_compatible_pattern(struct pattern_expr *expr, unsigned long table_type); int stktable_get_data_type(char *name); +struct proxy *find_stktable(const char *name); /* reserve some space for data type . Return non-0 if OK, or 0 if already * allocated (or impossible type). diff --git a/src/stick_table.c b/src/stick_table.c index f49038423..a5e41bf73 100644 --- a/src/stick_table.c +++ b/src/stick_table.c @@ -544,3 +544,14 @@ int stktable_get_data_type(char *name) return -1; } +/* Returns pointer to proxy containing table or NULL if not found */ +struct proxy *find_stktable(const char *name) +{ + struct proxy *px; + + for (px = proxy; px; px = px->next) { + if (px->table.size && strcmp(px->id, name) == 0) + return px; + } + return NULL; +}