sd_hwdb_new(3) — Linux manual page

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

SD_HWDB_NEW(3)                 sd_hwdb_new                SD_HWDB_NEW(3)

NAME         top

       sd_hwdb_new, sd_hwdb_new_from_path, sd_hwdb_ref, sd_hwdb_unref -
       Create a new hwdb object and create or destroy references to it

SYNOPSIS         top

       #include <systemd/sd-hwdb.h>

       int sd_hwdb_new(sd_hwdb **hwdb);

       int sd_hwdb_new_from_path(const char *path, sd_hwdb **hwdb);

       sd_hwdb* sd_hwdb_ref(sd_hwdb *hwdb);

       sd_hwdb* sd_hwdb_unref(sd_hwdb *hwdb);

DESCRIPTION         top

       sd_hwdb_new() creates a new hwdb object to access the binary hwdb
       database. Upon initialization, the file containing the binary
       representation of the hardware database is located and opened.
       The new object is returned in hwdb.

       sd_hwdb_new_from_path() may be used to specify the path from
       which the binary hardware database should be opened.

       The hwdb object is reference counted.  sd_hwdb_ref() and
       sd_hwdb_unref() may be used to get a new reference or destroy an
       existing reference to an object. The caller must dispose of the
       reference acquired with sd_hwdb_new() by calling sd_hwdb_unref()
       when done with the object.

       Use sd_hwdb_seek(3), sd_hwdb_get(3), and sd_hwdb_enumerate(3) to
       access entries.

RETURN VALUE         top

       On success, sd_hwdb_new() and sd_hwdb_new_from_path() return a
       non-negative integer. On failure, a negative errno-style error
       code is returned.

       sd_hwdb_ref() always returns the argument.

       sd_hwdb_unref() always returns NULL.

   Errors
       Returned errors may indicate the following problems:

       -ENOENT
           The binary hardware database file could not be located. See
           systemd-hwdb(8) for more information.

       -EINVAL
           The located binary hardware database file is in an
           incompatible format.

       -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), systemd-udevd.service(8), sd-hwdb(3), systemd-hwdb(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 2022-12-17.  (At that
       time, the date of the most recent commit that was found in the
       repository was 2022-12-16.)  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 improvements to the information in this COLOPHON
       (which is not part of the original manual page), send a mail to
       man-pages@man7.org

systemd 252                                               SD_HWDB_NEW(3)

Pages that refer to this page: sd-hwdb(3)sd_hwdb_get(3)systemd.directives(7)systemd.index(7)