+
    4Ssi²  ã                   ó¶   € ^ RI t ^ RIt^ RIt^ RIt^ RIHt ^ RIHt ^ RI	H
t
 ^ RIHt ^ RIHtHtHt ^ RIHt ^ RIHt ^ RIHt ^R	IHt R
 t ! R R]4      tR# )é    N)Úsystem_session)Úsystem_session_unix)Ú
get_string)ÚCommandÚCommandErrorÚOption)ÚSamba3)Úparam)Úupgrade_from_samba3)Úcommon_ntvfs_optionsc                 óV  € \        \        P                  R 4      p\        P                  ! V RRRV,          V.\        P
                  VR7      pVP                  4       w  rVVP                  4        VP                  R4      pV'       d!   \        V^ ,          4      P                  4       # R# )Úwz-sz-lz--parameter-name=%s)ÚstdoutÚstderró   
Ú )ÚopenÚosÚdevnullÚ
subprocessÚPopenÚPIPEÚcommunicateÚcloseÚsplitr   Ústrip)ÚtestparmÚsmbconfÚvarnameÚerrfileÚpÚoutÚerrÚliness   &&&     ÚD/usr/lib/python3/dist-packages/samba/netcmd/domain/classicupgrade.pyÚget_testparm_varr&   *   s†   € Ü”2—:‘:˜sÓ#€GÜ×Ò˜( D¨$Ø/°'Õ9¸7ðDä *§¡¸ô	A€Að —‘“�J€SØ‡M�M„OØ�I‰I�eÓ€EßÜ˜% �(Ó#×)Ñ)Ó+Ð+Ùó    c                   ó�  a € ] tR t^7t o RtRtR]P                  R]P                  /t	]
! RRRRR	7      ]
! R
RRRR	7      ]
! RRRRR	7      ]
! RRRRR7      ]
! RRRRR7      ]
! RRR. R&ORRR7      .t]
! RR. R'ORR RR!7      .t]P                  ! 4       '       d#   ]P                  ]4       ]P                  ]4       R".tR(R$ ltR%tV tR## ))Úcmd_domain_classicupgradezñUpgrade from Samba classic (NT4-like) database to Samba AD DC database.

Specify either a directory with all Samba classic DC databases and state files (with --dbdir) or
the testparm utility from your classic installation (with --testparm).
z"%prog [options] <classic_smb_conf>Ú	sambaoptsÚversionoptsz--dbdirÚstringÚDIRz+Path to samba classic DC database directory)ÚtypeÚmetavarÚhelpz
--testparmÚPATHz”Path to samba classic DC testparm utility from the previous installation.  This allows the default paths of the previous installation to be followedz--targetdirzCPath prefix where the new Samba 4.0 AD domain should be initialisedz-qz--quietzBe quietÚ
store_true)r0   Úactionz-vz	--verbosez
Be verbosez--dns-backendÚchoicezNAMESERVER-BACKENDÚSAMBA_INTERNALa  The DNS server backend. SAMBA_INTERNAL is the builtin name server (default), BIND9_FLATFILE uses bind9 text database to store zone information, BIND9_DLZ uses samba4 AD to store zone information, NONE skips the DNS setup entirely (this DC will not be a DNS server))r.   r/   Úchoicesr0   Údefaultz--use-xattrsÚautoz[yes|no|auto]zÕDefine if we should use the native fs capabilities or a tdb file for storing attributes likes ntacl when --use-ntvfs is set. auto tries to make an intelligent guess based on the user rights and system capabilities)r.   r6   r/   r0   r7   r   Nc           
     ó  € \         P                  P                  V4      '       g   \        R V,          4      hV'       d8   \         P                  P                  V4      '       g   \        RV,          4      hV'       d8   \         P                  P                  V4      '       g   \        RV,          4      hV'       g   V'       g   \        R4      hV P	                  WeR7      pV'       d   V'       d   VP                  R4       RpVP                  4       p\        P                  ! 4       pVP                  '       d   VP                  RVP                  4       Ve<   \         P                  P                  V4      '       g   \         P                  ! V4       RpVR	8X  d   R
