sd_machine_get_ifindices(3) — Linux manual page

NAME | SYNOPSIS | DESCRIPTION | RETURN VALUE | NOTES | SEE ALSO | COLOPHON

SD_MACHINE_GET_CLASS(3)     sd_machine_get_class     SD_MACHINE_GET_CLASS(3)

NAME         top

       sd_machine_get_class, sd_machine_get_ifindices - Determine the class
       and network interface indices of a locally running virtual machine or
       container

SYNOPSIS         top

       #include <systemd/sd-login.h>

       int sd_machine_get_class(const char* machine, char **class);

       int sd_machine_get_ifindices(const char* machine,
                                    int **ret_ifindices);

DESCRIPTION         top

       sd_machine_get_class() may be used to determine the class of a
       locally running virtual machine or container that is registered with
       systemd-machined.service(8). The string returned is either "vm" or
       "container". The returned string needs to be freed with the libc
       free(3) call after use.

       sd_machine_get_ifindices() may be used to determine the numeric
       indices of the network interfaces on the host that are pointing
       towards the specified locally running virtual machine or container.
       The vm or container must be registered with
       systemd-machined.service(8). The output parameter ret_ifindices may
       be passed as NULL when the output value is not needed. The returned
       array needs to be freed with the libc free(3) call after use.

RETURN VALUE         top

       On success, these functions return a non-negative integer.
       sd_machine_get_ifindices() returns the number of the relevant network
       interfaces. On failure, these calls return a negative errno-style
       error code.

   Errors
       Returned errors may indicate the following problems:

       -ENXIO
           The specified machine does not exist or is currently not running.

       -EINVAL
           An input parameter was invalid (out of range, or NULL, where that
           is not accepted).

       -ENOMEM
           Memory allocation failed.

NOTES         top

       These APIs are implemented as a shared library, which can be compiled
       and linked to with the libsystemd pkg-config(1) file.

SEE ALSO         top

       systemd(1), sd-login(3), systemd-machined.service(8),
       sd_pid_get_machine_name(3)

COLOPHON         top

       This page is part of the systemd (systemd system and service manager)
       project.  Information about the project can be found at 
       ⟨http://www.freedesktop.org/wiki/Software/systemd⟩.  If you have a bug
       report for this manual page, see
       ⟨http://www.freedesktop.org/wiki/Software/systemd/#bugreports⟩.  This
       page was obtained from the project's upstream Git repository
       ⟨https://github.com/systemd/systemd.git⟩ on 2020-11-01.  (At that
       time, the date of the most recent commit that was found in the repos‐
       itory was 2020-11-01.)  If you discover any rendering problems in
       this HTML version of the page, or you believe there is a better or
       more up-to-date source for the page, or you have corrections or im‐
       provements to the information in this COLOPHON (which is not part of
       the original manual page), send a mail to man-pages@man7.org

systemd 247                                          SD_MACHINE_GET_CLASS(3)

Pages that refer to this page: 30-systemd-environment-d-generator(7)systemd.index(7)