Provided by: libnng-dev_1.9.0-2_amd64 bug

NAME

       nng_ipc_options - IPC-specific options

SYNOPSIS

           #include <nng/nng.h>

           #define NNG_OPT_IPC_PEER_GID            "ipc:peer-gid"
           #define NNG_OPT_IPC_PEER_PID            "ipc:peer-pid"
           #define NNG_OPT_IPC_PEER_UID            "ipc:peer-uid"
           #define NNG_OPT_IPC_PEER_ZONEID         "ipc:peer-zoneid"
           #define NNG_OPT_IPC_PERMISSIONS         "ipc:permissions"
           #define NNG_OPT_IPC_SECURITY_DESCRIPTOR "ipc:security-descriptor"

DESCRIPTION

       This page documents the various standard options that can be set or retrieved on objects
       using IPC.

       The option names should always be used by their symbolic definitions.

       In the following list of options, the name of the option is supplied, along with the data
       type of the underlying value.

       Some options are only meaningful or supported in certain contexts, or may have other
       access restrictions. An attempt has been made to include details about such restrictions
       in the description of the option.

           Note
           The availability of the following options is platform-specific, as the implementations
           of IPC are quite different on Windows and POSIX systems.

       NNG_OPT_IPC_PERMISSIONS
           (int) This write-only option may be applied to a listener to configure the permissions
           that are used on the UNIX domain socket created by that listener. This property is
           only supported on POSIX systems. The value is of type int, representing the normal
           permission bits on a file, such as 0600 (typically meaning read-write to the owner,
           and no permissions for anyone else.) The default is system-specific, most often 0644.

               Important
               Not all systems validate these permissions. In particular, illumos and Solaris are
               known to ignore these permission settings when connecting.

               Note
               Normally both read and write permission will be necessary for a peer dialer to
               connect. See your system documentation for UNIX domain sockets for more
               information.

               Note
               The umask of the process is not applied to these bits.

               Tip
               The best practice for limiting access is to place the socket in a directory
               writable only by the server, and only readable and searchable by clients. All
               mainstream POSIX systems will fail to permit a client to connect to a socket
               located in a directory for which the client lacks search (execute) permission.

       NNG_OPT_IPC_SECURITY_DESCRIPTOR
           (PSECURITY_DESCRIPTOR) This write-only option may be used on listeners on Windows
           platforms to configure the SECURITY_DESCRIPTOR that is used when creating the
           underlying named pipe. The value is a pointer, PSECURITY_DESCRIPTOR, and may only be
           applied to listeners that have not been started yet.

   Common Platform Specific Options
       The following options are supported by this transport when the underlying platform
       supports them:

       •   NNG_OPT_PEER_GID (also available as NNG_OPT_IPC_PEER_GID)

       •   NNG_OPT_PEER_PID (also available as NNG_OPT_IPC_PEER_PID)

       •   NNG_OPT_PEER_UID (also available as NNG_OPT_IPC_PEER_UID)

       •   NNG_OPT_PEER_ZONEID (also available as NNG_OPT_IPC_PEER_ZONEID)

   Inherited Options
       Generally, the following option values are also available when appropriate for the
       context:

       •   NNG_OPT_LOCADDR

       •   NNG_OPT_REMADDR

SEE ALSO

       nng_dialer_get(3), nng_dialer_set(3), nng_listener_get(3), nng_listener_set(3),
       nng_pipe_get(3), nng_options(5) nng(7), nng_ipc(7)

                                            2024-12-27                         NNG_IPC_OPTIONS(5)