diff options
Diffstat (limited to 'src')
| -rw-r--r-- | src/core/dialer.c | 3 | ||||
| -rw-r--r-- | src/core/socket.c | 2 |
2 files changed, 4 insertions, 1 deletions
diff --git a/src/core/dialer.c b/src/core/dialer.c index b76bff6d..00ebb513 100644 --- a/src/core/dialer.c +++ b/src/core/dialer.c @@ -328,6 +328,9 @@ nni_dialer_setopt(nni_dialer *d, const char *name, const void *val, size_t sz, int rv; nni_mtx_lock(&d->d_mtx); rv = nni_copyin_ms(&d->d_inirtime, val, sz, t); + if (rv == 0) { + d->d_currtime = d->d_inirtime; + } nni_mtx_unlock(&d->d_mtx); return (rv); } diff --git a/src/core/socket.c b/src/core/socket.c index becd9b55..b2f331fb 100644 --- a/src/core/socket.c +++ b/src/core/socket.c @@ -1355,7 +1355,7 @@ dialer_timer_start_locked(nni_dialer *d) } backoff = d->d_currtime; d->d_currtime *= 2; - if (d->d_currtime > d->d_maxrtime) { + if ((d->d_maxrtime > 0) && (d->d_currtime > d->d_maxrtime)) { d->d_currtime = d->d_maxrtime; } |
