+
    4Ssi/                     x    ^ RI t ^ RIHt ^ RIHt ^ RIHtHt ^ RI	H
t
HtHt ^ RIHt ^ RIHt  ! R R]
4      tR# )	    N)system_session)check_and_update_flDS_DOMAIN_FUNCTION_2000)CommandCommandErrorOption)SamDB)functional_levelc            
          a  ] tR t^#t o RtRtR]P                  R]P                  R]P                  /t
]! RRR]R	R
R7      ]! RRRRR7      ]! RR. RORR7      ]! RR. RORR7      .tR.tRR ltRtV tR# )cmd_domain_levelz(Raise domain and forest function levels.z&%prog (show|raise <options>) [options]	sambaoptscredoptsversionoptsz-Hz--URLz%LDB URL for database or target serverURLH)helptypemetavardestz-qz--quietzBe quiet
store_true)r   actionz--forest-levelchoicezIThe forest function level (2003 | 2008 | 2008_R2 | 2012 | 2012_R2 | 2016))r   choicesr   z--domain-levelzIThe domain function level (2003 | 2008 | 2008_R2 | 2012 | 2012_R2 | 2016)
subcommandNc	           
     6  a aaaaaaaaa VR9  d   \        RV,          4      hVP                  4       p	VP                  V	RR7      p
\        V\	        4       WR7      oSP                  4       oRpVR8X  d;   Ve   VP                  R4      '       g    SP                  4        Rp \        SV	4        SP                  R	SP                  4       ,          \        P                  R
.R7      p\        V4      ^8w  d   \        R4      hSP                  S\        P                  R
R.R7      p\        V4      ^8w  d   \        R4      hSP                  R	SP                  4       ,          \        P                   RS,          R
.R7      o\        S4      ^8w  d   \        R4      hSP                  RSP                  4       ,          \        P                   RR
.R7      p\        V4      ^ 8X  d   \        R4      h\"        o\"        oR
V^ ,          9   d!   \%        V^ ,          R
,          ^ ,          4      oR
V^ ,          9   d!   \%        V^ ,          R
,          ^ ,          4      o\%        V^ ,          R,          ^ ,          4      oRoV FO  pR
V9   d@   Se   \%        VR
,          ^ ,          4      S8  d   \%        VR
,          ^ ,          4      oKG  KI  \"        o M	  S\"        8  g   S\"        8  d   \        R4      hS\"        8  d   \        R4      hSS8  d   \        R4      hSS8  d   \        R4      h TTTTTT 3R lpTTTTTTTTTT 3
R lpTR 8X  d   T'       d   Q hT! 4        R# TR8X  d#    T! 4        T'       d   SP'                  4        R# \)        RT,          4      h  \         d   pSP                  4        ThRp?ii ; i  \         d    pT'       d   SP                  4        ThRp?ii ; i  \         d    pT'       d   SP                  4        ThRp?ii ; i)showraisez4invalid argument: '%s' (choose from 'show', 'raise')T)fallback_machine)urlsession_infocredentialslpFNldapCN=Partitions,%smsDS-Behavior-Version)scopeattrszForest not foundnTMixedDomainzdomain not foundz$(&(objectClass=crossRef)(nCName=%s)))r&   
expressionr'   zno crossRef objects foundzCN=Sites,%sz(objectClass=nTDSDSA)zno nTDSDSA objects foundzSDomain and/or forest function level(s) is/are invalid. Correct them or reprovision!zFLowest function level of a DC is invalid. Correct this or reprovision!zVForest function level is higher than the domain level(s). Correct this or reprovision!zdDomain function level is higher than the lowest function level of a DC. Correct this or reprovision!c                  l  < SP                  R S,          4       S\        8X  d   S^ 8w  d   SP                  R4       S\        8X  d   S^ 8w  d   SP                  R4       S\        8X  d   S^ 8w  d   SP                  R4       SP                  R4       \        P                  ! S4      p SP                  RV ,           4       S\        8X  d   S'       d   Rp M\        P                  ! S4      p SP                  RV ,           4       \        P                  ! S4      p SP                  RV ,           4       R	# )
z0Domain and forest function level for domain '%s'z|
ATTENTION: You run SAMBA 4 on a forest function level lower than Windows 2000 (Native). This isn't supported! Please raise!z|
ATTENTION: You run SAMBA 4 on a domain function level lower than Windows 2000 (Native). This isn't supported! Please raise!z
ATTENTION: You run SAMBA 4 on a lowest function level of a DC lower than Windows 2003. This isn't supported! Please step-up or upgrade the concerning DC(s)! z!Forest function level: (Windows) z2000 mixed (NT4 DC support)z!Domain function level: (Windows) z)Lowest function level of a DC: (Windows) N)messager   r
   level_to_string)outstr	domain_dnlevel_domainlevel_domain_mixedlevel_forestmin_level_dcselfs    ;/usr/lib/python3/dist-packages/samba/netcmd/domain/level.pydo_show%cmd_domain_level.run.<locals>.do_show   s   LLKiWX66;MQR;R  ]  ^66;MQR;R  ]  ^66;MQR;R  ~  LL%55lCFLL<vEF66;M6)99,GLL<vEF%55lCFLLDvMN    c                    <
 . p SpS
