|
@@ -2504,9 +2504,9 @@ static int ip6_route_multipath(struct fib6_config *cfg, int add)
|
|
int attrlen;
|
|
int attrlen;
|
|
int err = 0, last_err = 0;
|
|
int err = 0, last_err = 0;
|
|
|
|
|
|
|
|
+ remaining = cfg->fc_mp_len;
|
|
beginning:
|
|
beginning:
|
|
rtnh = (struct rtnexthop *)cfg->fc_mp;
|
|
rtnh = (struct rtnexthop *)cfg->fc_mp;
|
|
- remaining = cfg->fc_mp_len;
|
|
|
|
|
|
|
|
/* Parse a Multipath Entry */
|
|
/* Parse a Multipath Entry */
|
|
while (rtnh_ok(rtnh, remaining)) {
|
|
while (rtnh_ok(rtnh, remaining)) {
|
|
@@ -2536,6 +2536,7 @@ beginning:
|
|
* next hops that have been already added.
|
|
* next hops that have been already added.
|
|
*/
|
|
*/
|
|
add = 0;
|
|
add = 0;
|
|
|
|
+ remaining = cfg->fc_mp_len - remaining;
|
|
goto beginning;
|
|
goto beginning;
|
|
}
|
|
}
|
|
}
|
|
}
|