From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: X-Spam-Checker-Version: SpamAssassin 3.4.1 (2015-04-28) on dcvr.yhbt.net X-Spam-Level: X-Spam-ASN: X-Spam-Status: No, score=-4.0 required=3.0 tests=ALL_TRUSTED,BAYES_00 shortcircuit=no autolearn=ham autolearn_force=no version=3.4.1 Received: from localhost (dcvr.yhbt.net [127.0.0.1]) by dcvr.yhbt.net (Postfix) with ESMTP id 6EB581F597 for ; Mon, 16 Jul 2018 09:30:12 +0000 (UTC) From: Eric Wong To: mwrap-public@80x24.org Subject: [PATCH] bin/mwrap: support LISTEN_FDS env from systemd Date: Mon, 16 Jul 2018 09:30:12 +0000 Message-Id: <20180716093012.24563-1-e@80x24.org> List-Id: OK, Ruby blindly closing file descriptors it doesn't know about is really getting on my nerves, now. --- bin/mwrap | 7 +++++++ 1 file changed, 7 insertions(+) diff --git a/bin/mwrap b/bin/mwrap index 964fdf8..9f67dab 100755 --- a/bin/mwrap +++ b/bin/mwrap @@ -26,4 +26,11 @@ if ENV['MWRAP'] =~ /dump_fd:(\d+)/ opts[dump_fd] = dump_io end end + +# allow inheriting FDs from systemd +n = ENV['LISTEN_FDS'] +if n && ENV['LISTEN_PID'].to_i == $$ + n = 3 + n.to_i + (3...n).each { |fd| opts[fd] = IO.new(fd) } +end exec *ARGV, opts -- EW