+
    4Ssi                     f    R t R tRR ltRR ltR tRR ltRR ltRR ltRR ltRR	 lt	RR
 lt
R# )z@Network Data Representation (NDR) marshalling and unmarshalling.c                V    \        V RR4      pVf   \        RV ,          4      hV! 4       # )zaPack a NDR object.

:param object: Object to pack
:return: String object with marshalled object.
__ndr_pack__N%r is not a NDR objectgetattr	TypeError)objectndr_packs   & +/usr/lib/python3/dist-packages/samba/ndr.pyr	   r	      s1     v~t4H069:::    c                l    V ! 4       p\        VRR4      pVf   \        RV,          4      hV! WR7       V# )zNDR unpack an object.

:param cls: Class of the object to unpack
:param data: Buffer to unpack
:param allow_remaining: allows remaining data at the end (default=False)
:return: Unpacked object
__ndr_unpack__Nr   allow_remainingr   )clsdatar   r   
ndr_unpacks   &&&  r
   r   r   $   s>     UF!148J069::t5Mr   c                 R    \        V R R4      pVf   \        V  R24      hV! VR7      # )__ndr_print__Nz is not a NDR objectprint_secretsr   )r   r   	ndr_prints   && r
   r   r   4   s4    6I6("6788=11r   c                    \        V RR4      pVf   \        RV ,          4      hV! 4       p\        V 4      pV! 4       p\        VRR4      pVf   \        RV,          4      hV! VRR7       V# )znCreate a deep copy of a NDR object, using pack/unpack

:param object: Object to copy
:return: The object copy
r   Nr   r   Fr   )r   r   type)r   r	   r   r   copyr   s   &     r
   ndr_deepcopyr   ;   su     v~t4H069:::D
v,C5D/6J04788tU+Kr   c                Z    \        V RR4      pVf   \        RV ,          4      hV! WR7      # )zPack the input of an NDR function object.

:param object: Object to pack
:param bigendian: use LIBNDR_FLAG_BIGENDIAN (default=False)
:param ndr64: use LIBNDR_FLAG_NDR64 (default=False)
:return: String object with marshalled object.
__ndr_pack_in__N%r is not a NDR function object	bigendianndr64r   )r   r    r!   ndr_pack_in_fns   &&& r
   ndr_pack_inr#   N   s5     V%6=N9FBCCI;;r   c                b    \        V RR4      pVf   \        RV ,          4      hV! WVVR7       V # )aG  Unpack the input of an NDR function object.

:param cls: Class of the object to unpack
:param data: Buffer to unpack
:param bigendian: use LIBNDR_FLAG_BIGENDIAN (default=False)
:param ndr64: use LIBNDR_FLAG_NDR64 (default=False)
:param allow_remaining: allows remaining data at the end (default=False)
:return: Unpacked object
__ndr_unpack_in__Nr   r    r!   r   r   )r   r   r    r!   r   ndr_unpack_in_fns   &&&&& r
   ndr_unpack_inr(   \   s?     v':DA9FBCCTe%46Mr   c                 Z    \        V R R4      pVf   \        RV ,          4      hV! VR7      # )__ndr_print_in__Nr   r   r   )r   r   ndr_print_in_fns   && r
   ndr_print_inr,   n   s3    f&8$?O9FBCC77r   c                Z    \        V RR4      pVf   \        RV ,          4      hV! WR7      # )zPack the output of an NDR function object.

:param object: Object to pack
:param bigendian: use LIBNDR_FLAG_BIGENDIAN (default=False)
:param ndr64: use LIBNDR_FLAG_NDR64 (default=False)
:return: String object with marshalled object.
__ndr_pack_out__Nr   r   r   )r   r    r!   ndr_pack_out_fns   &&& r
   ndr_pack_outr0   u   s5     f&8$?O9FBCCY<<r   c                b    \        V RR4      pVf   \        RV ,          4      hV! WVVR7       V # )aH  Unpack the output of an NDR function object.

:param cls: Class of the object to unpack
:param data: Buffer to unpack
:param bigendian: use LIBNDR_FLAG_BIGENDIAN (default=False)
:param ndr64: use LIBNDR_FLAG_NDR64 (default=False)
:param allow_remaining: allows remaining data at the end (default=False)
:return: Unpacked object
__ndr_unpack_out__Nr   r&   r   )r   r   r    r!   r   ndr_unpack_out_fns   &&&&& r
   ndr_unpack_outr4      s?      (<dC 9FBCCdu&57Mr   c                 Z    \        V R R4      pVf   \        RV ,          4      hV! VR7      # )__ndr_print_out__Nr   r   r   )r   r   ndr_print_out_fns   && r
   ndr_print_outr8      s4    v':DA9FBCC-88r   N)F)FF)FFF)__doc__r	   r   r   r   r#   r(   r,   r0   r4   r8    r   r
   <module>r;      s=   * G	 2&<$8=$9r   