aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--erts/emulator/nifs/common/socket_nif.c12
1 files changed, 12 insertions, 0 deletions
diff --git a/erts/emulator/nifs/common/socket_nif.c b/erts/emulator/nifs/common/socket_nif.c
index 532ac5c211..b01f26e4d4 100644
--- a/erts/emulator/nifs/common/socket_nif.c
+++ b/erts/emulator/nifs/common/socket_nif.c
@@ -3121,6 +3121,18 @@ ERL_NIF_TERM nsetopt_gen(ErlNifEnv* env,
}
break;
+ case SOCKET_OPT_VALUE_LINGER:
+ {
+ optLen = sizeof(valP->u.lingerVal);
+ res = socket_setopt(descP->sock, level, opt,
+ &valP->u.lingerVal, optLen);
+ if (res != 0)
+ result = make_error2(env, res);
+ else
+ result = atom_ok;
+ }
+ break;
+
default:
result = make_error(env, atom_einval);
}