Skip to content

Commit

Permalink
If Router Solicitation creation fails no longer tries to retry the RS…
Browse files Browse the repository at this point in the history
… right away (ARMmbed#2655)

On ethernet interface, if RS cannot be created because there is no source route or
no memory no longer tries to retry the RS right away. Retry is made instead using
standard schedule of RS sending.
  • Loading branch information
Mika Leppänen authored Jul 29, 2021
1 parent 2b889e9 commit 29744e0
Showing 1 changed file with 5 additions and 5 deletions.
10 changes: 5 additions & 5 deletions source/ipv6_stack/protocol_ipv6.c
Original file line number Diff line number Diff line change
Expand Up @@ -323,16 +323,16 @@ static void ipv6_nd_bootstrap(protocol_interface_info_entry_t *cur)
break;

case IPV6_ROUTER_SOLICATION:
tr_debug("Waiting for ICMPv6 Router Advertisement");
if (ipv6_nd_rs(cur)) {
tr_debug("Waiting for ICMPv6 Router Advertisement");
if (cur->ipv6_configure->routerSolicationRetryCounter != ROUTER_SOL_MAX_COUNTER) {
cur->ipv6_configure->routerSolicationRetryCounter++;
}
cur->ipv6_configure->ND_TIMER = (cur->ipv6_configure->routerSolicationRetryCounter * 25);

} else {
cur->ipv6_configure->ND_TIMER = 1;
}
if (cur->ipv6_configure->routerSolicationRetryCounter == 0) {
cur->ipv6_configure->routerSolicationRetryCounter++;
}
cur->ipv6_configure->ND_TIMER = (cur->ipv6_configure->routerSolicationRetryCounter * 25);
break;

case IPV6_GP_GEN:
Expand Down

0 comments on commit 29744e0

Please sign in to comment.