unofficial mirror of emacs-devel@gnu.org 
 help / color / mirror / code / Atom feed
From: Matthew Leach <matthew@mattleach.net>
To: Stefan Monnier <monnier@iro.umontreal.ca>
Cc: emacs-devel@gnu.org
Subject: Re: [PATCH v3] Add systemd socket launching support
Date: Thu, 31 Mar 2016 14:31:46 +0100	[thread overview]
Message-ID: <871t6qkc3h.fsf@mattleach.net> (raw)
In-Reply-To: <jwv60w26c70.fsf-monnier+gmane.emacs.devel@gnu.org> (Stefan Monnier's message of "Thu, 31 Mar 2016 08:55:36 -0400")

Hi Stefan,

Stefan Monnier <monnier@iro.umontreal.ca> writes:

>> +#include <systemd/sd-daemon.h>
> [..]
>> +#ifdef HAVE_SYSTEMD
>> +      /* Read the number of sockets passed through by systemd. */
>> +      systemd_socket = sd_listen_fds(1);
>
> AFAICT, this is the core of the dependency to systemd.

Yes, that's correct.  There is also a call to `sd_is_socket' just below
this line.

> Could you explain to us, how the socket information is actually
> passed?  Is it passed via an env-var?

I believe so, I'm not a systemd expert, though.  Looking at the man page
for the sd_listen_fds:

Internally, sd_listen_fds() checks whether the $LISTEN_PID environment
variable equals the daemon PID. If not, it returns
immediately. Otherwise, it parses the number passed in the $LISTEN_FDS
environment variable, then sets the FD_CLOEXEC flag for the parsed
number of file descriptors starting from SD_LISTEN_FDS_START. Finally,
it returns the parsed number.

HTH,
-- 
Matt



  reply	other threads:[~2016-03-31 13:31 UTC|newest]

Thread overview: 21+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2016-03-30 20:53 [PATCH v3] Add systemd socket launching support Matthew Leach
2016-03-31 12:55 ` Stefan Monnier
2016-03-31 13:31   ` Matthew Leach [this message]
2016-03-31 17:11     ` Stefan Monnier
2016-03-31 17:38       ` Matthew Leach
2016-03-31 17:41       ` Eli Zaretskii
2016-03-31 18:14         ` Stefan Monnier
2016-03-31 19:27           ` Matthew Leach
2016-03-31 19:32             ` Matthew Leach
2016-03-31 19:34           ` Eli Zaretskii
2016-03-31 21:22             ` Stefan Monnier
2016-04-01  7:10               ` Eli Zaretskii
2016-04-01 13:17                 ` Stefan Monnier
2016-04-01 13:41                   ` Eli Zaretskii
2016-04-01 18:43                     ` Stefan Monnier
2016-04-01 19:47                       ` Matthew Leach
2016-04-01 19:58                       ` Eli Zaretskii
2016-04-03  0:53     ` Live System User
2016-03-31 16:32 ` Eli Zaretskii
2016-03-31 16:51   ` Matthew Leach
2016-03-31 16:56     ` Eli Zaretskii

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

  List information: https://www.gnu.org/software/emacs/

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=871t6qkc3h.fsf@mattleach.net \
    --to=matthew@mattleach.net \
    --cc=emacs-devel@gnu.org \
    --cc=monnier@iro.umontreal.ca \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
Code repositories for project(s) associated with this public inbox

	https://git.savannah.gnu.org/cgit/emacs.git

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).