U
    a±dâ  ã                   @   s   d dl Z dd„ ZdS )é    Nc           
   	   C   sÌ   |   di ¡  d¡}|rÈt dddddddœ¡}ddl}| |j |¡¡ zh|  dd¡}|  dd	¡}|  dd
¡}|  dd¡}|  dd¡}|  dd¡}	|dkr¢|	r¢|	}|||||fW S  tjk
rÆ   Y nX dS )a\  
    Attempt to parse mysql database config file for connection settings.
    Ideally we would hook into django's code to do this, but read_default_file is handled by the mysql C libs
    so we have to emulate the behaviour

    Settings that are missing will return ''
    returns (user, password, database_name, database_host, database_port)
    ÚOPTIONSÚread_default_fileÚ )ÚuserÚpasswordÚdatabaseÚhostÚportÚsocketr   NÚclientr   r   r   r   r	   r
   Ú	localhost)r   r   r   r   r   )ÚgetÚconfigparserÚRawConfigParserÚosÚreadÚpathÚ
expanduserÚNoSectionError)
Zdbinfor   Úconfigr   r   r   Zdatabase_nameZdatabase_hostZdatabase_portr
   © r   úF/tmp/pip-unpacked-wheel-portabvm/django_extensions/management/mysql.pyÚparse_mysql_cnf   s2    	úr   )r   r   r   r   r   r   Ú<module>   s   