summaryrefslogtreecommitdiff
path: root/src/sd_notify.erl
diff options
context:
space:
mode:
authorPeter Lemenkov <lemenkov@gmail.com>2020-07-07 00:03:24 +0200
committerPeter Lemenkov <lemenkov@gmail.com>2020-07-07 11:03:04 +0200
commit53665cd870120a111381a6a7f8642d3ad6c7cc2f (patch)
treee4ef145c8270d9e9f018906323709dd8d55ab406 /src/sd_notify.erl
parent888f85f73456d95fe7af21ebb856d05ef461ab39 (diff)
downloaderlang-sd_notify-53665cd870120a111381a6a7f8642d3ad6c7cc2f.tar.gz
Unset NOTIFY_SOCKET env if requestedmore_versions_to_test
Signed-off-by: Peter Lemenkov <lemenkov@gmail.com>
Diffstat (limited to 'src/sd_notify.erl')
-rw-r--r--src/sd_notify.erl5
1 files changed, 4 insertions, 1 deletions
diff --git a/src/sd_notify.erl b/src/sd_notify.erl
index 0880e48..a31b5b6 100644
--- a/src/sd_notify.erl
+++ b/src/sd_notify.erl
@@ -43,7 +43,7 @@ sd_notifyf(UnsetEnv, Format, Data) ->
sd_pid_notifyf(Pid, UnsetEnv, Format, Data) ->
sd_pid_notify_with_fds(Pid, UnsetEnv, lists:flatten(io_lib:format(Format, Data)), []).
-sd_pid_notify_with_fds(_Pid, _UnsetEnv, Call, _Fds) ->
+sd_pid_notify_with_fds(_Pid, UnsetEnv, Call, _Fds) ->
error_logger:info_msg("systemd: ~p", [Call]),
case os:getenv("NOTIFY_SOCKET") of
false -> {error, not_configured};
@@ -54,6 +54,9 @@ sd_pid_notify_with_fds(_Pid, _UnsetEnv, Call, _Fds) ->
{ok, Socket} ->
Result = gen_udp:send(Socket, {local,Path}, 0, Call),
gen_udp:close(Socket),
+
+ UnsetEnv == true andalso os:unsetenv("NOTIFY_SOCKET"),
+
Result
end
end.