U v`p*@srdZddlmZddlmZddlZddlmZddlmZdZdZ d Z d Z d Z d Z d ZdZdZdZdZdZdZdZdZdZdZdZdZdZdZdZdZdZdZ d Z!d!Z"d"Z#d#Z$d$Z%d%Z&dZ'd&Z(d'Z)d(Z*d)Z+d*Z,d+Z-dZ.d,Z/d-Z0d.Z1d/Z2d0Z3d1Z4d2Z5d3Z6d4Z7dZ8dZ9d5Z:d6Z;d7Zd:Z?d;Z@dZEd?ZFGd@dAdAejGZHdBZIdCdDZJdEdFZKdGdHZLdIdJZMdS)KzITU-T H.225.0 Call Signaling.)print_function)absolute_importN)dpkt)tpkt &."%-! EMZFN`y{n}u'(),4@BCDGJlmpqtx|~c@s>eZdZdZdZddZddZddZGd d d ej Z d S) H225zITU-T H.225.0 Call Signaling. TODO: Longer class information.... Attributes: __hdr__: Header fields of H225. TODO. ))protoBr&)ref_lenrArcCst||_|jjdkr"td|jjdkr8td|jj|jj}|t|jjkrbtd|jj}tj ||||jd}|d|j |_ ||j d}t d|ddd|_|dd}g}|r||}|||t|d}q||_dS)Nr invalid TPKT versionrinvalid TPKT reserved valueinvalid TPKT lengthrAr)rZTPKTvr UnpackErrorrsvdlen __hdr_len__dataPacketunpackrBref_valstructtypeIEappend)selfbufnZl_ierWa/private/var/folders/0j/yyfkg7712236ncpm167bvylc27vst9/T/pip-unpacked-wheel-y9gppv54/dpkt/h225.pyrMqs*         z H225.unpackcCs|jj|jttt|jS)N)rrJsummaprIrKrSrWrWrX__len__sz H225.__len__cCs8|j||jtd|jdtt|j S)NrA) rZpack_hdrrNrOpackrPjoinrZbytesrKr[rWrWrX __bytes__s  zH225.__bytes__c@s(eZdZdZddZddZddZdS) zH225.IE))rPrArcCstj||||jd}|jd@r4d|_d|_nh|jtkrftd|ddd|_|dd}n&td|ddd|_|dd}|d|j|_dS)Nrrr]>HrrAr) rrLrMrJrPrIrK USER_TO_USERrO)rSrTrWrWrXrMs   zH225.IE.unpackcCs4|jd@rd}n|jtkr d}nd}|j|j|S)Nrrrr)rPrcrJrI)rSrUrWrWrXr\s   zH225.IE.__len__cCsP|jd@rd}n(|jtkr*td|j}ntd|j}td|j||jS)Nrr]rbrA)rPrcrOr^rIrK)rSZ length_strrWrWrXras   zH225.IE.__bytes__N)__name__ __module__ __qualname____hdr__rMr\rarWrWrWrXrQs rQN) rdrerf__doc__rgrMr\rarrLrQrWrWrWrXr?bs  r?sT+(Jon Oberheide~ J@ Jon Oberheide" =ekiga2.0.2 (OPAL v2.2.2)@tcp$h323.voxgratia.orgB#,j mj zu0^ mj+0@L =Speex bs4 Wide6&A&A&d  =Speex bs4 Wide6 &A*@L = iLBC-13k3&A&A e  = iLBC-13k3 &A @N &A&Af  &AK@LSL*@@1@YA@&A&AAg SL*@@1@YA@ &A2@L =Speex bs4 Narrow3&A&A(h  =Speex bs4 Narrow3 &A@L`&A&Ai ` &A@L &A&Aj  &Apu   =Speex bs4 Wide6 = iLBC-13k3$ SL*@@1@YA@ =Speex bs4 Narrow3  @QQ P  @  2LcCs,tt}tt|kstt|dks(tdS)Ni)r?__sr`AssertionErrorrI)hrWrWrX test_packsrlcCstt}|jjdkst|jjdks(t|jjdks8t|jdksFt|jt ksTtt|j dksft|j d}|jt ks~t|jdkst|j d}|jt kst|jdkst|j d}|jt kst|jdkstdS) Nr rir&rri)r?rirrFrjrHrIr@rPSETUPrKBEARER_CAPABILITYDISPLAYrc)rkrVrWrWrX test_unpacks    rqc Csddl}ddlm}|d}|jtjddt|W5QRX|d}|jtjddt|W5QRX|d}|jtjd dt|W5QRXdS) Nr) unhexlify00000000rC)matchZ03ff0000rDZ0300ffffrE)pytestbinasciirrZraisesrrGr?)rurrZbuf_tpkt_version0Z buf_tpkt_rsvdZ buf_tpkt_lenrWrWrXtest_tpkt_unpack_errorss" rwcCsJtd}|jdkst|jdks&tt|dks6tt|dksFtdS)Nrr]r)r?rQrIrjrKr`)rVrWrWrXtest_unpack_ie$s  ry)Nrh __future__rrrOrrZALERTINGZCALL_PROCEEDINGCONNECTZCONNECT_ACKNOWLEDGEZPROGRESSrnZSETUP_ACKNOWLEDGERESUMEZRESUME_ACKNOWLEDGEZ RESUME_REJECTZSUSPENDZSUSPEND_ACKNOWLEDGEZSUSPEND_REJECTZUSER_INFORMATIONZ DISCONNECTZRELEASEZRELEASE_COMPLETEZRESTARTZRESTART_ACKNOWLEDGEZSEGMENTZCONGESTION_CONTROLZ INFORMATIONZNOTIFYZSTATUSZSTATUS_ENQUIRYZRESERVEDZSHIFTZCONGESTION_LEVELZREPEAT_INDICATORZ MORE_DATAZSENDING_COMPLETEZSEGMENTED_MESSAGEroZCAUSEZ CALL_IDENTITYZ CALL_STATEZCHANNEL_IDENTIFICATIONZPROGRESS_INDICATORZNETWORK_SPECIFIC_FACILITIESZNOTIFICATION_INDICATORrpZ DATE_TIMEZKEYPAD_FACILITYZSIGNALZINFORMATION_RATEZEND_TO_END_TRANSIT_DELAYZ&TRANSIT_DELAY_SELECTION_AND_INDICATIONZPACKET_LAYER_BINARY_PARAMETERSZPACKET_LAYER_WINDOW_SIZEZ PACKET_SIZEZCLOSED_USER_GROUPZREVERSE_CHARGE_INDICATIONZCALLING_PARTY_NUMBERZCALLING_PARTY_SUBADDRESSZCALLED_PARTY_NUMBERZCALLED_PARTY_SUBADDRESSZREDIRECTING_NUMBERZTRANSIT_NETWORK_SELECTIONZRESTART_INDICATORZLOW_LAYER_COMPATIBILITYZHIGH_LAYER_COMPATIBILITYrcZESCAPE_FOR_EXTENSIONrLr?rirlrqrwryrWrWrWrXs    a(