diff options
| author | David Lamparter <equinox@opensourcerouting.org> | 2022-01-05 15:55:00 +0100 | 
|---|---|---|
| committer | David Lamparter <equinox@opensourcerouting.org> | 2022-01-17 14:08:29 +0100 | 
| commit | 032a741219aac787882e039bd3bdc22adeceea5c (patch) | |
| tree | 3ad47582f247b144c3ba69ce6d3a0317f3846a86 /pimd/pim_jp_agg.c | |
| parent | 2a27f13b2197d07d11454b6cc8d0e5fc5b6ded87 (diff) | |
pimd: move & deploy pim_addr_cmp() helper
Comparing `s_addr` isn't cutting it for IPv6 support.
Signed-off-by: David Lamparter <equinox@opensourcerouting.org>
Diffstat (limited to 'pimd/pim_jp_agg.c')
| -rw-r--r-- | pimd/pim_jp_agg.c | 14 | 
1 files changed, 4 insertions, 10 deletions
diff --git a/pimd/pim_jp_agg.c b/pimd/pim_jp_agg.c index 5c6f55e99d..290655d12e 100644 --- a/pimd/pim_jp_agg.c +++ b/pimd/pim_jp_agg.c @@ -80,13 +80,7 @@ static int pim_jp_agg_src_cmp(void *arg1, void *arg2)  	if (!js1->is_join && js2->is_join)  		return 1; -	if ((uint32_t)js1->up->sg.src.s_addr < (uint32_t)js2->up->sg.src.s_addr) -		return -1; - -	if ((uint32_t)js1->up->sg.src.s_addr > (uint32_t)js2->up->sg.src.s_addr) -		return 1; - -	return 0; +	return pim_addr_cmp(js1->up->sg.src, js2->up->sg.src);  }  /* @@ -156,7 +150,7 @@ void pim_jp_agg_remove_group(struct list *group, struct pim_upstream *up,  	struct pim_jp_sources *js = NULL;  	for (ALL_LIST_ELEMENTS(group, node, nnode, jag)) { -		if (jag->group.s_addr == up->sg.grp.s_addr) +		if (!pim_addr_cmp(jag->group, up->sg.grp))  			break;  	} @@ -202,7 +196,7 @@ int pim_jp_agg_is_in_list(struct list *group, struct pim_upstream *up)  	struct pim_jp_sources *js = NULL;  	for (ALL_LIST_ELEMENTS(group, node, nnode, jag)) { -		if (jag->group.s_addr == up->sg.grp.s_addr) +		if (!pim_addr_cmp(jag->group, up->sg.grp))  			break;  	} @@ -276,7 +270,7 @@ void pim_jp_agg_add_group(struct list *group, struct pim_upstream *up,  	struct pim_jp_sources *js = NULL;  	for (ALL_LIST_ELEMENTS(group, node, nnode, jag)) { -		if (jag->group.s_addr == up->sg.grp.s_addr) +		if (!pim_addr_cmp(jag->group, up->sg.grp))  			break;  	}  | 
