aboutsummaryrefslogtreecommitdiffstats
path: root/src/frontends/android/jni/libandroidbridge/backend
diff options
context:
space:
mode:
Diffstat (limited to 'src/frontends/android/jni/libandroidbridge/backend')
-rw-r--r--src/frontends/android/jni/libandroidbridge/backend/android_creds.h2
-rw-r--r--src/frontends/android/jni/libandroidbridge/backend/android_service.c4
2 files changed, 5 insertions, 1 deletions
diff --git a/src/frontends/android/jni/libandroidbridge/backend/android_creds.h b/src/frontends/android/jni/libandroidbridge/backend/android_creds.h
index a3ecddde4..918708f14 100644
--- a/src/frontends/android/jni/libandroidbridge/backend/android_creds.h
+++ b/src/frontends/android/jni/libandroidbridge/backend/android_creds.h
@@ -49,7 +49,7 @@ struct android_creds_t {
/**
* Load the user certificate and private key
*
- * @preturn loaded client certificate, NULL on failure
+ * @return loaded client certificate, NULL on failure
*/
certificate_t *(*load_user_certificate)(android_creds_t *this);
diff --git a/src/frontends/android/jni/libandroidbridge/backend/android_service.c b/src/frontends/android/jni/libandroidbridge/backend/android_service.c
index 2f13be93c..c83f0b4dc 100644
--- a/src/frontends/android/jni/libandroidbridge/backend/android_service.c
+++ b/src/frontends/android/jni/libandroidbridge/backend/android_service.c
@@ -167,6 +167,10 @@ static job_requeue_t handle_plain(private_android_service_t *this)
if (len < 0)
{
+ if (errno == EBADF)
+ { /* the TUN device got closed just before calling select(), retry */
+ return JOB_REQUEUE_FAIR;
+ }
DBG1(DBG_DMN, "select on TUN device failed: %s", strerror(errno));
return JOB_REQUEUE_NONE;
}