File: //lib/python3/dist-packages/landscape/lib/__pycache__/fd.cpython-312.pyc
�
    �~�e�  �                   �   � d Z ddlZddlZd� Zy)z�A utility module which has FD-related functions.
This module mostly exists for L{clean_fds}, so it can be imported without
accidentally getting a reactor or something else that might create a critical
file descriptor.
�    Nc                  ��   � t        j                  t         j                  �      d   } t        d| �      }t	        d|�      D ]  }	 t        j                  |�       � y# t        $ r Y �'w xY w)z�Close all non-stdio file descriptors.
    This should be called at the beginning of a program to avoid inheriting any
    unwanted file descriptors from the invoking process.  Unfortunately, this
    is really common in unix!
    �   i   �   N)�resource�	getrlimit�
RLIMIT_NOFILE�min�range�os�close�OSError)�
rlimit_nofile�total_descriptors�fds      �2/usr/lib/python3/dist-packages/landscape/lib/fd.py�	clean_fdsr      sg   � � �&�&�x�'=�'=�>�q�A�M��D�-�0���A�(�)� ��	��H�H�R�L��� � 	��	�s   �A�	A'�&A')�__doc__r   r   r   � �    r   �<module>r      s   ��� 
� �
r