Ee    \         P                  ! S
4      pTS8:  d   S^ 8X  d   \        R4      hTS8  d   \        R4      hS^ 8w  d   \        P
                  ! 4       p\        P                  ! SS	4      Tn        \        P                  ! R\        P                  R4      TR&   SP                  T4       \        P
                  ! 4       pS^ ,          P                  Tn        \        P                  ! R\        P                  R4      TR&    SP                  T4       \        P
                  ! 4       p\        P                  ! SS	4      Tn        \        P                  ! \        T4      \        P                  R4      TR&   SP                  T4       \        P
                  ! 4       pS^ ,          P                  Tn        \        P                  ! \        T4      \        P                  R4      TR&    SP                  T4       TpT P                  R4       Se   \         P                  ! S4      pVS8:  d   \        R	4      hW8  d   \        R
4      h\        P
                  ! 4       p\        P                  ! SRSP!                  4       ,          4      Vn        \        P                  ! \        V4      \        P                  R4      VR&   SP                  V4       V P                  R4       V P                  R4       SP#                  RP%                  V 4      4       R #   \         d    \        RS
 R24      hi ; i  \        P                   d0   pTP                  w  rVT\        P                  8w  d   h  R p?EL_R p?ii ; i  \        P                   d0   pTP                  w  rVT\        P                  8w  d   h  R p?ELR p?ii ; i)NzNew functional level 'z1' is not known to Samba as an AD functional levelzGDomain function level can't be smaller than or equal to the actual one!zMDomain function level can't be higher than the lowest function level of a DC!0r(   r%   zDomain function level changed!zGForest function level can't be smaller than or equal to the actual one!zdForest function level can't be higher than the domain function level(s). Please raise it/them first!r$   zForest function level changed!z!All changes applied successfully!
)r
   string_to_levelKeyErrorr   ldbMessageDndnMessageElementFLAG_MOD_REPLACEmodifyLdbErrorargsERR_UNWILLING_TO_PERFORMstrappendget_config_basednr,   join)msgscurrent_level_domainnew_level_domainmeenumemsge2new_level_forestr/   domain_levelforest_levelr0   r1   r2   r3   res_domain_crosssamdbr4   s            r5   do_raise&cmd_domain_level.run.<locals>.do_raise   s=   D#/ 'A'7'G'G'U$ $|38Ja8O&'pqq#l2&'vww &*A66%3AD),););C<?<P<PRa*cAo&LLOA+A.11AD),););C<?<P<PRa*cAo&"Q KKMvveY/-0-?-?()3+?+?+.-)* QKKM'*---0-?-?()3+?+?+.-)*LLO (8$<='#3#C#CL#Q #|3&'pqq#:&  (N  O  OKKMvve%7%:Q:Q:S%ST-0-?-?()3+?+?+.-)* Q<=KK;<LL4)I   A&)?~M~'  A  AA. << "'(vv3#?#??! @"( || #%77LTs;;; <s;   L) M ;N )MN$NNO#$OOz)Internal Error subcommand[%s] not handled)r   r   )r   get_loadparmget_credentialsr	   r   r/   
startswithtransaction_startr   	Exceptiontransaction_cancelsearchrJ   r>   
SCOPE_BASElenSCOPE_SUBTREEr   inttransaction_commitAssertionError)r4   r   r   rV   rU   quietr   r   r   r"   credsin_transactionrP   
res_forest
res_domainres_dc_smsgr6   rY   r/   r0   r1   r2   r3   rW   rX   s   f&&ff&&&&          @@@@@@@r5   runcmd_domain_level.run:   s   ..UXbbcc##%((d(C!.*:"'0 OO%	 aiq||F7K7K##%!N#E2.
7	&85;R;R;T&T,/NNCZB[ & ]J:!#"#566is~~-Do,V & XJ:!#"#566$||,>AXAXAZ,Z252C2C7]`i7i3J2K  ,  M #$)"#>??||ME4K4K4M$M*-*;*;H_+B*C $ EH 8}!"#=>> 3L2L&*Q-7":a=1H#I!#LM&*Q-7":a=1H#I!#LM!$Z]?%CA%F!GL*c1#+s37N3OPQ3R/SVb/b'*3/F+G+J'K 0c $;L   55H_9_"#xyy55"#klll*"#{||l*"  $J  K  K +	O 	O.L	 L	\ %%%I7"

 ((*H:UVVc  ((*p  	((*G	b  !,,.sI   $N 1I;O )O. N>'N99N>O+O&&O+.P9PP )200320082008_R220122012_R22016)NNNFNNN)__name__
__module____qualname____firstlineno____doc__synopsisoptionsSambaOptionsCredentialsOptionsVersionOptionstakes_optiongroupsr   rH   takes_options
takes_argsro   __static_attributes____classdictcell__)__classdict__s   @r5   r   r   #   s     27H 	W))G..w-- 	tW#JQT3	(tYZEh8n_	ah8n_	aM JDW DWr8   r   )r>   samba.getoptgetoptr~   
samba.authr   
samba.dsdbr   r   samba.netcmdr   r   r   samba.samdbr	   sambar
   r   rq   r8   r5   <module>r      s/   2   % C 6 6  "[Ww [Wr8   