HEX
Server: Apache
System: Linux server2.voipitup.com.au 4.18.0-553.109.1.lve.el8.x86_64 #1 SMP Thu Mar 5 20:23:46 UTC 2026 x86_64
User: posscale (1027)
PHP: 8.2.30
Disabled: exec,passthru,shell_exec,system
Upload Files
File: //opt/saltstack/salt/lib/python3.10/site-packages/salt/grains/__pycache__/nvme.cpython-310.pyc
o

�N�g��@sVdZddlZddlZddlZddlZddlZdZe�e	�Z
dd�Zdd�Zdd	�Z
dS)
z�
Grains for NVMe Qualified Names (NQN).

.. versionadded:: 3000

To enable these grains set `nvme_grains: True` in the minion config.

.. code-block:: yaml

    nvme_grains: True
�NZnvmecCst�dd�dur
dStS)NZnvme_grainsF)Z__opts__�get�__virtualname__�rr�D/opt/saltstack/salt/lib/python3.10/site-packages/salt/grains/nvme.py�__virtual__srcCs&i}d|d<tjj��rt�|d<|S)z
    Return NVMe NQN
    F�nvme_nqn)�salt�utils�platformZis_linux�
_linux_nqn)Zgrainsrrrr s

rc
Cs�g}d}z0tjj�|d��}|D]}|��}|�d�r |�|�qWd�W|S1s-wYW|Sty[}z|jtj	krPt
�d||�WYd}~|SWYd}~|Sd}~ww)z,
    Return NVMe NQN from a Linux host.
    z/etc/nvme/hostnqn�rznqn.NzError while accessing '%s': %s)rr	�filesZfopen�strip�
startswith�append�OSError�errno�ENOENT�log�debug)�retZ	initiatorZ_nvme�line�exrrrr+s,

���	�	�
���r)�__doc__r�loggingZsalt.utils.filesrZsalt.utils.pathZsalt.utils.platformr�	getLogger�__name__rrrrrrrr�<module>s