pEM+VR8X  d   V'       g   R
pEMV'       g   \        R4      hVR8X  dÿ   VP                  R4      '       gè   V'       d6   \        P                  ! \         P                  P!                  V4      R7      pM`\        P                  ! \         P                  P!                  \         P                  P#                  VP                  R4      4      4      R7      p  \$        P&                  P)                  VVP*                  RR\-        4       R4       R
pVP3                  4        / pV'       d   VVR&   VVR&   VVR&   VR,           VR&   M_\5        WAR4      VR&   \5        WAR4      VR&   \5        WAR4      VR&   \5        WAR4      VR&   \7        VR,          4      ^ 8X  d   VR,          VR&   V F  pVP                  VVV,          4       K  	  VP1                  R4       VP9                  V4       \;        W4      pVP1                  R4       \=        VWÂ\?        4       WúVR7       R#   \.         d    TP1                  R4        EL.i ; i  TP3                  4        i ; i)zFile %s does not existz"Testparm utility %s does not existzDirectory %s does not existz'Please specify either dbdir or testparm)ÚverboseÚquietz2both dbdir and testparm specified, ignoring dbdir.NÚrealmTÚyesFr8   zr--use-xattrs=no requires --use-ntvfs (not supported for production use).  Please re-run with --use-xattrs omitted.z
posix:eadb)Údirzprivate dirzO:S-1-5-32G:S-1-5-32zS-1-5-32ÚnativezÄYou are not root or your system does not support xattr, using tdb backend for attributes. If you intend to use this provision in production, rerun the script as root on a system supporting xattrs.zstate directoryzlock directoryz
/smbpasswdzsmb passwd filezReading smb.confÚProvisioning)Úsession_infoÚuseeadbÚdns_backendÚ	use_ntvfs) r   ÚpathÚexistsr   Ú
get_loggerÚwarningÚget_loadparmÚs3paramÚget_contextr<   ÚsetÚisdirÚmkdirÚgetÚtempfileÚNamedTemporaryFileÚabspathÚdirnameÚsambaÚntaclsÚsetntaclÚnamer   Ú	ExceptionÚinfor   r&   ÚlenÚloadr	   r   r   )Úselfr   Ú	targetdirÚdbdirr   r;   r:   Ú
use_xattrsr*   r+   rC   rD   ÚloggerÚlpÚs3confÚeadbÚtmpfileÚpathsr!   Úsamba3s   &&&&&&&&&&&&        r%   ÚrunÚcmd_domain_classicupgrade.rune   s5  € ô �w‰w�~‰~˜g×&Ò&ÜÐ7¸'ÕAÓBÐBçœBŸG™GŸN™N¨8×4Ò4ÜÐCÀhÕNÓOÐOçœŸ™Ÿ™¨×.Ò.ÜÐ<¸uÕDÓEÐEçŸXÜÐHÓIÐIà—‘¨�Ó>ˆç—XØ�N‰NÐOÔPØˆEà×#Ñ#Ó%ˆä×$Ò$Ó&ˆà�?�?ˆ?Ø�J‰J�w 	§¡Ô0àÒ Ü—7‘7—=‘= ×+Ò+Ü—’˜Ô#àˆØ˜ÔØŠDØ˜6Ô!¯)ØŠDßÜð  Jó Kð Kà˜6Ô!¨&¯*©*°\×*BÒ*BßÜ"×5Ò5¼"¿'¹'¿/¹/È)Ó:TÔU‘ä"×5Ò5¼"¿'¹'¿/¹/Ì"Ï'É'Ï/É/ÐZ\×Z`ÑZ`ÐanÓZoÓJpÓ:qÔr�ð ð
NÜ—L‘L×)Ñ)¨"¨g¯l©lØ*@Ø*4Ü*=Ó*?Ø*2ô	4ð
 !�Dð —‘”ð ˆßØ',ˆEÐ#Ñ$Ø#(ˆE�-Ñ Ø&+ˆEÐ"Ñ#Ø',¨|Õ';ˆEÐ#Ò$ä'7¸ÐK\Ó']ˆEÐ#Ñ$Ü#3°HÀ}Ó#UˆE�-Ñ Ü'7¸ÐK\Ó']ˆEÐ#Ñ$Ü&6°xÐJZÓ&[ˆEÐ"Ñ#ô �5Ð*Õ+Ó,°Ô1Ø+0Ð1AÕ+B�Ð'Ñ(ãˆAØ�J‰J�q˜% �(Ö#ñ ð 	�‰Ð&Ô'Ø�‰�GÔÜ˜Ó(ˆà�‰�NÔ#Ü˜F FÄNÓDTØ$(ÈY÷	XøôC !ô Nà—K‘Kð !M÷ NðNûð
 —‘•ús$   Ê8O ÏO/Ï+O2 Ï.O/Ï/O2 Ï2P© )r5   ÚBIND9_FLATFILEÚ	BIND9_DLZÚNONE)r=   Únor8   )NNNNFFr8   NNNF)Ú__name__Ú
__module__Ú__qualname__Ú__firstlineno__Ú__doc__ÚsynopsisÚoptionsÚSambaOptionsÚVersionOptionsÚtakes_optiongroupsr   Útakes_optionsÚntvfs_optionsrT   Úis_ntvfs_fileserver_builtÚextendr   Ú
takes_argsrg   Ú__static_attributes__Ú__classdictcell__)Ú__classdict__s   @r%   r)   r)   7   s  ø‡ € ñð 4€Hð 	�W×)Ñ)Ø�w×-Ñ-ðÐñ 	ˆy˜x°ØAô	Cáˆ| (°Fð kô	láˆ} 8°UØYô	[áˆt�Y Z¸ÔEÙˆt�[ |¸LÔIÙˆ XÐ7KÚPðVð (ô	)ð€Mñ& 	ˆ~ HÒ6KØ&ðjð ô	ð€Mð ×&Ò&×(Ò(Ø×ÑÐ1Ô2Ø×Ñ˜]Ô+à�€J÷XXò XXr'   r)   )r   rP   r   rT   Úsamba.getoptÚgetoptrt   Ú
samba.authr   Úsamba.auth_utilr   Úsamba.commonr   Úsamba.netcmdr   r   r   Úsamba.samba3r	   r
   rJ   Úsamba.upgrader   Úcommonr   r&   r)   ri   r'   r%   Ú<module>r‰      sF   ðó2 
Û Û ã Ý Ý %Ý /Ý #ß 6Ñ 6Ý Ý )Ý -å (ò
ôFX ö FXr'   