KGRKJGETMRETU895U-589TY5MIGM5JGB5SDFESFREWTGR54TY
Server : Apache/2.2.17 (Unix) mod_ssl/2.2.17 OpenSSL/0.9.8e-fips-rhel5 DAV/2 PHP/5.2.17
System : Linux localhost 2.6.18-419.el5 #1 SMP Fri Feb 24 22:47:42 UTC 2017 x86_64
User : nobody ( 99)
PHP Version : 5.2.17
Disable Function : NONE
Directory :  /proc/21585/root/usr/lib64/python2.4/site-packages/

Upload File :
current_dir [ Writeable ] document_root [ Writeable ]

 

Current File : //proc/21585/root/usr/lib64/python2.4/site-packages/seobject.pyc
mò
b&KRc@s‘dkZdkZdkZdkZdkZdkZdkZdkZdkTdZ	dk
Z
e
ie	dƒe
ie	ƒye
i
e	ddddƒWn)ej
odkZeeid<nXdZdkZhZeed<eed	<eed
<eed<eed<eed
<eed<eed<eed<eed<eed<eed<eed<eed<eed<eed<y dkZdfd„ƒYZWndfd„ƒYZnXeƒZd„Z dd„Z!dd„Z"dfd„ƒYZ#d e#fd!„ƒYZ$d"e#fd#„ƒYZ%d$e#fd%„ƒYZ&d&e#fd'„ƒYZ'd(e#fd)„ƒYZ(d*e#fd+„ƒYZ)d,e#fd-„ƒYZ*dS(.N(t*tpolicycoreutilss/usr/share/localet	localedirtunicodeit_ts	all filess--sregular files-dt	directorys-cscharacter devices-bsblock devices-stsockets-ls
symbolic links-ps
named pipetloggercBs/tZd„Zdddddddd„ZRS(NcCstiƒ|_dS(N(tauditt
audit_opentselftaudit_fd(R((t./usr/lib64/python2.4/site-packages/seobject.pyt__init__>sRc

CsQti|ititidt|ƒ|d||||||	ddd|ƒdS(NiR(R	taudit_log_semanage_messageRRtAUDIT_USER_ROLE_CHANGEtsystargvtstrtmsgtnametsenametseroletseranget
old_senamet
old_seroletold_serangetsuccess(
RRRRRRRRRR((R
tlogAs(t__name__t
__module__RR(((R
R=s	cBs&tZdddddddd„ZRS(NRc
Cs|djo
d}
nd}
|
d||f7}
|djo|
d|7}
n|djo|
d|7}
n|djo|
d|7}
n|djo|
d	|7}
n|djo|djo|
d
|7}
n|	djo|	djo|
d|	7}
nti|
ƒdS(NisSuccessful: sFailed: s %s name=%sRs sename=s old_sename=s role=s
 old_role=s
 MLSRange=s old_MLSRange=(RtmessageRRRRRRRtNoneRtsyslog(RRRRRRRRRRR ((R
REs"





(RRR(((R
RDscCsfd}d}|d|d}|d|d}|d|dd|d}tid	|d
|ƒS(Nss[0-9]*sc[0-9]*s(\.s)?s(\,s)*s(-s(:t^t$(tsensitivitytcategoryt	cat_ranget
categoriestregtretsearchtraw(R,R&R'R%R)R(((R
tvalidate_level[scCsd}|djod||f}n|}ti|ƒ\}}|djo|Sn|o|t|ƒ}n|djo|Sn|SdS(Nsa:b:c:is%s%siR(	tfillertprependR,tcontexttselinuxtselinux_raw_to_trans_contexttrcttranstlen(R,R/R.R0R3R4((R
t	translatecs


cCsd}|djod||f}n|}ti|ƒ\}}|djo|Sn|o|t|ƒ}n|djo|Sn|SdS(Nsa:b:c:is%s%siR(	R.R/R4R0R1tselinux_trans_to_raw_contextR3R,R5(R4R/R.R,R0R3((R
tuntranslatess


tsemanageRecordscBstZd„ZRS(NcCstƒ|_t|iƒ|_|ipttdƒƒ‚n|djot|i|t	ƒn|ip#t
|iƒttdƒƒ‚nt|iƒ}|t
jo#t
|iƒttdƒƒ‚nt|iƒ}|djo#t
|iƒttdƒƒ‚ndS(Ns Could not create semanage handleRs:SELinux policy is not managed or store cannot be accessed.sCannot read policy store.is'Could not establish semanage connection(tsemanage_handle_createRtshtsemanage_is_managedt	semanagedt
ValueErrorRtstoretsemanage_select_storetSEMANAGE_CON_DIRECTtsemanage_handle_destroytsemanage_access_checkR3tSEMANAGE_CAN_READtsemanage_connect(RR?R3((R
R…s"







(RRR(((R
R9„stloginRecordscBsJtZdd„Zd„Zddd„Zd„Zd„Zdd„ZRS(	NRcCsti||ƒdS(N(R9RRR?(RR?((R
Rsc	Cs>tdjo'|djo
d}q4t|ƒ}n|djo
d}nyyt|i|ƒ\}}|djot
tdƒ|ƒ‚nt|i|ƒ\}}|djot
tdƒ|ƒ‚n|ot
tdƒ|ƒ‚nyti|ƒWnt
td	ƒ|ƒ‚nXt|iƒ\}}|djot
td
ƒ|ƒ‚nt|i||ƒ}|djot
tdƒ|ƒ‚n|djo@t|i||ƒ}|djot
tdƒ|ƒ‚qãnt|i||ƒ}|djot
td
ƒ|ƒ‚nt|iƒ}|djot
tdƒƒ‚nt|i||ƒ}|djot
tdƒ|ƒ‚nt|iƒ}|djot
tdƒ|ƒ‚nWn=t
j
o1}tidtdƒ||d|ƒ|‚nXtidtdƒ||d|ƒt|ƒt|ƒdS(NiRts0tuser_uisCould not create a key for %ss2Could not check if login mapping for %s is defineds'Login mapping for %s is already definedsLinux User %s does not exists%Could not create login mapping for %ssCould not set name for %ssCould not set MLS range for %ss!Could not set SELinux user for %ss$Could not start semanage transactions"Could not add login mapping for %ssadd SELinux user mapping(tis_mls_enabledRR8Rtsemanage_seuser_key_createRR;RR3tkR>Rtsemanage_seuser_existstexiststpwdtgetpwnamtsemanage_seuser_createtutsemanage_seuser_set_nametsemanage_seuser_set_mlsrangetsemanage_seuser_set_senametsemanage_begin_transactiontsemanage_seuser_modify_localtsemanage_committerrortmylogRtsemanage_seuser_key_freetsemanage_seuser_free(	RRRRRMR3RKRQRX((R
tadd s^














""
c
Cs´d}d}y(|djo#|djottdƒƒ‚nt|i|ƒ\}}|djottdƒ|ƒ‚nt|i|ƒ\}}|djottdƒ|ƒ‚n|pttdƒ|ƒ‚nt|i|ƒ\}}	|djottdƒ|ƒ‚nt|	ƒ}t|	ƒ}|djot|i|	t|ƒƒn|}|djot|i|	|ƒn|}t|iƒ}|djottdƒƒ‚nt|i||	ƒ}|djottd	ƒ|ƒ‚nt|iƒ}|djottd	ƒ|ƒ‚nWn@tj
o4}
tidd
||d||d|ƒ	|
‚nXtidd
||d||d|ƒ	t|ƒt|	ƒdS(NRsRequires seuser or serangeisCould not create a key for %ss2Could not check if login mapping for %s is defineds#Login mapping for %s is not definedsCould not query seuser for %ss$Could not start semanage transactions%Could not modify login mapping for %ssmodify selinux user mappingi(t	oldsenamet
oldserangeRRR>RRJRR;RR3RKRLRMtsemanage_seuser_queryRQtsemanage_seuser_get_mlsrangetsemanage_seuser_get_senameRSR8RTRURVRWRXRYRRZR[(RRRRRMR^R3R]RKRQRX((R
tmodifyÞsN







%%
cCsöy¤t|i|ƒ\}}|djottdƒ|ƒ‚nt|i|ƒ\}}|djottdƒ|ƒ‚n|pttdƒ|ƒ‚nt
|i|ƒ\}}|djottdƒ|ƒ‚n|pttdƒ|ƒ‚nt|iƒ}|djottdƒƒ‚nt|i|ƒ}|djottdƒ|ƒ‚nt
|iƒ}|djottdƒ|ƒ‚nWn.tj
o"}tidd|ƒ|‚nXtid	d|ƒt|ƒdS(
NisCould not create a key for %ss2Could not check if login mapping for %s is defineds#Login mapping for %s is not defineds<Login mapping for %s is defined in policy, cannot be deleteds$Could not start semanage transactions%Could not delete login mapping for %ssdelete SELinux user mappingi(RJRR;RR3RKR>RRLRMtsemanage_seuser_exists_localRUtsemanage_seuser_del_localRWRXRYRRZ(RRRMRKRXR3((R
tdeletes8





cCsh}t|iƒ\}|_|djottdƒƒ‚nx9|iD].}t	|ƒ}t|ƒt|ƒf||<qKW|S(NisCould not list login mappings(
tddicttsemanage_seuser_listRR;R3tulistR>RRQtsemanage_seuser_get_nameRRaR`(RRfRRQR3((R
tget_all9s

 icCsí|iƒ}|iƒ}|iƒtdjol|o(dtdƒtdƒtdƒfGHnxˆ|D].}d|||dt	||dƒfGHqeWnO|odtdƒtdƒfGHnx%|D]}d	|||dfGHqÈWdS(
Nis
%-25s %-25s %-25s
s
Login NamesSELinux Users
MLS/MCS Ranges%-25s %-25s %-25sis

%-25s %-25s
s%-25s %-25s(
RRjRftkeystsortRItheadingRRKR6(RRmRfRkRK((R
tlistDs

(0(RRRR\RbReRjRn(((R
RFœs	>4	'	tseluserRecordscBsPtZdd„Zd„Zgdddd„Zd„Zd„Zdd„ZRS(	NRcCsti||ƒdS(N(R9RRR?(RR?((R
RTscCs$tdjoJ|djo
d}n
t|ƒ}|djo
d}qWt|ƒ}ndi|ƒ}	yPt|i	|ƒ\}}
|djot
tdƒ|ƒ‚nt|i	|
ƒ\}}|djot
tdƒ|ƒ‚n|ot
tdƒ|ƒ‚nt|i	ƒ\}}|djot
td	ƒ|ƒ‚nt|i	||ƒ}|djot
td
ƒ|ƒ‚nxP|D]H}t|i	||ƒ}|djo t
tdƒ||fƒ‚q‡q‡Wtdjo|t|i	||ƒ}|djot
tdƒ|ƒ‚nt|i	||ƒ}|djot
td
ƒ|ƒ‚q\ntid|ƒdjot
tdƒ|ƒ‚nt|i	||ƒ}|djo t
tdƒ||fƒ‚nt|i	|ƒ\}}|djot
tdƒ|ƒ‚nt|i	ƒ}|djot
tdƒƒ‚nt|i	|
|ƒ}|djot
tdƒ|ƒ‚nt |i	ƒ}|djot
tdƒ|ƒ‚nWn7t
j
o+}
t"i#dd|||	|ƒ|
‚nXt"i#dd|||	|ƒt$|
ƒt%|ƒdS(NiRRGt isCould not create a key for %ss-Could not check if SELinux user %s is defineds"SELinux user %s is already defineds$Could not create SELinux user for %ssCould not set name for %ssCould not add role %s for %ssCould not set MLS range for %ssCould not set MLS level for %sssystem_u:object_r:%s_home_t:s0sInvalid prefix %ssCould not add prefix %s for %ssCould not extract key for %ss$Could not start semanage transactionsCould not add SELinux user %ssadd SELinux user record(&RIRR8tseleveltjointrolestserolestsemanage_user_key_createRR;RR3RKR>Rtsemanage_user_existsRMtsemanage_user_createRQtsemanage_user_set_nametrtsemanage_user_add_roletsemanage_user_set_mlsrangetsemanage_user_set_mlslevelR1tsecurity_check_contexttprefixtsemanage_user_set_prefixtsemanage_user_key_extracttkeyRUtsemanage_user_modify_localRWRXRYRtsemanage_user_key_freetsemanage_user_free(RRRsRqRR~RMR3RRtRKRyRQRX((R
R\Wst









$



 




c
Csd}d}ti|dƒ}yu|djoft|ƒdjoS|djoF|djo9t
djottdƒƒ‚q”ttdƒƒ‚nt
|i|ƒ\}}
|djottdƒ|ƒ‚nt|i|
ƒ\}}|djottdƒ|ƒ‚n|pttd	ƒ|ƒ‚nt|i|
ƒ\}}|djottd
ƒ|ƒ‚nt|ƒ}t|i|ƒ\}}	|djoti|	dƒ}n|d|}|djot|i|t|ƒƒn|djot|i|t|ƒƒn|djoKtid|ƒdjottdƒ|ƒ‚nt|i||ƒnt|ƒdjohx,|	D]$}
|
|jot!||
ƒqqWx6|D]*}
|
|	jot"|i||
ƒq¼q¼Wnt#|iƒ}|djottd
ƒƒ‚nt$|i|
|ƒ}|djottdƒ|ƒ‚nt%|iƒ}|djottdƒ|ƒ‚nWn@tj
o4}t'i(dd|d||d||ƒ	|‚nXt'i(dd|d||d||ƒ	t)|
ƒt*|ƒdS(NRRpiis&Requires prefix, roles, level or rangesRequires prefix or rolessCould not create a key for %ss-Could not check if SELinux user %s is definedsSELinux user %s is not definedsCould not query user for %sssystem_u:object_r:%s_home_tsInvalid prefix %ss$Could not start semanage transactions Could not modify SELinux user %ssmodify SELinux user record(+toldrolesR^tstringRrRstnewrolesR~R5RRqRIR>RRuRR;RR3RKRvRMtsemanage_user_queryRQtsemanage_user_get_mlsrangetsemanage_user_get_rolestrlistR{R8R|R1R}RRytsemanage_user_del_roleRzRUR‚RWRXRYRRƒR„(RRRsRqRR~RMR^R3R‹RKR‡R…RyRQRX((R
Rb¡sp:












%%
cCsöy¤t|i|ƒ\}}|djottdƒ|ƒ‚nt|i|ƒ\}}|djottdƒ|ƒ‚n|pttdƒ|ƒ‚nt
|i|ƒ\}}|djottdƒ|ƒ‚n|pttdƒ|ƒ‚nt|iƒ}|djottdƒƒ‚nt|i|ƒ}|djottdƒ|ƒ‚nt
|iƒ}|djottdƒ|ƒ‚nWn.tj
o"}tidd|ƒ|‚nXtid	d|ƒt|ƒdS(
NisCould not create a key for %ss-Could not check if SELinux user %s is definedsSELinux user %s is not defineds7SELinux user %s is defined in policy, cannot be deleteds$Could not start semanage transactions Could not delete SELinux user %ssdelete SELinux user recordi(RuRR;RR3RKR>RRvRMtsemanage_user_exists_localRUtsemanage_user_del_localRWRXRYRRƒ(RRRMRKRXR3((R
Reès8





cCsäh}t|iƒ\}|_|djottdƒƒ‚nxœ|iD]‘}t	|ƒ}t|i|ƒ\}}|djottdƒ|ƒ‚nt
i|dƒ}t|ƒt|ƒt|ƒ|f|t	|ƒ<qKW|S(NisCould not list SELinux userss Could not list roles for user %sRp(Rftsemanage_user_listRR;R3RhR>RRQtsemanage_user_get_nameRRŠR‹R†RrRstsemanage_user_get_prefixtsemanage_user_get_mlslevelR‰(RRfR‹RRsRQR3((R
Rjs


2icCsB|iƒ}|iƒ}|iƒtdjoÁ|oaddtdƒtdƒtdƒfGHdtdƒtdƒtd	ƒtd
ƒtdƒfGHnx¤|D]J}d|||d
t	||dƒt	||dƒ||dfGHqžWnO|odtdƒtdƒfGHnx%|D]}d|||dfGHqWdS(Nis
%-15s %-10s %-10s %-30sRtLabelingsMLS/s%-15s %-10s %-10s %-30s %s
sSELinux UsertPrefixs	MCS Levels	MCS Ranges
SELinux Roless%-15s %-10s %-10s %-30s %siiis	%-15s %s
s%-15s %s(
RRjRfRkRlRIRmRRKR6(RRmRfRkRK((R
Rns

':L(RRRR\RbReRjRn(((R
RoSs	JG	$	tportRecordscBsVtZdd„Zd„Zd„Zd„Zd„Zd„Zd„Zd	d
„Z	RS(NRcCsti||ƒdS(N(R9RRR?(RR?((R
R.sc	Cs;|djo
t}n*|djo
t}nttdƒƒ‚|djottdƒƒ‚n|idƒ}t	|ƒdjot
|dƒ}}n!t
|dƒ}t
|dƒ}|d	jottd
ƒƒ‚nt
|i|||ƒ\}}|djo ttdƒ||fƒ‚n||||fS(NttcptudpsProtocol udp or tcp is requiredRsPort is requiredt-iiiÿÿsInvalid ports Could not create a key for %s/%s(tprototSEMANAGE_PROTO_TCPtproto_dtSEMANAGE_PROTO_UDPR>RtporttsplittportsR5tintthightlowtsemanage_port_key_createRR;R3RK(	RRR™R›R¡R¢R3RKRŸ((R
t__genkey1s$






 c
Cs¯tdjo'|djo
d}q4t|ƒ}n|djottdƒƒ‚n|i||ƒ\}
}}}t|i|
ƒ\}	}|	djo ttdƒ||fƒ‚n|o ttdƒ||fƒ‚nt|iƒ\}	}|	djo ttdƒ||fƒ‚nt||ƒt|||ƒt|iƒ\}	}|	djo ttd	ƒ||fƒ‚nt|i|d
ƒ}	|	djo ttdƒ||fƒ‚nt|i|dƒ}	|	djo ttd
ƒ||fƒ‚nt|i||ƒ}	|	djo ttdƒ||fƒ‚n|djoFt|i||ƒ}	|	djo ttdƒ||fƒ‚q›nt|i||ƒ}	|	djo ttdƒ||fƒ‚nt|iƒ}	|	djottdƒƒ‚nt|i|
|ƒ}	|	djo ttdƒ||fƒ‚nt|iƒ}	|	djo ttdƒ||fƒ‚nt |ƒt!|
ƒt"|ƒdS(NiRRGsType is requiredis(Could not check if port %s/%s is definedsPort %s/%s already definedsCould not create port for %s/%ss"Could not create context for %s/%stsystem_us,Could not set user in port context for %s/%stobject_rs,Could not set role in port context for %s/%ss,Could not set type in port context for %s/%ss2Could not set mls fields in port context for %s/%ss$Could not set port context for %s/%ss$Could not start semanage transactionsCould not add port %s/%s(#RIRR8ttypeR>RRt_portRecords__genkeyRR™RKR›R¢R¡tsemanage_port_existsR;R3RMtsemanage_port_createtptsemanage_port_set_prototsemanage_port_set_rangetsemanage_context_createtcontsemanage_context_set_usertsemanage_context_set_roletsemanage_context_set_typetsemanage_context_set_mlstsemanage_port_set_conRUtsemanage_port_modify_localRWtsemanage_context_freetsemanage_port_key_freetsemanage_port_free(
RRR™RR§RMR›R¡R¢R3RKR«R¯((R
R\Ks`




  
 

 
 
 
 

$
 

 
 

c
CsD|djoF|djo9tdjottdƒƒ‚qSttdƒƒ‚n|i||ƒ\}
}}}t
|i|
ƒ\}	}|	djo ttdƒ||fƒ‚n|p ttdƒ||fƒ‚nt|i|
ƒ\}	}|	djo ttdƒ||fƒ‚nt|ƒ}|djot|i|t|ƒƒn|djot|i||ƒnt|iƒ}	|	djottd	ƒƒ‚nt|i|
|ƒ}	|	djo ttd
ƒ||fƒ‚nt|iƒ}	|	djo ttd
ƒ||fƒ‚nt|
ƒt|ƒdS(NRisRequires setype or serangesRequires setypeis(Could not check if port %s/%s is definedsPort %s/%s is not definedsCould not query port %s/%ss$Could not start semanage transactionsCould not modify port %s/%s(RtsetypeRIR>RRR¨RR™RKR›R¢R¡R©R;R3RMtsemanage_port_queryR«tsemanage_port_get_conR¯R³R8R²RURµRWR·R¸(
RRR™RR¹RMR›R¡R¢R3RKR«R¯((R
RbŒs:

  
 



 
 
c	Cs±|i||ƒ\}}}}t|i	|ƒ\}}|djo tt
dƒ||fƒ‚n|p tt
dƒ||fƒ‚nt|i	|ƒ\}}|djo tt
dƒ||fƒ‚n|p tt
dƒ||fƒ‚nt|i	ƒ}|djott
dƒƒ‚nt|i	|ƒ}|djo tt
dƒ||fƒ‚nt|i	ƒ}|djo tt
dƒ||fƒ‚nt|ƒdS(Nis(Could not check if port %s/%s is definedsPort %s/%s is not defineds2Port %s/%s is defined in policy, cannot be deleteds$Could not start semanage transactionsCould not delete port %s/%s(RR¨RR™RKR›R¢R¡R©R;R3RMR>Rtsemanage_port_exists_localRUtsemanage_port_del_localRWR·(	RRR™RMR›RKR¡R¢R3((R
Reµs*
  
  

 
 cCsÚh}t|iƒ\}|_|djottdƒƒ‚nx’|iD]‡}t	|ƒ}
t|
ƒ}|djoqKnt
|
ƒ}t|ƒ}t|ƒ}	t|ƒ}t|ƒ}||	|f|||f<qKW|S(NisCould not list portstreserved_port_t(Rftsemanage_port_listRR;R3tplistR>RRR»R¯tsemanage_context_get_typetctypetsemanage_context_get_mlstleveltsemanage_port_get_protoR™tsemanage_port_get_proto_strt	proto_strtsemanage_port_get_lowR¢tsemanage_port_get_highR¡(RRfR¡RÄR™RÂRR¢R3RÇR¯((R
RjÑs"


c
Cs/h}t|iƒ\}|_|djottdƒƒ‚nxç|iD]Ü}t	|ƒ}	t|	ƒ}|djoqKnt
|ƒ}t|ƒ}t|ƒ}t|ƒ}||f|iƒjog|||f<n||jo|||fid|ƒqK|||fid||fƒqKW|S(NisCould not list portsR¾s%ds%d-%d(RfR¿RR;R3RÀR>RRR»R¯RÁRÂRÅR™RÆRÇRÈR¢RÉR¡Rktappend(
RRfR¡R™RÂRR¢R3RÇR¯((R
tget_all_by_typeäs(



%icCs²|o(dtdƒtdƒtdƒfGHn|iƒ}|iƒ}|iƒxZ|D]R}d|}|d||d7}x$||dD]}|d	|7}qW|GHqXWdS(
Ns%-30s %-8s %s
sSELinux Port TypetProtosPort Numbers%-30s %-8s s%siis, %s(
RmRRRËRfRkRltitrecR«(RRmRfR«RkRÍRÎ((R
Rnûs(

(
RRRR¨R\RbReRjRËRn(((R
R•-s		A	)			tnodeRecordscBsJtZdd„Zd„Zd„Zd„Zdd„Zddd	„ZRS(
NRcCsti||ƒdS(N(R9RRR?(RR?((R
R	scCsP|djottdƒƒ‚n|djottdƒƒ‚n|djo
d}n*|djo
d}nttdƒƒ‚tdjo'|djo
d	}qºt|ƒ}n|djottd
ƒƒ‚nt	|i|||ƒ\}}	|djottdƒ|ƒ‚n|djottdƒ|ƒ‚nt|i|	ƒ\}}|ottd
ƒ|ƒ‚nt|iƒ\}}|djottdƒ|ƒ‚nt|i|||ƒ}t|iƒ\}}
|djottdƒ|ƒ‚nt|i|||ƒ}|djottdƒ|ƒ‚nt|i|
dƒ}|djottdƒ|ƒ‚nt|i|
dƒ}|djottdƒ|ƒ‚nt|i|
|ƒ}|djottdƒ|ƒ‚n|djo@t|i|
|ƒ}|djottdƒ|ƒ‚qRnt|i||
ƒ}|djottdƒ|ƒ‚nt|iƒ}|djottdƒƒ‚nt|i|	|ƒ}|djottdƒ|ƒ‚nt|iƒ}|djottdƒƒ‚nt|
ƒt|	ƒt |ƒdS(NRsNode Address is requiredsNode Netmask is requiredtipv4itipv6isUnknown or missing protocolRGsSELinux Type is requiredsCould not create key for %ss%Could not check if addr %s is definedsAddr %s already definedsCould not create addr for %ssCould not create context for %ssCould not set mask for %sR¥s)Could not set user in addr context for %sR¦s)Could not set role in addr context for %ss)Could not set type in addr context for %ss/Could not set mls fields in addr context for %ss!Could not set addr context for %ssCould not start transactionsCould not add addr %ss%Could not commit semanage transaction(!taddrR>RtmaskR™RIRR8RÂtsemanage_node_key_createRR;R3RKtsemanage_node_existsRMtsemanage_node_createtnodetsemanage_node_set_addrR®R¯tsemanage_node_set_maskR°R±R²R³tsemanage_node_set_conRUtsemanage_node_modify_localRWR¶tsemanage_node_key_freetsemanage_node_free(RRÒRÓR™RRÂRMR3R×RKR¯((R
R\sz

























cCs¬|djottdƒƒ‚n|djottdƒƒ‚n|djo
d}n*|djo
d}nttdƒƒ‚|djo#|djottd	ƒƒ‚nt|i	|||ƒ\}}	|djottd
ƒ|ƒ‚nt|i	|	ƒ\}}|djottdƒ|ƒ‚n|pttdƒ|ƒ‚nt|i	|	ƒ\}}|djottd
ƒ|ƒ‚nt|ƒ}
|djot|i	|
t|ƒƒn|djot|i	|
|ƒnt|i	ƒ}|djottdƒƒ‚nt|i	|	|ƒ}|djottdƒ|ƒ‚nt|i	ƒ}|djottdƒƒ‚nt|	ƒt|ƒdS(NRsNode Address is requiredsNode Netmask is requiredRÐiRÑisUnknown or missing protocolsRequires setype or serangesCould not create key for %ss%Could not check if addr %s is definedsAddr %s is not definedsCould not query addr %ssCould not start transactionsCould not modify addr %ss%Could not commit semanage transaction(RÒR>RRÓR™RR¹RÔRR;R3RKRÕRMtsemanage_node_queryR×tsemanage_node_get_conR¯R³R8R²RURÛRWRÜRÝ(RRÒRÓR™RR¹RMR3R×RKR¯((R
Rb_sL














cCs6|djottdƒƒ‚n|djottdƒƒ‚n|djo
d}n*|djo
d}nttdƒƒ‚t|i|||ƒ\}}|djottd	ƒ|ƒ‚nt
|i|ƒ\}}|djottd
ƒ|ƒ‚n|pttdƒ|ƒ‚nt|i|ƒ\}}|djottd
ƒ|ƒ‚n|pttdƒ|ƒ‚nt
|iƒ}|djottd
ƒƒ‚nt|i|ƒ}|djottdƒ|ƒ‚nt|iƒ}|djottdƒƒ‚nt|ƒdS(NRsNode Address is requiredsNode Netmask is requiredRÐiRÑisUnknown or missing protocolsCould not create key for %ss%Could not check if addr %s is definedsAddr %s is not defineds/Addr %s is defined in policy, cannot be deletedsCould not start transactionsCould not delete addr %ss%Could not commit semanage transaction(RÒR>RRÓR™RÔRR;R3RKRÕRMtsemanage_node_exists_localRUtsemanage_node_del_localRWRÜ(RRÒRÓR™RMR3RK((R
Re”s@











ic	Cs%h}|ot|iƒ\}|_nt|iƒ\}|_|djott	dƒƒ‚nxº|iD]¯}t|ƒ}t
|i|ƒ}t|i|ƒ}t|ƒ}|djo
d}n|djo
d}nt|ƒt|ƒt|ƒt|ƒf||d|d|f<qnW|S(NisCould not list addrsRÐiRÑ(Rft	locallisttsemanage_node_list_localRR;R3tilisttsemanage_node_listR>RR×RßR¯tsemanage_node_get_addrRÒtsemanage_node_get_maskRÓtsemanage_node_get_protoR™tsemanage_context_get_usertsemanage_context_get_roleRÁRÃ(	RRâR×RfRÒR™RÓR3R¯((R
Rj¿s$





CicCs'|o
ddGHn|i|ƒ}|iƒ}|iƒto“xà|D]„}d}x"|D]}|dt|ƒ}qZWd|d	|d
|d||d	||d
||dt||dt
ƒfGHqGWnQxM|D]E}d
|d	|d
|d||d	||d
||dfGHqÚWdS(Ns%-18s %-18s %-5s %-5s
s
IP AddresstNetmasktProtocoltContextRs	s%-18s %-18s %-5s %s:%s:%s:%s iiiis%-18s %-18s %-5s %s:%s:%s (s
IP AddressRëRìRí(RmRRjRâRfRkRlRIRKtvaltfieldsRR6tFalse(RRmRâRfRîRïRkRK((R
RnÕs 

[(RRRR\RbReRjRn(((R
RÏs	S	5	+tinterfaceRecordscBsDtZdd„Zd„Zd„Zd„Zd„Zdd„ZRS(	NRcCsti||ƒdS(N(R9RRR?(RR?((R
Rçsc	CsÂtdjo'|djo
d}q4t|ƒ}n|djottdƒƒ‚nt|i|ƒ\}}|djottdƒ|ƒ‚nt|i|ƒ\}}|djottdƒ|ƒ‚n|ottdƒ|ƒ‚nt|iƒ\}}|djottd	ƒ|ƒ‚nt|i||ƒ}t|iƒ\}}|djottd
ƒ|ƒ‚nt|i|dƒ}|djottdƒ|ƒ‚nt|i|d
ƒ}|djottdƒ|ƒ‚nt|i||ƒ}|djottdƒ|ƒ‚n|djo@t|i||ƒ}|djottdƒ|ƒ‚q„nt|i||ƒ}|djottdƒ|ƒ‚nt|i||ƒ}|djottdƒ|ƒ‚nt|iƒ}|djottdƒƒ‚nt|i||ƒ}|djottdƒ|ƒ‚nt|iƒ}|djottdƒ|ƒ‚nt|ƒt|ƒt|ƒdS(NiRRGsSELinux Type is requiredisCould not create key for %ss*Could not check if interface %s is definedsInterface %s already defineds!Could not create interface for %ssCould not create context for %sR¥s.Could not set user in interface context for %sR¦s.Could not set role in interface context for %ss.Could not set type in interface context for %ss4Could not set mls fields in interface context for %ss&Could not set interface context for %ss$Could not set message context for %ss$Could not start semanage transactionsCould not add interface %s(RIRR8RÂR>Rtsemanage_iface_key_createRR;t	interfaceR3RKtsemanage_iface_existsRMtsemanage_iface_createtifacetsemanage_iface_set_nameR®R¯R°R±R²R³tsemanage_iface_set_ifcontsemanage_iface_set_msgconRUtsemanage_iface_modify_localRWR¶tsemanage_iface_key_freetsemanage_iface_free(	RRóRRÂRMRöR3RKR¯((R
R\êsh



















c	Cs$|djo#|djottdƒƒ‚nt|i|ƒ\}}|djottdƒ|ƒ‚nt
|i|ƒ\}}|djottdƒ|ƒ‚n|pttdƒ|ƒ‚nt|i|ƒ\}}|djottdƒ|ƒ‚nt|ƒ}|djot|i|t|ƒƒn|djot|i||ƒnt|iƒ}|djottdƒƒ‚nt|i||ƒ}|djottd	ƒ|ƒ‚nt|iƒ}|djottd	ƒ|ƒ‚nt|ƒt|ƒdS(
NRsRequires setype or serangeisCould not create key for %ss*Could not check if interface %s is definedsInterface %s is not definedsCould not query interface %ss$Could not start semanage transactionsCould not modify interface %s(RR¹R>RRòRR;RóR3RKRôRMtsemanage_iface_queryRötsemanage_iface_get_ifconR¯R³R8R²RURúRWRûRü(	RRóRR¹RMRöR3RKR¯((R
Rb0s:








cCs®t|i|ƒ\}}|djottdƒ|ƒ‚nt|i|ƒ\}}|djottdƒ|ƒ‚n|pttdƒ|ƒ‚nt
|i|ƒ\}}|djottdƒ|ƒ‚n|pttdƒ|ƒ‚nt|iƒ}|djottdƒƒ‚nt|i|ƒ}|djottdƒ|ƒ‚nt
|iƒ}|djottdƒ|ƒ‚nt|ƒdS(NisCould not create key for %ss*Could not check if interface %s is definedsInterface %s is not defineds4Interface %s is defined in policy, cannot be deleteds$Could not start semanage transactionsCould not delete interface %s(RòRR;RóR3RKR>RRôRMtsemanage_iface_exists_localRUtsemanage_iface_del_localRWRû(RRóRMR3RK((R
ReXs.





cCs™h}t|iƒ\}|_|djottdƒƒ‚nxQ|iD]F}t	|ƒ}t|ƒt|ƒt
|ƒt|ƒf|t|ƒ<qKW|S(NisCould not list interfaces(Rftsemanage_iface_listRR;R3RäR>RRóRþR¯RéRêRÁRÃtsemanage_iface_get_name(RRfR3RóR¯((R
Rjws

8ic	Csç|odtdƒtdƒfGHn|iƒ}|iƒ}|iƒtoVx‘|D]G}d|||d||d||dt	||dt
ƒfGHqVWn?x;|D]3}d	|||d||d||dfGHq¬WdS(
Ns	%-30s %s
sSELinux InterfaceRís%-30s %s:%s:%s:%s iiiis%-30s %s:%s:%s (RmRRRjRfRkRlRIRKR6Rð(RRmRfRkRK((R
Rnƒs
I(RRRR\RbReRjRn(((R
Rñæs	F	(		tfcontextRecordscBsbtZdd„Zdd„Zd„Zdddd„Zd„Zd„Zd	„Zd
d„Z	RS(NRcCsti||ƒdS(N(R9RRR?(RR?((R
R‘sR¥cCst|iƒ\}}|djottdƒ|ƒ‚n|djo
d}nt	|i||ƒ}|djottdƒ|ƒ‚nt
|i|dƒ}|djottdƒ|ƒ‚ntdjo@t|i|d	ƒ}|djottd
ƒ|ƒ‚qn|S(NisCould not create context for %sRR¥s)Could not set user in file context for %sR¦s)Could not set role in file context for %siRGs/Could not set mls fields in file context for %s(
R®RR;R3R¯R>RttargettseuserR°R±RIR³(RRRR3R¯((R
t	createcon”s 






cCs=|djp|idƒdjottdƒƒ‚ndS(NRs
isInvalid file specification(RtfindR>R(RR((R
tvalidateªs#cCsB|i|ƒ|djo
d}ntdjo'|djo
d}qXt|ƒ}n|djott	dƒƒ‚nt
|i|t|ƒ\}}	|djott	dƒ|ƒ‚nt|i|	ƒ\}}|djott	dƒ|ƒ‚n|ott	d	ƒ|ƒ‚nt|iƒ\}}|djott	d
ƒ|ƒ‚nt|i||ƒ}|djoÛ|i||ƒ}
t|i|
|ƒ}|djott	dƒ|ƒ‚n|djo@t|i|
|ƒ}|djott	d
ƒ|ƒ‚qnt|i||
ƒ}|djott	dƒ|ƒ‚qZnt|t|ƒt|iƒ}|djott	dƒƒ‚nt|i|	|ƒ}|djott	dƒ|ƒ‚nt|iƒ}|djott	dƒ|ƒ‚n|djot|
ƒnt|	ƒt |ƒdS(NRR¥iRGsSELinux Type is requiredisCould not create key for %ss1Could not check if file context for %s is defineds#File context for %s already defineds$Could not create file context for %ss<<none>>s)Could not set type in file context for %ss/Could not set mls fields in file context for %ss!Could not set file context for %ss$Could not start semanage transactions!Could not add file context for %s(!RRRRRIRR8R§R>Rtsemanage_fcontext_key_createR;t
file_typestftypeR3RKtsemanage_fcontext_existsRMtsemanage_fcontext_createtfcontexttsemanage_fcontext_set_exprRR¯R²R³tsemanage_fcontext_set_contsemanage_fcontext_set_typeRUtsemanage_fcontext_modify_localRWR¶tsemanage_fcontext_key_freetsemanage_fcontext_free(RRR§RRRRMRR3RKR¯((R
R\®s^



















cCs|djo0|djo#|djottdƒƒ‚n|i|ƒt|i	|t
|ƒ\}}	|djottdƒ|ƒ‚nt|i	|	ƒ\}}|djottdƒ|ƒ‚n|pttdƒ|ƒ‚nt|i	|	ƒ\}}|djottdƒ|ƒ‚n|djoÞt|ƒ}
|
djo|i|ƒ}
n|djot|i	|
t|ƒƒn|djot|i	|
|ƒn|djot|i	|
|ƒnt|i	||
ƒ}|djottd	ƒ|ƒ‚qVn=t|i	|dƒ}|djottd	ƒ|ƒ‚nt|i	ƒ}|djottd
ƒƒ‚nt|i	|	|ƒ}|djottdƒ|ƒ‚nt|i	ƒ}|djottdƒ|ƒ‚nt|	ƒt|ƒdS(NRs"Requires setype, serange or seuserisCould not create a key for %ss1Could not check if file context for %s is defineds"File context for %s is not defineds#Could not query file context for %ss<<none>>s!Could not set file context for %ss$Could not start semanage transactions$Could not modify file context for %s( RR¹RR>RRRRR	R;R
RR3RKtsemanage_fcontext_exists_localRMtsemanage_fcontext_query_localRtsemanage_fcontext_get_conR¯R!RR³R8R°R²RRURRWRR(RRR¹RRRRMRR3RKR¯((R
RbísR'














cCsµt|i|t|ƒ\}}|djott	dƒ|ƒ‚nt
|i|ƒ\}}|djott	dƒ|ƒ‚n|pzt|i|ƒ\}}|djott	dƒ|ƒ‚n|ott	dƒ|ƒ‚qtt	dƒ|ƒ‚nt
|iƒ}|djott	dƒƒ‚nt|i|ƒ}|djott	dƒ|ƒ‚nt|iƒ}|djott	dƒ|ƒ‚nt|ƒdS(NisCould not create a key for %ss1Could not check if file context for %s is defineds;File context for %s is defined in policy, cannot be deleteds"File context for %s is not defineds$Could not start semanage transactions$Could not delete file context for %s(R	RR;RR
RR3RKR>RRRMRRUtsemanage_fcontext_del_localRWR(RRRRMRKR3((R
Re&s.





c		Cs(g}t|iƒ\}|_|djottdƒƒ‚nt|iƒ\}}|djottdƒƒ‚n|i|7_x™|iD]Ž}t|ƒ}t
|ƒ}t|ƒ}t|ƒ}|o;|i||t|ƒt|ƒt|ƒt|ƒfƒq’|i|||fƒq’W|S(NisCould not list file contextss"Could not list local file contexts(tltsemanage_fcontext_listRR;R3tflistR>Rtsemanage_fcontext_list_localtfclocalRtsemanage_fcontext_get_exprtexprtsemanage_fcontext_get_typeRtsemanage_fcontext_get_type_strt	ftype_strRR¯RÊRéRêRÁRÃ(	RR"RRRRRR3R¯((R
RjEs$


;ic
Csñ|o(dtdƒtdƒtdƒfGHn|iƒ}x¯|D]§}t|ƒdjowto@d|d|d|d	|d|d
t|dt	ƒfGHqéd|d|d|d	|d|d
fGHqBd
|d|dfGHqBWdS(Ns%-50s %-18s %s
sSELinux fcontextR§Ríis%-50s %-18s %s:%s:%s:%s iiiiis%-50s %-18s %s:%s:%s s%-50s %-18s <<None>>(
RmRRRjt	fcon_listtfconR5RIR6Rð(RRmR#R$((R
Rn]s(@0(
RRRRRR\RbReRjRn(((R
Rs	?	9		tbooleanRecordscBs>tZdd„Zdd„Zd„Zd„Zdd„ZRS(NRcCsti||ƒdS(N(R9RRR?(RR?((R
RkscCsç|djottdƒƒ‚nt|i|ƒ\}}|djottdƒ|ƒ‚nt	|i|ƒ\}}|djottdƒ|ƒ‚n|pttdƒ|ƒ‚nt|i|ƒ\}}|djottdƒ|ƒ‚n|djot
|ƒ}t||ƒnt|iƒ}|djottdƒƒ‚nt|i||ƒ}|djottd	ƒ|ƒ‚nt|iƒ}|djottd	ƒ|ƒ‚nt|ƒt|ƒdS(
NRsRequires valueisCould not create a key for %ss(Could not check if boolean %s is definedsBoolean %s is not definedsCould not query file context %ss$Could not start semanage transactionsCould not modify boolean %s(tvalueR>Rtsemanage_bool_key_createRR;RR3RKtsemanage_bool_existsRMtsemanage_bool_querytbR tnvaluetsemanage_bool_set_valueRUtsemanage_bool_modify_localRWtsemanage_bool_key_freetsemanage_bool_free(RRR&R*RMR+R3RK((R
Rbns6








cCs®t|i|ƒ\}}|djottdƒ|ƒ‚nt|i|ƒ\}}|djottdƒ|ƒ‚n|pttdƒ|ƒ‚nt
|i|ƒ\}}|djottdƒ|ƒ‚n|pttdƒ|ƒ‚nt|iƒ}|djottdƒƒ‚nt|i|ƒ}|djottdƒ|ƒ‚nt
|iƒ}|djottdƒ|ƒ‚nt|ƒdS(NisCould not create a key for %ss(Could not check if boolean %s is definedsBoolean %s is not defineds2Boolean %s is defined in policy, cannot be deleteds$Could not start semanage transactionsCould not delete boolean %s(R'RR;RR3RKR>RR(RMtsemanage_bool_exists_localRURRWR.(RRRMRKR3((R
Re“s.





cCs{h}t|iƒ\}|_|djottdƒƒ‚nx3|iD](}t	|ƒ}t|ƒ}|||<qKW|S(NisCould not list booleans(
Rftsemanage_bool_listRR;R3tblistR>Rtbooleantsemanage_bool_get_nameRtsemanage_bool_get_valueR&(RRfRR&R3R3((R
Rj²s

icCs}|odtdƒtdƒfGHn|iƒ}|iƒ}x8|D]0}||od|d||dfGHqEqEWdS(Ns%-50s %-18s
sSELinux booleanR&s%-50s %-18s i(RmRRRjRfRkRK(RRmRfRkRK((R
Rn¿s(RRRRbReRjRn(((R
R%js
%		
(+RNR†R1ttempfiletosR*RtstattsemanagetPROGNAMEtgettexttbindtextdomaint
textdomaintinstalltIOErrort__builtin__Rt__dict__RIR"R
tSEMANAGE_FCONTEXT_ALLtSEMANAGE_FCONTEXT_REGtSEMANAGE_FCONTEXT_DIRtSEMANAGE_FCONTEXT_CHARtSEMANAGE_FCONTEXT_BLOCKtSEMANAGE_FCONTEXT_SOCKtSEMANAGE_FCONTEXT_LINKtSEMANAGE_FCONTEXT_PIPER	RRYR-R6R8R9RFRoR•RÏRñRR%(RñR9R1R:R@R"RYR6R;R*R
R6R8RIR8R†RoRFRRÏRNR-RR	R%R•RR7((R
t?s\H	
		















			·ÚÛÞªÚ

Anon7 - 2021