ó ŇR4Sc@sdZddlZddlZddlZddlmZmZmZmZm Z m Z m Z m Z m Z mZmZmZmZmZmZddlmZmZmZmZmZddljZddlmZmZddlmZ d„Z!d„Z"d „Z#d „Z$dS( s˛ Most of the generic unix methods of our superclass can be used on Solaris. For the following methods, there is a Solaris-specific implementation in the 'arch' extension module. i˙˙˙˙N(tget_group_by_nametget_user_by_nametget_name_by_gidtget_name_by_uidtis_admint get_useridt get_usernametchowntrenametremovetlinktcopyfilet split_pathtget_roott assert_mode(tELFtEXECt PD_LOCAL_PATHtUNFOUNDt SMF_MANIFEST(tfgetattrtfsetattr(t get_attr_dictcCs tjƒS(N(tarcht get_isainfo(((s;/usr/lib/python2.7/vendor-packages/pkg/portable/os_sunos.pyR-scCs tjƒS(N(Rt get_release(((s;/usr/lib/python2.7/vendor-packages/pkg/portable/os_sunos.pyR0scCs tjƒS(N(Rt get_platform(((s;/usr/lib/python2.7/vendor-packages/pkg/portable/os_sunos.pyR3sccs tjƒ\}}tj|dƒ}x2|D]*}|jtjj|jtƒdƒq+W|j ƒt j dd|gdt j ƒj ƒdjƒ}t|ƒt|ƒt|ƒksźt‚xJt|ƒD]<\}}|jƒ}||}|jt}|jdƒd} |jd| ƒ} dj| d| !ƒ} | |kr[td || |fƒ‚n| | jƒjƒ} d j| ƒ} | dd kr˜tVqÉ| dd kr°tVqÉ| d krÄtVqÉ| ddkrddlm}||ƒrřtVq| VqÉ| VqÉWdS(Ntws s /usr/bin/files-ftstdoutit:ispf:%s rfn:%s file_out:%st Rt executables&cannot open: No such file or directorytXMLi˙˙˙˙(tis_smf_manifest(ttempfiletmkstemptostfdopentwritetpathtjointattrsRtcloset subprocesstPopentPIPEt communicatet splitlinesR tlentAssertionErrort enumeratetstriptcounttsplitt RuntimeErrorRRRtpkg.flavor.smf_manifestR!R(tactionstt_fdtt_pathtt_fhtatrestitfile_outt proto_filet colon_cntttmpt res_file_namet file_typet joined_ftR!((s;/usr/lib/python2.7/vendor-packages/pkg/portable/os_sunos.pyt get_file_type6sB (        (%t__doc__R$R+R"tos_unixRRRRRRRRRR R R R R Rt pkg.portableRRRRRtpkg.archRt pkg.sysattrRRRtget_sysattr_dictRRRRF(((s;/usr/lib/python2.7/vendor-packages/pkg/portable/os_sunos.pyts   d(