mirror of
https://git.haproxy.org/git/haproxy.git/
synced 2026-02-26 11:41:50 +01:00
[MINOR] proxy: make findproxy() return proxies from numeric IDs too
Sometimes it's useful to be able to search a proxy by its numeric ID, so let's add support for names such as #<id>.
This commit is contained in:
parent
e9b2602ac5
commit
bc216c4ad0
12
src/proxy.c
12
src/proxy.c
@ -315,12 +315,22 @@ struct proxy *findproxy_mode(const char *name, int mode, int cap) {
|
||||
return target;
|
||||
}
|
||||
|
||||
/* Returns a pointer to the proxy matching either name <name>, or id <name> if
|
||||
* <name> begins with a '#'. NULL is returned if no match is found, as well as
|
||||
* if multiple matches are found (eg: too large capabilities mask).
|
||||
*/
|
||||
struct proxy *findproxy(const char *name, int cap) {
|
||||
|
||||
struct proxy *curproxy, *target = NULL;
|
||||
int pid = 0;
|
||||
|
||||
if (*name == '#')
|
||||
pid = atoi(name + 1);
|
||||
|
||||
for (curproxy = proxy; curproxy; curproxy = curproxy->next) {
|
||||
if ((curproxy->cap & cap)!=cap || strcmp(curproxy->id, name))
|
||||
if ((curproxy->cap & cap) != cap ||
|
||||
(pid && curproxy->uuid != pid) ||
|
||||
(!pid && strcmp(curproxy->id, name)))
|
||||
continue;
|
||||
|
||||
if (!target) {
|
||||
|
||||
Loading…
x
Reference in New Issue
Block a user