/var/opt/nydus/ops/mysql/connector/__pycache__
NameSizeModeActions
abstracts.cpython-312.pyc1263050644editdlrm
authentication.cpython-312.pyc148150644editdlrm
charsets.cpython-312.pyc102270644editdlrm
connection.cpython-312.pyc705380644editdlrm
connection_cext.cpython-312.pyc485700644editdlrm
constants.cpython-312.pyc482270644editdlrm
conversion.cpython-312.pyc315540644editdlrm
cursor.cpython-312.pyc587990644editdlrm
cursor_cext.cpython-312.pyc497900644editdlrm
custom_types.cpython-312.pyc13400644editdlrm
dbapi.cpython-312.pyc30230644editdlrm
errorcode.cpython-312.pyc907520644editdlrm
errors.cpython-312.pyc133090644editdlrm
logger.cpython-312.pyc3390644editdlrm
network.cpython-312.pyc319440644editdlrm
optionfiles.cpython-312.pyc145250644editdlrm
pooling.cpython-312.pyc273930644editdlrm
protocol.cpython-312.pyc471850644editdlrm
tls_ciphers.cpython-312.pyc78190644editdlrm
types.cpython-312.pyc25860644editdlrm
utils.cpython-312.pyc281810644editdlrm
version.cpython-312.pyc6900644editdlrm
_decorating.cpython-312.pyc39980644editdlrm
_scripting.cpython-312.pyc157000644editdlrm
__init__.cpython-312.pyc17090644editdlrm
Edit: /var/opt/nydus/ops/mysql/connector/__pycache__/protocol.cpython-312.pyc (47185B)
N j3PdZddlmZddlZddlZddlmZddlmZm Z ddl m Z m Z m Z mZmZmZmZmZmZddlmZdd lmZmZmZmZmZdd lmZdd lmZm Z m!Z!m"Z"dd l#m#Z#dd l$m%Z%m&Z&ddl'm(Z(ddl)m*Z*m+Z+m,Z,m-Z-m.Z.m/Z/m0Z0e rddl1m2Z2dZ3dZ4dZ5dZ6dZ7dZ8dZ9dZ:dZ;dZ<GddZ=y)z,Implements the MySQL Client/Server protocol.) annotationsN)deque)DecimalDecimalException) TYPE_CHECKINGAnyDequeDictListOptionalSequenceTupleUnion)utils)PARAMETER_COUNT_AVAILABLE ClientFlag FieldFlag FieldType ServerCmd)MySQLConverter) DatabaseErrorInterfaceErrorProgrammingError get_exception)logger)MySQLAuthPluginget_auth_plugin)"MySQLCachingSHA2PasswordAuthPlugin)BinaryProtocolTypeDescriptionType EofPacketType HandShakeType OkPacketTypeStatsPacketType StrOrBytes) MySQLSocket -i@c FeZdZdZed#dZed$dZed$dZed%dZed&dZ e d' d(d Z ede d e ddddddf d)d Z ee d e f d*d Zed+d,d Zed-d.dZed/dZed0dZed1dZed2d3dZd4dZed5d6dZ d7 d8dZe d9dZe d:dZe d; ddZ d2 d?dZ d@ dAdZedBdZedCdZ e dDdZ!e dEd Z"edFd!Z# dG dHd"Z$y)I MySQLProtocolzRImplements MySQL client/server protocol Create and parses MySQL packets. c:|dtk(s td|ddS)a Parse a MySQL auth more data packet. Args: pkt: Packet representing an `auth more data` response. Returns: auth_data: Authentication method data (see [1]). Raises: InterfaceError: If packet's status tag doesn't match `protocol.EXCHANGE_FURTHER_STATUS`. References: [1]: https://dev.mysql.com/doc/dev/mysql-server/latest/ page_protocol_connection_phase_packets_protocol_auth_more_data.html z"Failed parsing AuthMoreData packetN)EXCHANGE_FURTHER_STATUSr)pkts I/opt/nydus/tmp/pip-target-a90h98xg/lib/python/mysql/connector/protocol.pyparse_auth_more_dataz"MySQLProtocol.parse_auth_more_data^s($1v00 !EF F12wc|dtk7r tdtj|ddd\}}|r |ddk(r|dd}|j |fS) a|Parse a MySQL auth switch request packet. Args: pkt: Packet representing an `auth switch request` response. Returns: plugin_name: Name of the client authentication plugin to switch to. plugin_provided_data: Plugin provided data (see [1]). Raises: InterfaceError: If packet's status tag doesn't match `protocol.AUTH_SWITCH_STATUS`. References: [1]: https://dev.mysql.com/doc/dev/mysql-server/ latest/page_protocol_connection_phase_packets_protocol_ auth_switch_request.html r1z'Failed parsing AuthSwitchRequest packetr2Nendr)AUTH_SWITCH_STATUSrr read_stringdecode)r4 plugin_names r5parse_auth_switch_requestz'MySQLProtocol.parse_auth_switch_requesttsf( q6' ' !JK K ,,SW'B[ 3r7a<cr(C!!#S((r7ctj|ddd\}}|tk7r tdtj|d\}}|j |fS)aParse a MySQL auth next factor packet. Args: pkt: Packet representing an `auth next factor` response. Returns: plugin_name: Name of the client authentication plugin. plugin_provided_data: Initial authentication data for that client plugin (see [1]). Raises: InterfaceError: If packet's packet type doesn't match `protocol.MFA_STATUS`. References: [1]: https://dev.mysql.com/doc/dev/mysql-server/latest/ page_protocol_connection_phase_packets_protocol_auth_ next_factor_request.html r1Nrz.Failed parsing AuthNextFactor packet (invalid)r9r:)rread_int MFA_STATUSrr>r?)r4statusr@s r5parse_auth_next_factorz$MySQLProtocol.parse_auth_next_factors]*nnSWa0 V Z  !QR R ,,Sg>[!!#S((r7c VD] }| d|<tfdDtjztjz}t j d|g}D]}|j t j dt||j |j|j t j dt||j |jdj|S)azEncode the connection attributes. Args: conn_attrs: Connection attributes. Returns: serialized_conn_attrs: Serialized connection attributes as per [1]. References: [1]: https://dev.mysql.com/doc/dev/mysql-server/latest/ page_protocol_connection_phase_packets_protocol_handshake_response.html c3RK|]}t|t|z ywN)len).0x conn_attrss r5 z0MySQLProtocol.make_conn_attrs..s$@ZAZ]++Zs$'?#I  $ $V[[s9~%F G  $ $Y%5%5%7 8  $ $V[[s:i;P7Q%R S  $ $Z %:%A%A%C D $ xx)**r7cV|tjzr|r|jdzSdS)aPrepare database string for handshake response. Args: client_flags: Integer representing client capabilities flags. database: Initial database name for the connection. Returns: serialized_database: Serialized database name as per [1]. References: [1]: https://dev.mysql.com/doc/dev/mysql-server/latest/ page_protocol_connection_phase_packets_protocol_handshake_response.html r9)rCONNECT_WITH_DBrW) client_flagsdatabases r5connect_with_dbzMySQLProtocol.connect_with_dbs4"j888X OO  '  r7NFcT|s|dk(rdt|||fS|i} t|||||}|j|fi|}|t d|j t jt||z}||fS#ttf$r} t d| | d} ~ wwxYw)aPrepare the first authentication response. Args: auth_data: Authorization data from initial handshake. username: Account's username. password: Account's password. client_flags: Integer representing client capabilities flags. auth_plugin: Authorization plugin name. auth_plugin_class: Authorization plugin class (has higher precedence than the authorization plugin name). ssl_enabled: Whether SSL is enabled or not. plugin_config: Custom configuration to be passed to the auth plugin when invoked. The parameters defined here will override the ones defined in the auth plugin itself. Returns: auth_response: Authorization plugin response. auth_strategy: Authorization plugin instance created based on the provided `auth_plugin` and `auth_plugin_class` parameters. Raises: InterfaceError: If authentication fails or when got a NULL auth response. rHr9) ssl_enabledNzFailed authentication: z8Got NULL auth response while authenticating with plugin ) rr auth_response TypeErrorrnamerlc_intrK) auth_datausernamepassword auth_pluginauth_plugin_classrc plugin_config auth_strategyrderrs r5auth_plugin_first_responsez(MySQLProtocol.auth_plugin_first_responsesDK2->(    M KKOK9JK( M8M77 S]SM   ',,-/   S%78=H m++>* K #:3%!@As J Ks(BB'B""B'rc \|j} g}| rtjdtjd| tdd|j d tdd |xs|d}tjd || rB|jtjd t| d tj| n9d }|jtjd|t| d |||| tj|d||||| | \}}|j||jtj||| r%|jtjd||t j"zr"|j|jdz|t j$zr&| $|jtj'| dj)||fS#t t f$r}td|d dd}~wwxYw)aMake a MySQL Authentication packet. Args: handshake: Initial handshake. username: Account's username. password: Account's password. database: Initial database name for the connection charset: Client charset (see [2]), only the lower 8-bits. client_flags: Integer representing client capabilities flags. max_allowed_packet: Maximum packet size. auth_plugin: Authorization plugin name. auth_plugin_class: Authorization plugin class (has higher precedence than the authorization plugin name). conn_attrs: Connection attributes. is_change_user_request: Whether is a `change user request` operation or not. ssl_enabled: Whether SSL is enabled or not. plugin_config: Custom configuration to be passed to the auth plugin when invoked. The parameters defined here will override the one defined in the auth plugin itself. Returns: handshake_response: Handshake response as per [1]. auth_strategy: Authorization plugin instance created based on the provided `auth_plugin` and `auth_plugin_class`. Raises: ProgrammingError: Handshake misses authentication info. References: [1]: https://dev.mysql.com/doc/dev/mysql-server/latest/ page_protocol_connection_phase_packets_protocol_handshake_response.html [2]: https://dev.mysql.com/doc/dev/mysql-server/latest/ page_protocol_basic_character_set.html#a_protocol_character_set zGot a `change user` requestzStarting authorization phaseNzGot a NULL handshakerhz$Handshake misses authentication inforkz-Handshake misses authentication plugin info ()z#The provided initial strategy is %srPsxxxxxxxxxxxxxxxxxxxxxxxxz ? *00 0  # #K$6$6$87$B C :22 2 8N  # #M$A$A*$M Nxx()=88m8$ "?uAF  s+ HH+H&&H+cdjtj|tj|tj|dgS)aMake a SSL authentication packet (see [1]). Args: charset: Client charset (see [2]), only the lower 8-bits. client_flags: Integer representing client capabilities flags. max_allowed_packet: Maximum packet size. Returns: ssl_request_pkt: SSL connection request packet. References: [1]: https://dev.mysql.com/doc/dev/mysql-server/latest/ page_protocol_connection_phase_packets_protocol_ssl_request.html [2]: https://dev.mysql.com/doc/dev/mysql-server/latest/ page_protocol_basic_character_set.html#a_protocol_character_set r7s)rXr int4store int1store)r}r_r~s r5 make_auth_sslzMySQLProtocol.make_auth_sslsB0xx - 23(    r7c>tj|}||S||zS)z(Make a MySQL packet containing a command)rr)commandargumentdatas r5 make_commandzMySQLProtocol.make_commands&w''tr?intreadrSECURE_CONNECTIONminrz startswith) packetres auth_data1 capabilities1 capabilities2auth_data_lengthr auth_data2sizes r5parse_handshakezMySQLProtocol.parse_handshakes --&1+>qAJ z?. .6s:6GH$$4#57 271B1B 12JG2 .-. MM2F1RL A ! "    N   ),-F)G)N)N)P %&}}]]%BC  *66 64D3r+a/0"D$JDE]F"~"'_ *00 0f$-F)G)R)R*14V,]+/4/@/@W/U,]+!$]!3!:!:7!CC !8C % 2K*N r7c|ddk(s tdi} tjd|ddd|d<tj|dd\}|d<tj|\}|d <tjd |dd\|d <|d <|dd}|r2tj |\}|d <|d j d|d <|S#t$r}td|d}~wwxYw)zParse a MySQL OK-packetr1rz#Failed parsing OK packet (invalid).rr2 field_countN affected_rows insert_idz->v-F *FIk* eVAa[1 -(/*ABZF050D0DV0L- *-(1*(=(D(DW(M *% G !<=3 F GsB3C C& C!!C&c tj|ddd}|S#tjtf$r}t d|d}~wwxYw)z=Parse a MySQL packet with the number of columns in result setr1NrzFailed parsing column count)rrrTerrorrr)rcountros r5parse_column_countz MySQLProtocol.parse_column_count sQ I%%fQRj1!4EL j) I !>?S H IsA  AA c tj|dd\}}tj|\}}tj|\}}tj|\}}tj|\}}tj|\}} tjd|\}}}}}|j ||dddd|tjz||f S#tj$r t ddwxYw)zParse a MySQL column-packet.r1Nz ==( (. 3}}Z8H s"s6{a'7 ) )'{O%a[M || 3 )s 2 3sA((B ; BB c $d}i}dg}d}|r|ddjd}n|jd}|D]T} |jddDcgc]}|jc}\}}|j d} t |||<V|Scc}w#t$r} t|| d} ~ wwxYw#t tf$rQ t|j d||<n/#t$r#} t|d |d t|d | d} ~ wwxYwYwxYw) zParse the statistics packetz)Failed getting COM_STATISTICS informationr7r1Ns :r*rz (:rr) splitstriprrr?intrxrrrepr) r with_headererrmsgrpairslblpairvvalros r5parse_statisticszMySQLProtocol.parse_statisticsJs7=.0 12J$$[1ELL-ED 6/3zz$/BC/B!AGGI/BCS **W%C Ss8C D 6$V,#5 6j) SS&szz'':;CH'S(F82cU!DI;a)HIsRS Ss_B B #B;B/ B B, B''B,/D?CD D &DD  DDc|}g}d}d}d} |s| |k(r ||fS|j|} | jdr| ddg} |j|} | jdr7| j| dd|j|} | jdr7| j| ddtjdj | }nG| ddk(r| ddkr|j | }d}n#d}tjt| dd}|||j|n| | t| | dz } 9) zRead MySQL text result Reads all or given number of rows from the socket. Returns a tuple with 2 elements: a list with all rows and the EOF packet. Nrsr1r7r)r) recvrrVrread_lc_string_listrXrbytesr) rsockversionr read_timeoutrreofrowdatairdatass r5read_text_resultzMySQLProtocol.read_text_resultgs\$  a5j*Sy)YY|,F  1 <0''8LL,!YY|4F''8 VABZ(33CHHUODc!fQi!mnnV,33E&*4EF{w2 G$#F++ FA-r7c|dtjk(rd}d}nk|dtjk(rd}d}nP|dtjtjfvrd}d}n&|dtj k(rd}d}n t d |d tjzr|j}||d tj||d |d fS) z%Parse an integer from a binary packetr>: :GF 1X++ +GF34 4 8i(( (mmoGvwwq8H!I!!LMMr7c|dtjk(rd}d}nd}d}||dtj||d|dfS)z)Parse a float/double from a binary packetrrt1j2|\}}|jt5j6|;| dt8j:k(s| ddk(r+t1j2|\}}|j|t1j2|\}} |j|j=|tA|Scc}w#t>$r|j|YwxYw)z(Parse values from a binary result packetrr*rrNr?)!rKr enumeraterVrrrrrrrrFLOATrDECIMAL NEWDECIMALrrDATEr rTIMErVECTORrrr_vector_to_pythonrBINARYr?UnicodeDecodeErrortuple) rfieldsrr}null_bitmap_lengthr null_bitmaprSrposrs r5_parse_binary_valuesz"MySQLProtocol._parse_binary_valuess"&kAo1a7'-a0B'CD'C!s1v'C D*+,$(#F+JC3a1}-.!a1}2DE d#Qx"" !% : :65 I  e$qi.. @@ $ 8 8 G  e$qi//1E1EFF $ > >vw O  e$q""## #'">">vuQx"P e$qY^^+"&"9"9&"A e$qY---"'"6"6v"> n>>uEFqY---qR"'"6"6v"> e$"'"6"6v">)MM%,,w"78O,VV}aEZ*)MM%()sL! LL21L2c8g}d}d}d} | ||fS| |k(r ||fSt|j|} | ddk(r|j| }d}n | ddk(rd}|j|| dd|}|||j |n| | t | | dz } )zwRead MySQL binary protocol result Reads all or given number of binary resultset rows from the socket. Nrr1r)r2r)rrrr)rVr) rrcolumnsrr}rrrrSrrs r5read_binary_resultz MySQLProtocol.read_binary_result8s c{Ezc{499\23FayCnnV,a227F12JP{v1 F##F++ FA!r7c\|ddk(s tdi} tj|ddd\}|d<tj|d\}|d<tj|d\}|d <|d d}tj|d\}|d <|S#t$r}td|d}~wwxYw) z(Parse a MySQL Binary Protocol OK packet.r1rzFailed parsing Binary OK packetr2Nrr* num_columns num_paramsrr)rrrCr)rok_pktros r5parse_binary_prepare_okz%MySQLProtocol.parse_binary_prepare_ok^sayA~ !BC C M-2^^F12J-J *FF>*,1NN61,E )FF=)+0>>&!+D (FF<(ABZF.3nnVQ.G +FF?+  M !BC L MsA8B B+ B&&B+cd}d}|dkr[|dk\rd}tj}n|dk\rd}tj}n|dk\rd}tj}nod }tj}n\d }|d krd }tj}nB|d krd}tj}n*|dkrd}tj}ntj}d}t j ||||fS)z0Prepare an integer for the MySQL binary protocolNriririrrr+rPirulrzrFr __class____name__rr8rX)rrr parametersrlong_data_usedr} query_attrsconverter_str_fallbackiteration_countr'rStypesr:data_lenquery_attr_namesrattr_valr(r_flagsr rfrparameter_countbitra_typea_values r5make_stmt_executezMySQLProtocol.make_stmt_executescc$i!m12  t9(*(e6O.O i G  !N :D* 8 H% +##d)a-A!56K 3z?*$2(o U=+qS1W~=+LL 7%//&:QQ.(%c*1-%.^^ &/%5%5 s+ 33E: "MM&)s+!LL1EMM%,,s5z":U"BC!*!1!1Ju-MM%,,s5z":U"BC!*!1!1Jw/MM SU):):7)C%DEe*++G45"+!2!2Ju-MM&++dE":;!*!1!1J(9(98=='IJ+/+H+H+O(VZMM&)(:(:HMM'JK+/+C+CE+J(VZMM&)+J--g6EMM%,,s5z":U"BC!*!1!1J*!OO445Y@ U__Z85??6;RRS37X#5&sX~6q9@@ID$++ELLT,Cd,JKq.t OOL ) OOE " OOO ,   "&[)99O&O & ell?;< MMKHKS6;;sC0KH I MM%//!, -E f% *qy8+ &6ux7G&HI g.  " g&"xx)Is6W9)r4rreturnr)r4rrfzTuple[str, bytes])rNzDict[str, str]rfr)r_rr` Optional[str]rfr)NFN)rhrrirSrjrSrkrSrlrgrcboolrmOptional[Dict[str, Any]]rfTuple[bytes, MySQLAuthPlugin])r|r#rirSrjrSr`rgr}rr_rr~rrkrgrlrgrNzOptional[Dict[str, str]]rrhrcrhrmrirfrj)r}rr_rr~rrfrrJ)rrrzOptional[bytes]rfr)r)rrrrrfr)rrrfr#)rrrfr$)rrrf Optional[int])r)rrrrSrfr!)rrrfr")T)rrrrhrfr%)rN) rr'rzTuple[int, ...]rrrrkrfzATuple[List[Tuple[Optional[bytes], ...]], Optional[EofPacketType]])rrrr!rfTuple[bytes, int])rrrr!rfzTuple[bytes, float])rM)rrr}rSrfzTuple[bytes, Decimal])rrr rrfz?Tuple[bytes, Optional[Union[datetime.date, datetime.datetime]]])rrrfz Tuple[bytes, datetime.timedelta])r%List[DescriptionType]rrr}rSrfzTuple[BinaryProtocolType, ...])rrN) rr'r+rmrrr}rSrrkrfzDTuple[List[Tuple[BinaryProtocolType, ...]], Optional[EofPacketType]])rrrfzDict[str, int])rrrfzTuple[bytes, int, int])rz'Union[datetime.date, datetime.datetime]rfrl)rz(Union[datetime.timedelta, datetime.time]rfrl)rHrrIrrrrfr)rnrNrMNF)rrrzSequence[BinaryProtocolType]rWr rrrXz Optional[Dict[int, Tuple[bool]]]r}rSrYz.Optional[List[Tuple[str, BinaryProtocolType]]]rZrhrfr)%rV __module__ __qualname____doc__ staticmethodr6rArFr\rarpDEFAULT_CHARSET_IDDEFAULT_MAX_ALLOWED_PACKETrrrrrrrrrrrrrrrrr)r,r1r4r;rFrJrernr7r5r/r/Xs *))4))4++<  ( ,0!26:,:,:,:, :, ) :,  :,0:, ':,:,x #')"<%)+//3',!26w9 w9w9w9 w9  w9  w9 w9#w9)w9-w9!%w9w90w9 'w9w9r)"<         @== EE11f,II  @(@&* ..!. . $ .   .`NN-N NN2 N N- N  N N&,88 #8 88--- I-->++4 8%88 8 ( 8|&* $$'$ $  $ $ $ $L"@@B(A6(A (A(AT5A75A 5A5AnTT.0!;?FJ',E E +E  E  E 9 E E DE !%E  E r7r/)>rq __future__rr rT collectionsrdecimalrrtypingrrr r r r r rrrHr constantsrrrrr conversionrerrorsrrrrrpluginsrrplugins.caching_sha2_passwordrr\r r!r"r#r$r%r&networkr'rr=r3 OK_STATUS EOF_STATUSrD ERR_STATUSLOCAL_INFILE_STATUSrsrtr/rnr7r5rs:3" -   'RR5M$     'j j r7