Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit 6f66cdc3 authored by David Ward's avatar David Ward Committed by David S. Miller
Browse files

net/garp: fix GID rbtree ordering



The comparison operators were backwards in both garp_attr_lookup and
garp_attr_create, so the entire GID rbtree was in reverse order.
(There was no practical side effect to this though, except that PDUs
were sent with attributes listed in reverse order, which is still
valid by the protocol. This change is only for clarity.)

Signed-off-by: default avatarDavid Ward <david.ward@ll.mit.edu>
Signed-off-by: default avatarDavid S. Miller <davem@davemloft.net>
parent 9d02daf7
Loading
Loading
Loading
Loading
+4 −4
Original line number Original line Diff line number Diff line
@@ -157,9 +157,9 @@ static struct garp_attr *garp_attr_lookup(const struct garp_applicant *app,
	while (parent) {
	while (parent) {
		attr = rb_entry(parent, struct garp_attr, node);
		attr = rb_entry(parent, struct garp_attr, node);
		d = garp_attr_cmp(attr, data, len, type);
		d = garp_attr_cmp(attr, data, len, type);
		if (d < 0)
		if (d > 0)
			parent = parent->rb_left;
			parent = parent->rb_left;
		else if (d > 0)
		else if (d < 0)
			parent = parent->rb_right;
			parent = parent->rb_right;
		else
		else
			return attr;
			return attr;
@@ -178,9 +178,9 @@ static struct garp_attr *garp_attr_create(struct garp_applicant *app,
		parent = *p;
		parent = *p;
		attr = rb_entry(parent, struct garp_attr, node);
		attr = rb_entry(parent, struct garp_attr, node);
		d = garp_attr_cmp(attr, data, len, type);
		d = garp_attr_cmp(attr, data, len, type);
		if (d < 0)
		if (d > 0)
			p = &parent->rb_left;
			p = &parent->rb_left;
		else if (d > 0)
		else if (d < 0)
			p = &parent->rb_right;
			p = &parent->rb_right;
		else {
		else {
			/* The attribute already exists; re-use it. */
			/* The attribute already exists; re-use it. */