core: pass the socket cookie to invoked per-connection service instances as $SO_COOKIE env var

The socket cookie is just too useful for identifying connections, let's
emphasize this a bit and pass it as environment variable.
This commit is contained in:
Lennart Poettering
2025-05-15 09:45:32 +02:00
parent 272017d32a
commit bfb1f9e2c9
3 changed files with 29 additions and 4 deletions
+11
View File
@@ -4412,6 +4412,17 @@ StandardInputData=V2XigLJyZSBubyBzdHJhbmdlcnMgdG8gbG92ZQpZb3Uga25vdyB0aGUgcnVsZX
<xi:include href="version-info.xml" xpointer="v220"/></listitem>
</varlistentry>
<varlistentry>
<term><varname>$SO_COOKIE</varname></term>
<listitem><para>If this is a unit started via per-connection socket activation (i.e. via a socket
unit with <varname>Accept=yes</varname>), this environment variable contains the Linux socket
cookie, formatted as decimal integer. The socket cookie can otherwise be acquired via <citerefentry
project='man-pages'><refentrytitle>getsockopt</refentrytitle><manvolnum>7</manvolnum></citerefentry>.</para>
<xi:include href="version-info.xml" xpointer="v258"/></listitem>
</varlistentry>
<varlistentry>
<term><varname>$TRIGGER_UNIT</varname></term>
<term><varname>$TRIGGER_PATH</varname></term>