mirror of
https://github.com/morgan9e/systemd
synced 2026-04-14 00:14:32 +09:00
109 lines
5.2 KiB
XML
109 lines
5.2 KiB
XML
<?xml version='1.0'?>
|
|
<!DOCTYPE refentry PUBLIC "-//OASIS//DTD DocBook XML V4.5//EN"
|
|
"http://www.oasis-open.org/docbook/xml/4.5/docbookx.dtd">
|
|
<!-- SPDX-License-Identifier: LGPL-2.1-or-later -->
|
|
|
|
<refentry id="sd_device_enumerator_get_device_first" xmlns:xi="http://www.w3.org/2001/XInclude">
|
|
|
|
<refentryinfo>
|
|
<title>sd_device_enumerator_get_device_first</title>
|
|
<productname>systemd</productname>
|
|
</refentryinfo>
|
|
|
|
<refmeta>
|
|
<refentrytitle>sd_device_enumerator_get_device_first</refentrytitle>
|
|
<manvolnum>3</manvolnum>
|
|
</refmeta>
|
|
|
|
<refnamediv>
|
|
<refname>sd_device_enumerator_get_device_first</refname>
|
|
<refname>sd_device_enumerator_get_device_next</refname>
|
|
<refname>sd_device_enumerator_get_subsystem_first</refname>
|
|
<refname>sd_device_enumerator_get_subsystem_next</refname>
|
|
|
|
<refpurpose>Enumerates devices and get the first or next device.</refpurpose>
|
|
</refnamediv>
|
|
|
|
<refsynopsisdiv>
|
|
<funcsynopsis>
|
|
<funcsynopsisinfo>#include <systemd/sd-device.h></funcsynopsisinfo>
|
|
|
|
<funcprototype>
|
|
<funcdef>sd_device *<function>sd_device_enumerator_get_device_first</function></funcdef>
|
|
<paramdef>sd_device_enumerator *<parameter>enumerator</parameter></paramdef>
|
|
</funcprototype>
|
|
|
|
<funcprototype>
|
|
<funcdef>sd_device *<function>sd_device_enumerator_get_device_next</function></funcdef>
|
|
<paramdef>sd_device_enumerator *<parameter>enumerator</parameter></paramdef>
|
|
</funcprototype>
|
|
|
|
<funcprototype>
|
|
<funcdef>sd_device *<function>sd_device_enumerator_get_subsystem_first</function></funcdef>
|
|
<paramdef>sd_device_enumerator *<parameter>enumerator</parameter></paramdef>
|
|
</funcprototype>
|
|
|
|
<funcprototype>
|
|
<funcdef>sd_device *<function>sd_device_enumerator_get_subsystem_next</function></funcdef>
|
|
<paramdef>sd_device_enumerator *<parameter>enumerator</parameter></paramdef>
|
|
</funcprototype>
|
|
</funcsynopsis>
|
|
</refsynopsisdiv>
|
|
|
|
<refsect1>
|
|
<title>Description</title>
|
|
<para>The <function>sd_device_enumerator_get_device_first()</function> function enumerates all
|
|
matching devices under <filename>/sys/bus/<replaceable>SUBSYSTEM</replaceable>/devices/</filename>
|
|
and <filename>/sys/class/<replaceable>SUBSYSTEM</replaceable>/devices/</filename>,
|
|
and returns a pointer to the first <type>sd_device</type> object. If no devices are found,
|
|
<constant>NULL</constant> is returned.</para>
|
|
|
|
<para>The <function>sd_device_enumerator_get_device_next()</function> function returns the pointer
|
|
to the next <type>sd_device</type> from the <parameter>enumerator</parameter>. It should
|
|
be called after <function>sd_device_enumerator_get_device_first()</function> or after a previous
|
|
call to this function. If no more devices are available, <constant>NULL</constant> is returned.</para>
|
|
|
|
<para>The <function>sd_device_enumerator_get_subsystem_first()</function> function enumerates all
|
|
matching subsystem devices in <filename>/sys/module/</filename>, <filename>/sys/bus/</filename>,
|
|
and <filename>/sys/bus/<replaceable>SUBSYSTEM</replaceable>/drivers/</filename>
|
|
(such as <filename>/sys/bus/pci/drivers/</filename>). It returns a pointer to the first
|
|
<type>sd_device</type> object. If no devices are found <constant>NULL</constant> is returned.
|
|
Note that this does <emphasis>not</emphasis> enumerate devices provided by
|
|
<function>sd_device_enumerator_get_device_first/next()</function>. Hence, e.g.
|
|
<filename>/sys/bus/pci/</filename>, <filename>/sys/bus/pci/drivers/ahci/</filename> and so on are
|
|
enumerated, but <filename>/sys/bus/pci/devices/0000:00:00.0/</filename> and so on are not.</para>
|
|
|
|
<para>The <function>sd_device_enumerator_get_subsystem_next()</function> function returns the next
|
|
subsystem device from the enumerator. It should be called after
|
|
<function>sd_device_enumerator_get_subsystem_first()</function> or after a previous call to this
|
|
function. If no more subsystem devices are available, <constant>NULL</constant> is returned.</para>
|
|
</refsect1>
|
|
|
|
<refsect1>
|
|
<title>Return Value</title>
|
|
<para>On success, these functions return a pointer to an <type>sd_device</type> object.
|
|
On failure or when no more devices are available, <constant>NULL</constant> is returned. The
|
|
returned pointers are owned by the enumerator and should not be freed by the caller.</para>
|
|
</refsect1>
|
|
|
|
<refsect1>
|
|
<title>History</title>
|
|
<para><function>sd_device_enumerator_get_device_first()</function>,
|
|
<function>sd_device_enumerator_get_device_next()</function>,
|
|
<function>sd_device_enumerator_get_subsystem_first()</function>, and
|
|
<function>sd_device_enumerator_get_subsystem_next()</function> were introduced in systemd version
|
|
240.</para>
|
|
</refsect1>
|
|
|
|
<refsect1>
|
|
<title>See Also</title>
|
|
|
|
<para><simplelist type="inline">
|
|
<member><citerefentry><refentrytitle>sd_device_enumerator_new</refentrytitle><manvolnum>3</manvolnum></citerefentry></member>
|
|
<member><citerefentry><refentrytitle>sd_device_enumerator_add_match_parent</refentrytitle><manvolnum>3</manvolnum></citerefentry></member>
|
|
<member><citerefentry><refentrytitle>sd_device_ref</refentrytitle><manvolnum>3</manvolnum></citerefentry></member>
|
|
</simplelist></para>
|
|
</refsect1>
|
|
|
|
</refentry>
|