File: //opt/alt/python27/lib/python2.7/site-packages/clselector/cl_selector_arg_parse.pyc
�
i�B^c @` s� d d l m Z d d l m Z d d l m Z d d l Z d d l Z d d l m Z d d l m Z d d l m Z m
Z
m Z m Z m
Z
d d l m Z d
Z d Z d Z d
Z d � Z d � Z e e d � Z d S( i ( t absolute_import( t print_function( t divisionN( t docopt( t
DocoptExit( t Schemat Andt Uset Ort SchemaErrori ( t CloudlinuxSelectorLibt nodejst pythont rubyt phpc C` s | rA t | d | d | d | d g � rA t d d � � n | t k rr t | d g � rr t d d � � n | t k r� t | d g � r� t d d � � n | t t f k r.t | d | d | d
| d | d | d | d | d
| d | d | d | d | d g
� r.t d d � � n | t k rZ| d rZt d d t � � n | r�t | d | d | d g � r�t d d � � n | t k r�t | d g � r�t d d � � n | t t f k r| d r| rt � rt d d � � n d S( s�
Do some additional checks to restrict commands not available for current
user or interpreter or whatever and do this only after args parsing
s install-versions uninstall-versions enable-versions disable-versions2 This command should be run from administrator onlys change-version-multiples) This command is supported only for NodeJSs uninstall-moduless) This command is supported only for Pythont creates read-configs save-configt startt restartt stopt destroys install-moduless
run-scripts4 This command is supported only for NodeJS and Pythons make-defaults-configs% This command is supported only for %ss --selector-statuss --default-versions --supported-versionss! Specified option(s) only for roots
--entry-points This options(s) only for Pythont gets Selector is disabledN( t anyR t Nonet NODEJSt PYTHONt PHPt _run_from_admin( t interpretert argst as_from_roott selector_status( ( sQ /opt/alt/python27/lib/python2.7/site-packages/clselector/cl_selector_arg_parse.pyt _ensure_command_allowed sP
.c C` sN y5 t j t j j d t t j � � � � j d k SWn t k
rI t SXd S( s�
Check who is owner of the parent process.
if owner is root - return True
if parent process can't be found - return True
:return:
s /proc/i N( t ost statt patht joint strt getppidt st_uidt OSErrort True( ( ( sQ /opt/alt/python27/lib/python2.7/site-packages/clselector/cl_selector_arg_parse.pyR W s 5
c ` s d } d j | � } y t | | � � Wn5 t k
r_ d } | sU | d | 7} n t | f SX� j d � � � f d � } t dN t t d � � t t t | � � d d �} d
� } d } t
i9 t d 6t d
6t d 6t d 6t d 6t d 6t d 6t d 6t d 6t d 6t d 6t d 6t d 6t d 6t d 6t d 6t d 6t d 6t d 6t d 6t dN t � d 6t d! 6t d"