diff options
Diffstat (limited to 'src/ipcpd')
| -rw-r--r-- | src/ipcpd/normal/main.c | 7 | 
1 files changed, 4 insertions, 3 deletions
| diff --git a/src/ipcpd/normal/main.c b/src/ipcpd/normal/main.c index 9479b806..a067fb83 100644 --- a/src/ipcpd/normal/main.c +++ b/src/ipcpd/normal/main.c @@ -136,14 +136,13 @@ static int normal_ipcp_enroll(char * dif_name)                  return -1; /* -ENOTINIT */          } +        pthread_rwlock_unlock(&_ipcp->state_lock); +          if (fmgr_mgmt_flow(dif_name)) { -                pthread_rwlock_unlock(&_ipcp->state_lock);                  LOG_ERR("Failed to establish management flow.");                  return -1;          } -        pthread_rwlock_unlock(&_ipcp->state_lock); -          if (ipcp_wait_state(_ipcp, IPCP_ENROLLED, &timeout) == -ETIMEDOUT) {                  LOG_ERR("Enrollment timed out.");                  return -1; @@ -156,6 +155,8 @@ static int normal_ipcp_enroll(char * dif_name)                  return -1;          } +        pthread_rwlock_unlock(&_ipcp->state_lock); +          return 0;  } | 
