
    =	f	                         d dl Z d dlZ d dlZd dlZddlmZ  ej                  dej                  j                  ej                  j                        Z	d Z
d Zd Zd	dZy)
    N   )logger c                 b    | rt        j                  |       S t        j                  d| z         y)NzCommand not found 
   )ossystemlogerror)cmds    !/usr/share/hplip/base/os_utils.pyexecuter   !   s(    
yy~		(3./    c                     t         j                  j                  |       syt         j                  j                  |       S )N)r   pathexistsgetsize)filenames    r   getFileSizer   ,   s(    77>>(#77??8$$r   c                     t         j                  j                  d      } t         j                  j                  | d      }d}t         j                  j	                  |      s~	 t        j
                  d       t        j                  |       }t        j                  |d       t        j                  ||t        j                     |t        j                            ||fS ||fS # t        $ r  d}t        j                  d|z         Y ||fS w xY w)N~z.hplipr   i  r   zFailed to create %s)r   r   
expanduserjoinr   umaskstatmkdirchownST_UIDST_GIDOSErrorr
   r   )homedirhplipdirstatusss       r   getHPLIPDirr&   2   s    gg  %Gww||GX.HF77>>(#	8HHQK AHHXu%HHXq~q~> 868  	8FII+h678	8s   "A9C# ##DDc                    d}	 |rt        j                  |       D ]~  \  }}}|D ]7  }t        j                  t         j                  j	                  ||      ||       9 |D ]7  }	t        j                  t         j                  j	                  ||	      ||       9  	 |S t        j                  | ||       	 |S # t
        $ r d}t        j                  d| z         Y |S w xY w)Nr   r   z Failed to change ownership of %s)r   walkr   r   r   r!   r
   r   )
r   usergroup	Recursiver$   rootdirsfilesdrfls
             r   changeOwnerr1   @   s    F<%'WWT] B!dE BBHHRWW\\$3T5AB BBHHRWW\\$3T5ABB M	 HHT4' M  <		4d:;M<s   BB9 B9 9#C C )F)r   os.pathlocaler   r   r   LoggerLOG_LEVEL_INFOLOG_TO_CONSOLEr
   r   r   r&   r1    r   r   <module>r8      sT   . 
    fmmB44fmm6R6RS%r   