plugin-data-source-mssql 2.0.3 → 2.0.5
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/client/index.js +1 -1
- package/dist/externalVersion.js +6 -6
- package/dist/server/data-source/MssqlExternalDataSource.js +114 -30
- package/dist/server/data-source/MssqlIntrospector.js +109 -24
- package/package.json +1 -1
- package/dist/node_modules/tedious/245.index.js +0 -741
- package/dist/node_modules/tedious/LICENSE +0 -21
- package/dist/node_modules/tedious/appveyor.yml +0 -67
- package/dist/node_modules/tedious/benchmarks/bulk-load/iterable.js +0 -61
- package/dist/node_modules/tedious/benchmarks/common.js +0 -287
- package/dist/node_modules/tedious/benchmarks/connection/open.js +0 -26
- package/dist/node_modules/tedious/benchmarks/package-lock.json +0 -21173
- package/dist/node_modules/tedious/benchmarks/package.json +0 -11
- package/dist/node_modules/tedious/benchmarks/query/call-tvp.js +0 -105
- package/dist/node_modules/tedious/benchmarks/query/insert-varbinary.js +0 -46
- package/dist/node_modules/tedious/benchmarks/query/select-many-rows.js +0 -63
- package/dist/node_modules/tedious/benchmarks/query/select-nvarchar.js +0 -50
- package/dist/node_modules/tedious/benchmarks/query/select-varbinary.js +0 -50
- package/dist/node_modules/tedious/benchmarks/request/rpcrequest-payload-tvp.js +0 -45
- package/dist/node_modules/tedious/benchmarks/request/rpcrequest-payload-varbinary.js +0 -37
- package/dist/node_modules/tedious/benchmarks/token-parser/colmetadata-token.js +0 -27
- package/dist/node_modules/tedious/benchmarks/token-parser/done-token.js +0 -28
- package/dist/node_modules/tedious/benchmarks/token-parser/simple-tokens.js +0 -363
- package/dist/node_modules/tedious/lib/all-headers.d.ts +0 -2
- package/dist/node_modules/tedious/lib/all-headers.js +0 -24
- package/dist/node_modules/tedious/lib/always-encrypted/aead-aes-256-cbc-hmac-algorithm.js +0 -82
- package/dist/node_modules/tedious/lib/always-encrypted/aead-aes-256-cbc-hmac-encryption-key.js +0 -55
- package/dist/node_modules/tedious/lib/always-encrypted/cek-entry.d.ts +0 -11
- package/dist/node_modules/tedious/lib/always-encrypted/cek-entry.js +0 -42
- package/dist/node_modules/tedious/lib/always-encrypted/get-parameter-encryption-metadata.js +0 -90
- package/dist/node_modules/tedious/lib/always-encrypted/key-crypto.js +0 -94
- package/dist/node_modules/tedious/lib/always-encrypted/keystore-provider-azure-key-vault.d.ts +0 -21
- package/dist/node_modules/tedious/lib/always-encrypted/keystore-provider-azure-key-vault.js +0 -247
- package/dist/node_modules/tedious/lib/always-encrypted/symmetric-key-cache.js +0 -36
- package/dist/node_modules/tedious/lib/always-encrypted/symmetric-key.js +0 -25
- package/dist/node_modules/tedious/lib/always-encrypted/types.d.ts +0 -73
- package/dist/node_modules/tedious/lib/always-encrypted/types.js +0 -48
- package/dist/node_modules/tedious/lib/always-encrypted/utils.js +0 -23
- package/dist/node_modules/tedious/lib/bulk-load-payload.d.ts +0 -8
- package/dist/node_modules/tedious/lib/bulk-load-payload.js +0 -23
- package/dist/node_modules/tedious/lib/bulk-load.d.ts +0 -275
- package/dist/node_modules/tedious/lib/bulk-load.js +0 -516
- package/dist/node_modules/tedious/lib/collation.d.ts +0 -28
- package/dist/node_modules/tedious/lib/collation.js +0 -348
- package/dist/node_modules/tedious/lib/connection.d.ts +0 -1310
- package/dist/node_modules/tedious/lib/connection.js +0 -2730
- package/dist/node_modules/tedious/lib/connector.d.ts +0 -18
- package/dist/node_modules/tedious/lib/connector.js +0 -150
- package/dist/node_modules/tedious/lib/data-type.d.ts +0 -455
- package/dist/node_modules/tedious/lib/data-type.js +0 -428
- package/dist/node_modules/tedious/lib/data-types/bigint.d.ts +0 -3
- package/dist/node_modules/tedious/lib/data-types/bigint.js +0 -53
- package/dist/node_modules/tedious/lib/data-types/binary.d.ts +0 -5
- package/dist/node_modules/tedious/lib/data-types/binary.js +0 -67
- package/dist/node_modules/tedious/lib/data-types/bit.d.ts +0 -3
- package/dist/node_modules/tedious/lib/data-types/bit.js +0 -46
- package/dist/node_modules/tedious/lib/data-types/bitn.d.ts +0 -3
- package/dist/node_modules/tedious/lib/data-types/bitn.js +0 -29
- package/dist/node_modules/tedious/lib/data-types/char.d.ts +0 -5
- package/dist/node_modules/tedious/lib/data-types/char.js +0 -86
- package/dist/node_modules/tedious/lib/data-types/date.d.ts +0 -3
- package/dist/node_modules/tedious/lib/data-types/date.js +0 -72
- package/dist/node_modules/tedious/lib/data-types/datetime.d.ts +0 -3
- package/dist/node_modules/tedious/lib/data-types/datetime.js +0 -93
- package/dist/node_modules/tedious/lib/data-types/datetime2.d.ts +0 -5
- package/dist/node_modules/tedious/lib/data-types/datetime2.js +0 -118
- package/dist/node_modules/tedious/lib/data-types/datetimen.d.ts +0 -3
- package/dist/node_modules/tedious/lib/data-types/datetimen.js +0 -29
- package/dist/node_modules/tedious/lib/data-types/datetimeoffset.d.ts +0 -5
- package/dist/node_modules/tedious/lib/data-types/datetimeoffset.js +0 -111
- package/dist/node_modules/tedious/lib/data-types/decimal.d.ts +0 -6
- package/dist/node_modules/tedious/lib/data-types/decimal.js +0 -107
- package/dist/node_modules/tedious/lib/data-types/decimaln.d.ts +0 -3
- package/dist/node_modules/tedious/lib/data-types/decimaln.js +0 -29
- package/dist/node_modules/tedious/lib/data-types/float.d.ts +0 -3
- package/dist/node_modules/tedious/lib/data-types/float.js +0 -47
- package/dist/node_modules/tedious/lib/data-types/floatn.d.ts +0 -3
- package/dist/node_modules/tedious/lib/data-types/floatn.js +0 -29
- package/dist/node_modules/tedious/lib/data-types/image.d.ts +0 -3
- package/dist/node_modules/tedious/lib/data-types/image.js +0 -56
- package/dist/node_modules/tedious/lib/data-types/int.d.ts +0 -3
- package/dist/node_modules/tedious/lib/data-types/int.js +0 -53
- package/dist/node_modules/tedious/lib/data-types/intn.d.ts +0 -3
- package/dist/node_modules/tedious/lib/data-types/intn.js +0 -29
- package/dist/node_modules/tedious/lib/data-types/money.d.ts +0 -3
- package/dist/node_modules/tedious/lib/data-types/money.js +0 -59
- package/dist/node_modules/tedious/lib/data-types/moneyn.d.ts +0 -3
- package/dist/node_modules/tedious/lib/data-types/moneyn.js +0 -29
- package/dist/node_modules/tedious/lib/data-types/nchar.d.ts +0 -5
- package/dist/node_modules/tedious/lib/data-types/nchar.js +0 -100
- package/dist/node_modules/tedious/lib/data-types/ntext.d.ts +0 -3
- package/dist/node_modules/tedious/lib/data-types/ntext.js +0 -60
- package/dist/node_modules/tedious/lib/data-types/null.d.ts +0 -3
- package/dist/node_modules/tedious/lib/data-types/null.js +0 -29
- package/dist/node_modules/tedious/lib/data-types/numeric.d.ts +0 -6
- package/dist/node_modules/tedious/lib/data-types/numeric.js +0 -106
- package/dist/node_modules/tedious/lib/data-types/numericn.d.ts +0 -3
- package/dist/node_modules/tedious/lib/data-types/numericn.js +0 -29
- package/dist/node_modules/tedious/lib/data-types/nvarchar.d.ts +0 -5
- package/dist/node_modules/tedious/lib/data-types/nvarchar.js +0 -133
- package/dist/node_modules/tedious/lib/data-types/real.d.ts +0 -3
- package/dist/node_modules/tedious/lib/data-types/real.js +0 -48
- package/dist/node_modules/tedious/lib/data-types/smalldatetime.d.ts +0 -3
- package/dist/node_modules/tedious/lib/data-types/smalldatetime.js +0 -83
- package/dist/node_modules/tedious/lib/data-types/smallint.d.ts +0 -3
- package/dist/node_modules/tedious/lib/data-types/smallint.js +0 -53
- package/dist/node_modules/tedious/lib/data-types/smallmoney.d.ts +0 -3
- package/dist/node_modules/tedious/lib/data-types/smallmoney.js +0 -51
- package/dist/node_modules/tedious/lib/data-types/sql-variant.d.ts +0 -3
- package/dist/node_modules/tedious/lib/data-types/sql-variant.js +0 -29
- package/dist/node_modules/tedious/lib/data-types/text.d.ts +0 -3
- package/dist/node_modules/tedious/lib/data-types/text.js +0 -69
- package/dist/node_modules/tedious/lib/data-types/time.d.ts +0 -3
- package/dist/node_modules/tedious/lib/data-types/time.js +0 -96
- package/dist/node_modules/tedious/lib/data-types/tinyint.d.ts +0 -3
- package/dist/node_modules/tedious/lib/data-types/tinyint.js +0 -53
- package/dist/node_modules/tedious/lib/data-types/tvp.d.ts +0 -3
- package/dist/node_modules/tedious/lib/data-types/tvp.js +0 -117
- package/dist/node_modules/tedious/lib/data-types/udt.d.ts +0 -3
- package/dist/node_modules/tedious/lib/data-types/udt.js +0 -29
- package/dist/node_modules/tedious/lib/data-types/uniqueidentifier.d.ts +0 -3
- package/dist/node_modules/tedious/lib/data-types/uniqueidentifier.js +0 -50
- package/dist/node_modules/tedious/lib/data-types/varbinary.d.ts +0 -5
- package/dist/node_modules/tedious/lib/data-types/varbinary.js +0 -119
- package/dist/node_modules/tedious/lib/data-types/varchar.d.ts +0 -5
- package/dist/node_modules/tedious/lib/data-types/varchar.js +0 -112
- package/dist/node_modules/tedious/lib/data-types/xml.d.ts +0 -3
- package/dist/node_modules/tedious/lib/data-types/xml.js +0 -29
- package/dist/node_modules/tedious/lib/debug.d.ts +0 -25
- package/dist/node_modules/tedious/lib/debug.js +0 -67
- package/dist/node_modules/tedious/lib/errors/abort-error.d.ts +0 -4
- package/dist/node_modules/tedious/lib/errors/abort-error.js +0 -15
- package/dist/node_modules/tedious/lib/errors/timeout-error.d.ts +0 -4
- package/dist/node_modules/tedious/lib/errors/timeout-error.js +0 -15
- package/dist/node_modules/tedious/lib/errors.d.ts +0 -17
- package/dist/node_modules/tedious/lib/errors.js +0 -23
- package/dist/node_modules/tedious/lib/guid-parser.d.ts +0 -3
- package/dist/node_modules/tedious/lib/guid-parser.js +0 -30
- package/dist/node_modules/tedious/lib/incoming-message-stream.d.ts +0 -19
- package/dist/node_modules/tedious/lib/incoming-message-stream.js +0 -97
- package/dist/node_modules/tedious/lib/instance-lookup.d.ts +0 -13
- package/dist/node_modules/tedious/lib/instance-lookup.js +0 -96
- package/dist/node_modules/tedious/lib/library.d.ts +0 -1
- package/dist/node_modules/tedious/lib/library.js +0 -8
- package/dist/node_modules/tedious/lib/login7-payload.d.ts +0 -51
- package/dist/node_modules/tedious/lib/login7-payload.js +0 -402
- package/dist/node_modules/tedious/lib/message-io.d.ts +0 -28
- package/dist/node_modules/tedious/lib/message-io.js +0 -153
- package/dist/node_modules/tedious/lib/message.d.ts +0 -11
- package/dist/node_modules/tedious/lib/message.js +0 -21
- package/dist/node_modules/tedious/lib/metadata-parser.d.ts +0 -48
- package/dist/node_modules/tedious/lib/metadata-parser.js +0 -380
- package/dist/node_modules/tedious/lib/ntlm-payload.d.ts +0 -23
- package/dist/node_modules/tedious/lib/ntlm-payload.js +0 -136
- package/dist/node_modules/tedious/lib/ntlm.d.ts +0 -4
- package/dist/node_modules/tedious/lib/ntlm.js +0 -72
- package/dist/node_modules/tedious/lib/outgoing-message-stream.d.ts +0 -15
- package/dist/node_modules/tedious/lib/outgoing-message-stream.js +0 -81
- package/dist/node_modules/tedious/lib/packet.d.ts +0 -33
- package/dist/node_modules/tedious/lib/packet.js +0 -191
- package/dist/node_modules/tedious/lib/prelogin-payload.d.ts +0 -61
- package/dist/node_modules/tedious/lib/prelogin-payload.js +0 -209
- package/dist/node_modules/tedious/lib/request.d.ts +0 -370
- package/dist/node_modules/tedious/lib/request.js +0 -387
- package/dist/node_modules/tedious/lib/rpcrequest-payload.d.ts +0 -16
- package/dist/node_modules/tedious/lib/rpcrequest-payload.js +0 -109
- package/dist/node_modules/tedious/lib/sender.d.ts +0 -5
- package/dist/node_modules/tedious/lib/sender.js +0 -83
- package/dist/node_modules/tedious/lib/special-stored-procedure.d.ts +0 -18
- package/dist/node_modules/tedious/lib/special-stored-procedure.js +0 -26
- package/dist/node_modules/tedious/lib/sqlbatch-payload.d.ts +0 -13
- package/dist/node_modules/tedious/lib/sqlbatch-payload.js +0 -34
- package/dist/node_modules/tedious/lib/tds-versions.d.ts +0 -6
- package/dist/node_modules/tedious/lib/tds-versions.js +0 -19
- package/dist/node_modules/tedious/lib/tedious.d.ts +0 -13
- package/dist/node_modules/tedious/lib/tedious.js +0 -249
- package/dist/node_modules/tedious/lib/token/colmetadata-token-parser.d.ts +0 -12
- package/dist/node_modules/tedious/lib/token/colmetadata-token-parser.js +0 -124
- package/dist/node_modules/tedious/lib/token/done-token-parser.d.ts +0 -6
- package/dist/node_modules/tedious/lib/token/done-token-parser.js +0 -76
- package/dist/node_modules/tedious/lib/token/env-change-token-parser.d.ts +0 -5
- package/dist/node_modules/tedious/lib/token/env-change-token-parser.js +0 -190
- package/dist/node_modules/tedious/lib/token/feature-ext-ack-parser.d.ts +0 -5
- package/dist/node_modules/tedious/lib/token/feature-ext-ack-parser.js +0 -52
- package/dist/node_modules/tedious/lib/token/fedauth-info-parser.d.ts +0 -5
- package/dist/node_modules/tedious/lib/token/fedauth-info-parser.js +0 -62
- package/dist/node_modules/tedious/lib/token/handler.d.ts +0 -135
- package/dist/node_modules/tedious/lib/token/handler.js +0 -444
- package/dist/node_modules/tedious/lib/token/helpers.d.ts +0 -28
- package/dist/node_modules/tedious/lib/token/helpers.js +0 -205
- package/dist/node_modules/tedious/lib/token/infoerror-token-parser.d.ts +0 -5
- package/dist/node_modules/tedious/lib/token/infoerror-token-parser.js +0 -80
- package/dist/node_modules/tedious/lib/token/loginack-token-parser.d.ts +0 -5
- package/dist/node_modules/tedious/lib/token/loginack-token-parser.js +0 -75
- package/dist/node_modules/tedious/lib/token/nbcrow-token-parser.d.ts +0 -4
- package/dist/node_modules/tedious/lib/token/nbcrow-token-parser.js +0 -104
- package/dist/node_modules/tedious/lib/token/order-token-parser.d.ts +0 -5
- package/dist/node_modules/tedious/lib/token/order-token-parser.js +0 -34
- package/dist/node_modules/tedious/lib/token/returnstatus-token-parser.d.ts +0 -5
- package/dist/node_modules/tedious/lib/token/returnstatus-token-parser.js +0 -21
- package/dist/node_modules/tedious/lib/token/returnvalue-token-parser.d.ts +0 -4
- package/dist/node_modules/tedious/lib/token/returnvalue-token-parser.js +0 -94
- package/dist/node_modules/tedious/lib/token/row-token-parser.d.ts +0 -4
- package/dist/node_modules/tedious/lib/token/row-token-parser.js +0 -77
- package/dist/node_modules/tedious/lib/token/sspi-token-parser.d.ts +0 -5
- package/dist/node_modules/tedious/lib/token/sspi-token-parser.js +0 -42
- package/dist/node_modules/tedious/lib/token/stream-parser.d.ts +0 -34
- package/dist/node_modules/tedious/lib/token/stream-parser.js +0 -341
- package/dist/node_modules/tedious/lib/token/token-stream-parser.d.ts +0 -15
- package/dist/node_modules/tedious/lib/token/token-stream-parser.js +0 -36
- package/dist/node_modules/tedious/lib/token/token.d.ts +0 -312
- package/dist/node_modules/tedious/lib/token/token.js +0 -328
- package/dist/node_modules/tedious/lib/tracking-buffer/writable-tracking-buffer.d.ts +0 -47
- package/dist/node_modules/tedious/lib/tracking-buffer/writable-tracking-buffer.js +0 -249
- package/dist/node_modules/tedious/lib/transaction.d.ts +0 -39
- package/dist/node_modules/tedious/lib/transaction.js +0 -137
- package/dist/node_modules/tedious/lib/transient-error-lookup.d.ts +0 -3
- package/dist/node_modules/tedious/lib/transient-error-lookup.js +0 -19
- package/dist/node_modules/tedious/lib/utils/with-timeout.d.ts +0 -7
- package/dist/node_modules/tedious/lib/utils/with-timeout.js +0 -36
- package/dist/node_modules/tedious/lib/value-parser.d.ts +0 -7
- package/dist/node_modules/tedious/lib/value-parser.js +0 -813
- package/dist/node_modules/tedious/node_modules/@types/node/assert/strict.d.ts +0 -105
- package/dist/node_modules/tedious/node_modules/@types/node/assert.d.ts +0 -955
- package/dist/node_modules/tedious/node_modules/@types/node/async_hooks.d.ts +0 -623
- package/dist/node_modules/tedious/node_modules/@types/node/buffer.buffer.d.ts +0 -466
- package/dist/node_modules/tedious/node_modules/@types/node/buffer.d.ts +0 -1810
- package/dist/node_modules/tedious/node_modules/@types/node/child_process.d.ts +0 -1428
- package/dist/node_modules/tedious/node_modules/@types/node/cluster.d.ts +0 -486
- package/dist/node_modules/tedious/node_modules/@types/node/compatibility/iterators.d.ts +0 -21
- package/dist/node_modules/tedious/node_modules/@types/node/console.d.ts +0 -151
- package/dist/node_modules/tedious/node_modules/@types/node/constants.d.ts +0 -20
- package/dist/node_modules/tedious/node_modules/@types/node/crypto.d.ts +0 -4065
- package/dist/node_modules/tedious/node_modules/@types/node/dgram.d.ts +0 -564
- package/dist/node_modules/tedious/node_modules/@types/node/diagnostics_channel.d.ts +0 -576
- package/dist/node_modules/tedious/node_modules/@types/node/dns/promises.d.ts +0 -503
- package/dist/node_modules/tedious/node_modules/@types/node/dns.d.ts +0 -922
- package/dist/node_modules/tedious/node_modules/@types/node/domain.d.ts +0 -166
- package/dist/node_modules/tedious/node_modules/@types/node/events.d.ts +0 -1054
- package/dist/node_modules/tedious/node_modules/@types/node/fs/promises.d.ts +0 -1329
- package/dist/node_modules/tedious/node_modules/@types/node/fs.d.ts +0 -4676
- package/dist/node_modules/tedious/node_modules/@types/node/globals.d.ts +0 -150
- package/dist/node_modules/tedious/node_modules/@types/node/globals.typedarray.d.ts +0 -101
- package/dist/node_modules/tedious/node_modules/@types/node/http.d.ts +0 -2167
- package/dist/node_modules/tedious/node_modules/@types/node/http2.d.ts +0 -2480
- package/dist/node_modules/tedious/node_modules/@types/node/https.d.ts +0 -405
- package/dist/node_modules/tedious/node_modules/@types/node/index.d.ts +0 -115
- package/dist/node_modules/tedious/node_modules/@types/node/inspector/promises.d.ts +0 -41
- package/dist/node_modules/tedious/node_modules/@types/node/inspector.d.ts +0 -224
- package/dist/node_modules/tedious/node_modules/@types/node/inspector.generated.d.ts +0 -4226
- package/dist/node_modules/tedious/node_modules/@types/node/module.d.ts +0 -819
- package/dist/node_modules/tedious/node_modules/@types/node/net.d.ts +0 -933
- package/dist/node_modules/tedious/node_modules/@types/node/os.d.ts +0 -507
- package/dist/node_modules/tedious/node_modules/@types/node/package.json +0 -155
- package/dist/node_modules/tedious/node_modules/@types/node/path/posix.d.ts +0 -8
- package/dist/node_modules/tedious/node_modules/@types/node/path/win32.d.ts +0 -8
- package/dist/node_modules/tedious/node_modules/@types/node/path.d.ts +0 -187
- package/dist/node_modules/tedious/node_modules/@types/node/perf_hooks.d.ts +0 -643
- package/dist/node_modules/tedious/node_modules/@types/node/process.d.ts +0 -2161
- package/dist/node_modules/tedious/node_modules/@types/node/punycode.d.ts +0 -117
- package/dist/node_modules/tedious/node_modules/@types/node/querystring.d.ts +0 -152
- package/dist/node_modules/tedious/node_modules/@types/node/quic.d.ts +0 -910
- package/dist/node_modules/tedious/node_modules/@types/node/readline/promises.d.ts +0 -161
- package/dist/node_modules/tedious/node_modules/@types/node/readline.d.ts +0 -541
- package/dist/node_modules/tedious/node_modules/@types/node/repl.d.ts +0 -415
- package/dist/node_modules/tedious/node_modules/@types/node/sea.d.ts +0 -162
- package/dist/node_modules/tedious/node_modules/@types/node/sqlite.d.ts +0 -955
- package/dist/node_modules/tedious/node_modules/@types/node/stream/consumers.d.ts +0 -38
- package/dist/node_modules/tedious/node_modules/@types/node/stream/promises.d.ts +0 -211
- package/dist/node_modules/tedious/node_modules/@types/node/stream/web.d.ts +0 -296
- package/dist/node_modules/tedious/node_modules/@types/node/stream.d.ts +0 -1760
- package/dist/node_modules/tedious/node_modules/@types/node/string_decoder.d.ts +0 -67
- package/dist/node_modules/tedious/node_modules/@types/node/test/reporters.d.ts +0 -96
- package/dist/node_modules/tedious/node_modules/@types/node/test.d.ts +0 -2240
- package/dist/node_modules/tedious/node_modules/@types/node/timers/promises.d.ts +0 -108
- package/dist/node_modules/tedious/node_modules/@types/node/timers.d.ts +0 -159
- package/dist/node_modules/tedious/node_modules/@types/node/tls.d.ts +0 -1198
- package/dist/node_modules/tedious/node_modules/@types/node/trace_events.d.ts +0 -197
- package/dist/node_modules/tedious/node_modules/@types/node/ts5.6/buffer.buffer.d.ts +0 -462
- package/dist/node_modules/tedious/node_modules/@types/node/ts5.6/compatibility/float16array.d.ts +0 -71
- package/dist/node_modules/tedious/node_modules/@types/node/ts5.6/globals.typedarray.d.ts +0 -36
- package/dist/node_modules/tedious/node_modules/@types/node/ts5.6/index.d.ts +0 -117
- package/dist/node_modules/tedious/node_modules/@types/node/ts5.7/compatibility/float16array.d.ts +0 -72
- package/dist/node_modules/tedious/node_modules/@types/node/ts5.7/index.d.ts +0 -117
- package/dist/node_modules/tedious/node_modules/@types/node/tty.d.ts +0 -250
- package/dist/node_modules/tedious/node_modules/@types/node/url.d.ts +0 -519
- package/dist/node_modules/tedious/node_modules/@types/node/util/types.d.ts +0 -558
- package/dist/node_modules/tedious/node_modules/@types/node/util.d.ts +0 -1662
- package/dist/node_modules/tedious/node_modules/@types/node/v8.d.ts +0 -983
- package/dist/node_modules/tedious/node_modules/@types/node/vm.d.ts +0 -1208
- package/dist/node_modules/tedious/node_modules/@types/node/wasi.d.ts +0 -202
- package/dist/node_modules/tedious/node_modules/@types/node/web-globals/abortcontroller.d.ts +0 -59
- package/dist/node_modules/tedious/node_modules/@types/node/web-globals/blob.d.ts +0 -23
- package/dist/node_modules/tedious/node_modules/@types/node/web-globals/console.d.ts +0 -9
- package/dist/node_modules/tedious/node_modules/@types/node/web-globals/crypto.d.ts +0 -39
- package/dist/node_modules/tedious/node_modules/@types/node/web-globals/domexception.d.ts +0 -68
- package/dist/node_modules/tedious/node_modules/@types/node/web-globals/encoding.d.ts +0 -11
- package/dist/node_modules/tedious/node_modules/@types/node/web-globals/events.d.ts +0 -106
- package/dist/node_modules/tedious/node_modules/@types/node/web-globals/fetch.d.ts +0 -69
- package/dist/node_modules/tedious/node_modules/@types/node/web-globals/importmeta.d.ts +0 -13
- package/dist/node_modules/tedious/node_modules/@types/node/web-globals/messaging.d.ts +0 -23
- package/dist/node_modules/tedious/node_modules/@types/node/web-globals/navigator.d.ts +0 -25
- package/dist/node_modules/tedious/node_modules/@types/node/web-globals/performance.d.ts +0 -45
- package/dist/node_modules/tedious/node_modules/@types/node/web-globals/storage.d.ts +0 -24
- package/dist/node_modules/tedious/node_modules/@types/node/web-globals/streams.d.ts +0 -115
- package/dist/node_modules/tedious/node_modules/@types/node/web-globals/timers.d.ts +0 -44
- package/dist/node_modules/tedious/node_modules/@types/node/web-globals/url.d.ts +0 -24
- package/dist/node_modules/tedious/node_modules/@types/node/worker_threads.d.ts +0 -717
- package/dist/node_modules/tedious/node_modules/@types/node/zlib.d.ts +0 -618
- package/dist/node_modules/tedious/node_modules/bl/.github/dependabot.yml +0 -16
- package/dist/node_modules/tedious/node_modules/bl/.github/workflows/test-and-release.yml +0 -61
- package/dist/node_modules/tedious/node_modules/bl/BufferList.d.ts +0 -431
- package/dist/node_modules/tedious/node_modules/bl/BufferList.js +0 -421
- package/dist/node_modules/tedious/node_modules/bl/bl.js +0 -84
- package/dist/node_modules/tedious/node_modules/bl/index.d.ts +0 -88
- package/dist/node_modules/tedious/node_modules/bl/package.json +0 -123
- package/dist/node_modules/tedious/node_modules/bl/test/convert.js +0 -21
- package/dist/node_modules/tedious/node_modules/bl/test/indexOf.js +0 -492
- package/dist/node_modules/tedious/node_modules/bl/test/isBufferList.js +0 -32
- package/dist/node_modules/tedious/node_modules/bl/test/test.js +0 -1032
- package/dist/node_modules/tedious/node_modules/buffer/index.d.ts +0 -194
- package/dist/node_modules/tedious/node_modules/buffer/index.js +0 -2106
- package/dist/node_modules/tedious/node_modules/buffer/package.json +0 -93
- package/dist/node_modules/tedious/node_modules/readable-stream/lib/_stream_duplex.js +0 -4
- package/dist/node_modules/tedious/node_modules/readable-stream/lib/_stream_passthrough.js +0 -4
- package/dist/node_modules/tedious/node_modules/readable-stream/lib/_stream_readable.js +0 -4
- package/dist/node_modules/tedious/node_modules/readable-stream/lib/_stream_transform.js +0 -4
- package/dist/node_modules/tedious/node_modules/readable-stream/lib/_stream_writable.js +0 -4
- package/dist/node_modules/tedious/node_modules/readable-stream/lib/internal/streams/add-abort-signal.js +0 -52
- package/dist/node_modules/tedious/node_modules/readable-stream/lib/internal/streams/buffer_list.js +0 -157
- package/dist/node_modules/tedious/node_modules/readable-stream/lib/internal/streams/compose.js +0 -194
- package/dist/node_modules/tedious/node_modules/readable-stream/lib/internal/streams/destroy.js +0 -290
- package/dist/node_modules/tedious/node_modules/readable-stream/lib/internal/streams/duplex.js +0 -143
- package/dist/node_modules/tedious/node_modules/readable-stream/lib/internal/streams/duplexify.js +0 -378
- package/dist/node_modules/tedious/node_modules/readable-stream/lib/internal/streams/end-of-stream.js +0 -286
- package/dist/node_modules/tedious/node_modules/readable-stream/lib/internal/streams/from.js +0 -98
- package/dist/node_modules/tedious/node_modules/readable-stream/lib/internal/streams/lazy_transform.js +0 -51
- package/dist/node_modules/tedious/node_modules/readable-stream/lib/internal/streams/legacy.js +0 -89
- package/dist/node_modules/tedious/node_modules/readable-stream/lib/internal/streams/operators.js +0 -457
- package/dist/node_modules/tedious/node_modules/readable-stream/lib/internal/streams/passthrough.js +0 -39
- package/dist/node_modules/tedious/node_modules/readable-stream/lib/internal/streams/pipeline.js +0 -471
- package/dist/node_modules/tedious/node_modules/readable-stream/lib/internal/streams/readable.js +0 -1290
- package/dist/node_modules/tedious/node_modules/readable-stream/lib/internal/streams/state.js +0 -39
- package/dist/node_modules/tedious/node_modules/readable-stream/lib/internal/streams/transform.js +0 -180
- package/dist/node_modules/tedious/node_modules/readable-stream/lib/internal/streams/utils.js +0 -327
- package/dist/node_modules/tedious/node_modules/readable-stream/lib/internal/streams/writable.js +0 -819
- package/dist/node_modules/tedious/node_modules/readable-stream/lib/internal/validators.js +0 -530
- package/dist/node_modules/tedious/node_modules/readable-stream/lib/ours/browser.js +0 -35
- package/dist/node_modules/tedious/node_modules/readable-stream/lib/ours/errors.js +0 -343
- package/dist/node_modules/tedious/node_modules/readable-stream/lib/ours/index.js +0 -65
- package/dist/node_modules/tedious/node_modules/readable-stream/lib/ours/primordials.js +0 -124
- package/dist/node_modules/tedious/node_modules/readable-stream/lib/ours/util/inspect.js +0 -55
- package/dist/node_modules/tedious/node_modules/readable-stream/lib/ours/util.js +0 -148
- package/dist/node_modules/tedious/node_modules/readable-stream/lib/stream/promises.js +0 -43
- package/dist/node_modules/tedious/node_modules/readable-stream/lib/stream.js +0 -143
- package/dist/node_modules/tedious/node_modules/readable-stream/package.json +0 -88
- package/dist/node_modules/tedious/node_modules/sprintf-js/dist/.gitattributes +0 -4
- package/dist/node_modules/tedious/node_modules/sprintf-js/dist/angular-sprintf.min.js +0 -3
- package/dist/node_modules/tedious/node_modules/sprintf-js/dist/sprintf.min.js +0 -3
- package/dist/node_modules/tedious/node_modules/sprintf-js/package.json +0 -35
- package/dist/node_modules/tedious/node_modules/sprintf-js/src/angular-sprintf.js +0 -24
- package/dist/node_modules/tedious/node_modules/sprintf-js/src/sprintf.js +0 -231
- package/dist/node_modules/tedious/node_modules/undici-types/agent.d.ts +0 -32
- package/dist/node_modules/tedious/node_modules/undici-types/api.d.ts +0 -43
- package/dist/node_modules/tedious/node_modules/undici-types/balanced-pool.d.ts +0 -29
- package/dist/node_modules/tedious/node_modules/undici-types/cache-interceptor.d.ts +0 -172
- package/dist/node_modules/tedious/node_modules/undici-types/cache.d.ts +0 -36
- package/dist/node_modules/tedious/node_modules/undici-types/client-stats.d.ts +0 -15
- package/dist/node_modules/tedious/node_modules/undici-types/client.d.ts +0 -108
- package/dist/node_modules/tedious/node_modules/undici-types/connector.d.ts +0 -34
- package/dist/node_modules/tedious/node_modules/undici-types/content-type.d.ts +0 -21
- package/dist/node_modules/tedious/node_modules/undici-types/cookies.d.ts +0 -30
- package/dist/node_modules/tedious/node_modules/undici-types/diagnostics-channel.d.ts +0 -74
- package/dist/node_modules/tedious/node_modules/undici-types/dispatcher.d.ts +0 -276
- package/dist/node_modules/tedious/node_modules/undici-types/env-http-proxy-agent.d.ts +0 -22
- package/dist/node_modules/tedious/node_modules/undici-types/errors.d.ts +0 -161
- package/dist/node_modules/tedious/node_modules/undici-types/eventsource.d.ts +0 -66
- package/dist/node_modules/tedious/node_modules/undici-types/fetch.d.ts +0 -211
- package/dist/node_modules/tedious/node_modules/undici-types/formdata.d.ts +0 -108
- package/dist/node_modules/tedious/node_modules/undici-types/global-dispatcher.d.ts +0 -9
- package/dist/node_modules/tedious/node_modules/undici-types/global-origin.d.ts +0 -7
- package/dist/node_modules/tedious/node_modules/undici-types/h2c-client.d.ts +0 -73
- package/dist/node_modules/tedious/node_modules/undici-types/handlers.d.ts +0 -15
- package/dist/node_modules/tedious/node_modules/undici-types/header.d.ts +0 -160
- package/dist/node_modules/tedious/node_modules/undici-types/index.d.ts +0 -80
- package/dist/node_modules/tedious/node_modules/undici-types/interceptors.d.ts +0 -39
- package/dist/node_modules/tedious/node_modules/undici-types/mock-agent.d.ts +0 -68
- package/dist/node_modules/tedious/node_modules/undici-types/mock-call-history.d.ts +0 -111
- package/dist/node_modules/tedious/node_modules/undici-types/mock-client.d.ts +0 -27
- package/dist/node_modules/tedious/node_modules/undici-types/mock-errors.d.ts +0 -12
- package/dist/node_modules/tedious/node_modules/undici-types/mock-interceptor.d.ts +0 -94
- package/dist/node_modules/tedious/node_modules/undici-types/mock-pool.d.ts +0 -27
- package/dist/node_modules/tedious/node_modules/undici-types/package.json +0 -55
- package/dist/node_modules/tedious/node_modules/undici-types/patch.d.ts +0 -29
- package/dist/node_modules/tedious/node_modules/undici-types/pool-stats.d.ts +0 -19
- package/dist/node_modules/tedious/node_modules/undici-types/pool.d.ts +0 -41
- package/dist/node_modules/tedious/node_modules/undici-types/proxy-agent.d.ts +0 -29
- package/dist/node_modules/tedious/node_modules/undici-types/readable.d.ts +0 -68
- package/dist/node_modules/tedious/node_modules/undici-types/retry-agent.d.ts +0 -8
- package/dist/node_modules/tedious/node_modules/undici-types/retry-handler.d.ts +0 -125
- package/dist/node_modules/tedious/node_modules/undici-types/snapshot-agent.d.ts +0 -109
- package/dist/node_modules/tedious/node_modules/undici-types/util.d.ts +0 -18
- package/dist/node_modules/tedious/node_modules/undici-types/utility.d.ts +0 -7
- package/dist/node_modules/tedious/node_modules/undici-types/webidl.d.ts +0 -341
- package/dist/node_modules/tedious/node_modules/undici-types/websocket.d.ts +0 -186
- package/dist/node_modules/tedious/package.json +0 -1
- package/dist/node_modules/tedious/tsconfig.build-types.json +0 -15
- package/dist/node_modules/tedious/tsconfig.json +0 -29
- package/dist/node_modules/tedious/types/js-md4.d.ts +0 -7
- package/dist/node_modules/tedious/types/native-duplexpair.d.ts +0 -12
|
@@ -1,12 +0,0 @@
|
|
|
1
|
-
import { type Metadata } from '../metadata-parser';
|
|
2
|
-
import Parser from './stream-parser';
|
|
3
|
-
import { ColMetadataToken } from './token';
|
|
4
|
-
export interface ColumnMetadata extends Metadata {
|
|
5
|
-
/**
|
|
6
|
-
* The column's name。
|
|
7
|
-
*/
|
|
8
|
-
colName: string;
|
|
9
|
-
tableName?: string | string[] | undefined;
|
|
10
|
-
}
|
|
11
|
-
declare function colMetadataParser(parser: Parser): Promise<ColMetadataToken>;
|
|
12
|
-
export default colMetadataParser;
|
|
@@ -1,124 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
|
|
3
|
-
Object.defineProperty(exports, "__esModule", {
|
|
4
|
-
value: true
|
|
5
|
-
});
|
|
6
|
-
exports.default = void 0;
|
|
7
|
-
var _metadataParser = require("../metadata-parser");
|
|
8
|
-
var _token = require("./token");
|
|
9
|
-
var _helpers = require("./helpers");
|
|
10
|
-
function readTableName(buf, offset, metadata, options) {
|
|
11
|
-
if (!metadata.type.hasTableName) {
|
|
12
|
-
return new _helpers.Result(undefined, offset);
|
|
13
|
-
}
|
|
14
|
-
if (options.tdsVersion < '7_2') {
|
|
15
|
-
return (0, _helpers.readUsVarChar)(buf, offset);
|
|
16
|
-
}
|
|
17
|
-
let numberOfTableNameParts;
|
|
18
|
-
({
|
|
19
|
-
offset,
|
|
20
|
-
value: numberOfTableNameParts
|
|
21
|
-
} = (0, _helpers.readUInt8)(buf, offset));
|
|
22
|
-
const tableName = [];
|
|
23
|
-
for (let i = 0; i < numberOfTableNameParts; i++) {
|
|
24
|
-
let tableNamePart;
|
|
25
|
-
({
|
|
26
|
-
offset,
|
|
27
|
-
value: tableNamePart
|
|
28
|
-
} = (0, _helpers.readUsVarChar)(buf, offset));
|
|
29
|
-
tableName.push(tableNamePart);
|
|
30
|
-
}
|
|
31
|
-
return new _helpers.Result(tableName, offset);
|
|
32
|
-
}
|
|
33
|
-
function readColumnName(buf, offset, index, metadata, options) {
|
|
34
|
-
let colName;
|
|
35
|
-
({
|
|
36
|
-
offset,
|
|
37
|
-
value: colName
|
|
38
|
-
} = (0, _helpers.readBVarChar)(buf, offset));
|
|
39
|
-
if (options.columnNameReplacer) {
|
|
40
|
-
return new _helpers.Result(options.columnNameReplacer(colName, index, metadata), offset);
|
|
41
|
-
} else if (options.camelCaseColumns) {
|
|
42
|
-
return new _helpers.Result(colName.replace(/^[A-Z]/, function (s) {
|
|
43
|
-
return s.toLowerCase();
|
|
44
|
-
}), offset);
|
|
45
|
-
} else {
|
|
46
|
-
return new _helpers.Result(colName, offset);
|
|
47
|
-
}
|
|
48
|
-
}
|
|
49
|
-
function readColumn(buf, offset, options, index) {
|
|
50
|
-
let metadata;
|
|
51
|
-
({
|
|
52
|
-
offset,
|
|
53
|
-
value: metadata
|
|
54
|
-
} = (0, _metadataParser.readMetadata)(buf, offset, options));
|
|
55
|
-
let tableName;
|
|
56
|
-
({
|
|
57
|
-
offset,
|
|
58
|
-
value: tableName
|
|
59
|
-
} = readTableName(buf, offset, metadata, options));
|
|
60
|
-
let colName;
|
|
61
|
-
({
|
|
62
|
-
offset,
|
|
63
|
-
value: colName
|
|
64
|
-
} = readColumnName(buf, offset, index, metadata, options));
|
|
65
|
-
return new _helpers.Result({
|
|
66
|
-
userType: metadata.userType,
|
|
67
|
-
flags: metadata.flags,
|
|
68
|
-
type: metadata.type,
|
|
69
|
-
collation: metadata.collation,
|
|
70
|
-
precision: metadata.precision,
|
|
71
|
-
scale: metadata.scale,
|
|
72
|
-
udtInfo: metadata.udtInfo,
|
|
73
|
-
dataLength: metadata.dataLength,
|
|
74
|
-
schema: metadata.schema,
|
|
75
|
-
colName: colName,
|
|
76
|
-
tableName: tableName
|
|
77
|
-
}, offset);
|
|
78
|
-
}
|
|
79
|
-
async function colMetadataParser(parser) {
|
|
80
|
-
let columnCount;
|
|
81
|
-
while (true) {
|
|
82
|
-
let offset;
|
|
83
|
-
try {
|
|
84
|
-
({
|
|
85
|
-
offset,
|
|
86
|
-
value: columnCount
|
|
87
|
-
} = (0, _helpers.readUInt16LE)(parser.buffer, parser.position));
|
|
88
|
-
} catch (err) {
|
|
89
|
-
if (err instanceof _helpers.NotEnoughDataError) {
|
|
90
|
-
await parser.waitForChunk();
|
|
91
|
-
continue;
|
|
92
|
-
}
|
|
93
|
-
throw err;
|
|
94
|
-
}
|
|
95
|
-
parser.position = offset;
|
|
96
|
-
break;
|
|
97
|
-
}
|
|
98
|
-
const columns = [];
|
|
99
|
-
for (let i = 0; i < columnCount; i++) {
|
|
100
|
-
while (true) {
|
|
101
|
-
let column;
|
|
102
|
-
let offset;
|
|
103
|
-
try {
|
|
104
|
-
({
|
|
105
|
-
offset,
|
|
106
|
-
value: column
|
|
107
|
-
} = readColumn(parser.buffer, parser.position, parser.options, i));
|
|
108
|
-
} catch (err) {
|
|
109
|
-
if (err instanceof _helpers.NotEnoughDataError) {
|
|
110
|
-
await parser.waitForChunk();
|
|
111
|
-
continue;
|
|
112
|
-
}
|
|
113
|
-
throw err;
|
|
114
|
-
}
|
|
115
|
-
parser.position = offset;
|
|
116
|
-
columns.push(column);
|
|
117
|
-
break;
|
|
118
|
-
}
|
|
119
|
-
}
|
|
120
|
-
return new _token.ColMetadataToken(columns);
|
|
121
|
-
}
|
|
122
|
-
var _default = exports.default = colMetadataParser;
|
|
123
|
-
module.exports = colMetadataParser;
|
|
124
|
-
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJuYW1lcyI6WyJfbWV0YWRhdGFQYXJzZXIiLCJyZXF1aXJlIiwiX3Rva2VuIiwiX2hlbHBlcnMiLCJyZWFkVGFibGVOYW1lIiwiYnVmIiwib2Zmc2V0IiwibWV0YWRhdGEiLCJvcHRpb25zIiwidHlwZSIsImhhc1RhYmxlTmFtZSIsIlJlc3VsdCIsInVuZGVmaW5lZCIsInRkc1ZlcnNpb24iLCJyZWFkVXNWYXJDaGFyIiwibnVtYmVyT2ZUYWJsZU5hbWVQYXJ0cyIsInZhbHVlIiwicmVhZFVJbnQ4IiwidGFibGVOYW1lIiwiaSIsInRhYmxlTmFtZVBhcnQiLCJwdXNoIiwicmVhZENvbHVtbk5hbWUiLCJpbmRleCIsImNvbE5hbWUiLCJyZWFkQlZhckNoYXIiLCJjb2x1bW5OYW1lUmVwbGFjZXIiLCJjYW1lbENhc2VDb2x1bW5zIiwicmVwbGFjZSIsInMiLCJ0b0xvd2VyQ2FzZSIsInJlYWRDb2x1bW4iLCJyZWFkTWV0YWRhdGEiLCJ1c2VyVHlwZSIsImZsYWdzIiwiY29sbGF0aW9uIiwicHJlY2lzaW9uIiwic2NhbGUiLCJ1ZHRJbmZvIiwiZGF0YUxlbmd0aCIsInNjaGVtYSIsImNvbE1ldGFkYXRhUGFyc2VyIiwicGFyc2VyIiwiY29sdW1uQ291bnQiLCJyZWFkVUludDE2TEUiLCJidWZmZXIiLCJwb3NpdGlvbiIsImVyciIsIk5vdEVub3VnaERhdGFFcnJvciIsIndhaXRGb3JDaHVuayIsImNvbHVtbnMiLCJjb2x1bW4iLCJDb2xNZXRhZGF0YVRva2VuIiwiX2RlZmF1bHQiLCJleHBvcnRzIiwiZGVmYXVsdCIsIm1vZHVsZSJdLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy90b2tlbi9jb2xtZXRhZGF0YS10b2tlbi1wYXJzZXIudHMiXSwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgcmVhZE1ldGFkYXRhLCB0eXBlIE1ldGFkYXRhIH0gZnJvbSAnLi4vbWV0YWRhdGEtcGFyc2VyJztcblxuaW1wb3J0IFBhcnNlciwgeyB0eXBlIFBhcnNlck9wdGlvbnMgfSBmcm9tICcuL3N0cmVhbS1wYXJzZXInO1xuaW1wb3J0IHsgQ29sTWV0YWRhdGFUb2tlbiB9IGZyb20gJy4vdG9rZW4nO1xuaW1wb3J0IHsgTm90RW5vdWdoRGF0YUVycm9yLCBSZXN1bHQsIHJlYWRCVmFyQ2hhciwgcmVhZFVJbnQxNkxFLCByZWFkVUludDgsIHJlYWRVc1ZhckNoYXIgfSBmcm9tICcuL2hlbHBlcnMnO1xuXG5leHBvcnQgaW50ZXJmYWNlIENvbHVtbk1ldGFkYXRhIGV4dGVuZHMgTWV0YWRhdGEge1xuICAvKipcbiAgICogVGhlIGNvbHVtbidzIG5hbWXjgIJcbiAgICovXG4gIGNvbE5hbWU6IHN0cmluZztcblxuICB0YWJsZU5hbWU/OiBzdHJpbmcgfCBzdHJpbmdbXSB8IHVuZGVmaW5lZDtcbn1cblxuZnVuY3Rpb24gcmVhZFRhYmxlTmFtZShidWY6IEJ1ZmZlciwgb2Zmc2V0OiBudW1iZXIsIG1ldGFkYXRhOiBNZXRhZGF0YSwgb3B0aW9uczogUGFyc2VyT3B0aW9ucyk6IFJlc3VsdDxzdHJpbmcgfCBzdHJpbmdbXSB8IHVuZGVmaW5lZD4ge1xuICBpZiAoIW1ldGFkYXRhLnR5cGUuaGFzVGFibGVOYW1lKSB7XG4gICAgcmV0dXJuIG5ldyBSZXN1bHQodW5kZWZpbmVkLCBvZmZzZXQpO1xuICB9XG5cbiAgaWYgKG9wdGlvbnMudGRzVmVyc2lvbiA8ICc3XzInKSB7XG4gICAgcmV0dXJuIHJlYWRVc1ZhckNoYXIoYnVmLCBvZmZzZXQpO1xuICB9XG5cbiAgbGV0IG51bWJlck9mVGFibGVOYW1lUGFydHM7XG4gICh7IG9mZnNldCwgdmFsdWU6IG51bWJlck9mVGFibGVOYW1lUGFydHMgfSA9IHJlYWRVSW50OChidWYsIG9mZnNldCkpO1xuXG4gIGNvbnN0IHRhYmxlTmFtZTogc3RyaW5nW10gPSBbXTtcbiAgZm9yIChsZXQgaSA9IDA7IGkgPCBudW1iZXJPZlRhYmxlTmFtZVBhcnRzOyBpKyspIHtcbiAgICBsZXQgdGFibGVOYW1lUGFydDtcbiAgICAoeyBvZmZzZXQsIHZhbHVlOiB0YWJsZU5hbWVQYXJ0IH0gPSByZWFkVXNWYXJDaGFyKGJ1Ziwgb2Zmc2V0KSk7XG5cbiAgICB0YWJsZU5hbWUucHVzaCh0YWJsZU5hbWVQYXJ0KTtcbiAgfVxuXG4gIHJldHVybiBuZXcgUmVzdWx0KHRhYmxlTmFtZSwgb2Zmc2V0KTtcbn1cblxuZnVuY3Rpb24gcmVhZENvbHVtbk5hbWUoYnVmOiBCdWZmZXIsIG9mZnNldDogbnVtYmVyLCBpbmRleDogbnVtYmVyLCBtZXRhZGF0YTogTWV0YWRhdGEsIG9wdGlvbnM6IFBhcnNlck9wdGlvbnMpOiBSZXN1bHQ8c3RyaW5nPiB7XG4gIGxldCBjb2xOYW1lO1xuICAoeyBvZmZzZXQsIHZhbHVlOiBjb2xOYW1lIH0gPSByZWFkQlZhckNoYXIoYnVmLCBvZmZzZXQpKTtcblxuICBpZiAob3B0aW9ucy5jb2x1bW5OYW1lUmVwbGFjZXIpIHtcbiAgICByZXR1cm4gbmV3IFJlc3VsdChvcHRpb25zLmNvbHVtbk5hbWVSZXBsYWNlcihjb2xOYW1lLCBpbmRleCwgbWV0YWRhdGEpLCBvZmZzZXQpO1xuICB9IGVsc2UgaWYgKG9wdGlvbnMuY2FtZWxDYXNlQ29sdW1ucykge1xuICAgIHJldHVybiBuZXcgUmVzdWx0KGNvbE5hbWUucmVwbGFjZSgvXltBLVpdLywgZnVuY3Rpb24ocykge1xuICAgICAgcmV0dXJuIHMudG9Mb3dlckNhc2UoKTtcbiAgICB9KSwgb2Zmc2V0KTtcbiAgfSBlbHNlIHtcbiAgICByZXR1cm4gbmV3IFJlc3VsdChjb2xOYW1lLCBvZmZzZXQpO1xuICB9XG59XG5cbmZ1bmN0aW9uIHJlYWRDb2x1bW4oYnVmOiBCdWZmZXIsIG9mZnNldDogbnVtYmVyLCBvcHRpb25zOiBQYXJzZXJPcHRpb25zLCBpbmRleDogbnVtYmVyKSB7XG4gIGxldCBtZXRhZGF0YTtcbiAgKHsgb2Zmc2V0LCB2YWx1ZTogbWV0YWRhdGEgfSA9IHJlYWRNZXRhZGF0YShidWYsIG9mZnNldCwgb3B0aW9ucykpO1xuXG4gIGxldCB0YWJsZU5hbWU7XG4gICh7IG9mZnNldCwgdmFsdWU6IHRhYmxlTmFtZSB9ID0gcmVhZFRhYmxlTmFtZShidWYsIG9mZnNldCwgbWV0YWRhdGEsIG9wdGlvbnMpKTtcblxuICBsZXQgY29sTmFtZTtcbiAgKHsgb2Zmc2V0LCB2YWx1ZTogY29sTmFtZSB9ID0gcmVhZENvbHVtbk5hbWUoYnVmLCBvZmZzZXQsIGluZGV4LCBtZXRhZGF0YSwgb3B0aW9ucykpO1xuXG4gIHJldHVybiBuZXcgUmVzdWx0KHtcbiAgICB1c2VyVHlwZTogbWV0YWRhdGEudXNlclR5cGUsXG4gICAgZmxhZ3M6IG1ldGFkYXRhLmZsYWdzLFxuICAgIHR5cGU6IG1ldGFkYXRhLnR5cGUsXG4gICAgY29sbGF0aW9uOiBtZXRhZGF0YS5jb2xsYXRpb24sXG4gICAgcHJlY2lzaW9uOiBtZXRhZGF0YS5wcmVjaXNpb24sXG4gICAgc2NhbGU6IG1ldGFkYXRhLnNjYWxlLFxuICAgIHVkdEluZm86IG1ldGFkYXRhLnVkdEluZm8sXG4gICAgZGF0YUxlbmd0aDogbWV0YWRhdGEuZGF0YUxlbmd0aCxcbiAgICBzY2hlbWE6IG1ldGFkYXRhLnNjaGVtYSxcbiAgICBjb2xOYW1lOiBjb2xOYW1lLFxuICAgIHRhYmxlTmFtZTogdGFibGVOYW1lXG4gIH0sIG9mZnNldCk7XG59XG5cbmFzeW5jIGZ1bmN0aW9uIGNvbE1ldGFkYXRhUGFyc2VyKHBhcnNlcjogUGFyc2VyKTogUHJvbWlzZTxDb2xNZXRhZGF0YVRva2VuPiB7XG4gIGxldCBjb2x1bW5Db3VudDtcblxuICB3aGlsZSAodHJ1ZSkge1xuICAgIGxldCBvZmZzZXQ7XG5cbiAgICB0cnkge1xuICAgICAgKHsgb2Zmc2V0LCB2YWx1ZTogY29sdW1uQ291bnQgfSA9IHJlYWRVSW50MTZMRShwYXJzZXIuYnVmZmVyLCBwYXJzZXIucG9zaXRpb24pKTtcbiAgICB9IGNhdGNoIChlcnIpIHtcbiAgICAgIGlmIChlcnIgaW5zdGFuY2VvZiBOb3RFbm91Z2hEYXRhRXJyb3IpIHtcbiAgICAgICAgYXdhaXQgcGFyc2VyLndhaXRGb3JDaHVuaygpO1xuICAgICAgICBjb250aW51ZTtcbiAgICAgIH1cblxuICAgICAgdGhyb3cgZXJyO1xuICAgIH1cblxuICAgIHBhcnNlci5wb3NpdGlvbiA9IG9mZnNldDtcbiAgICBicmVhaztcbiAgfVxuXG4gIGNvbnN0IGNvbHVtbnM6IENvbHVtbk1ldGFkYXRhW10gPSBbXTtcbiAgZm9yIChsZXQgaSA9IDA7IGkgPCBjb2x1bW5Db3VudDsgaSsrKSB7XG4gICAgd2hpbGUgKHRydWUpIHtcbiAgICAgIGxldCBjb2x1bW46IENvbHVtbk1ldGFkYXRhO1xuICAgICAgbGV0IG9mZnNldDtcblxuICAgICAgdHJ5IHtcbiAgICAgICAgKHsgb2Zmc2V0LCB2YWx1ZTogY29sdW1uIH0gPSByZWFkQ29sdW1uKHBhcnNlci5idWZmZXIsIHBhcnNlci5wb3NpdGlvbiwgcGFyc2VyLm9wdGlvbnMsIGkpKTtcbiAgICAgIH0gY2F0Y2ggKGVycjogYW55KSB7XG4gICAgICAgIGlmIChlcnIgaW5zdGFuY2VvZiBOb3RFbm91Z2hEYXRhRXJyb3IpIHtcbiAgICAgICAgICBhd2FpdCBwYXJzZXIud2FpdEZvckNodW5rKCk7XG4gICAgICAgICAgY29udGludWU7XG4gICAgICAgIH1cblxuICAgICAgICB0aHJvdyBlcnI7XG4gICAgICB9XG5cbiAgICAgIHBhcnNlci5wb3NpdGlvbiA9IG9mZnNldDtcbiAgICAgIGNvbHVtbnMucHVzaChjb2x1bW4pO1xuXG4gICAgICBicmVhaztcbiAgICB9XG4gIH1cblxuICByZXR1cm4gbmV3IENvbE1ldGFkYXRhVG9rZW4oY29sdW1ucyk7XG59XG5cbmV4cG9ydCBkZWZhdWx0IGNvbE1ldGFkYXRhUGFyc2VyO1xubW9kdWxlLmV4cG9ydHMgPSBjb2xNZXRhZGF0YVBhcnNlcjtcbiJdLCJtYXBwaW5ncyI6Ijs7Ozs7O0FBQUEsSUFBQUEsZUFBQSxHQUFBQyxPQUFBO0FBR0EsSUFBQUMsTUFBQSxHQUFBRCxPQUFBO0FBQ0EsSUFBQUUsUUFBQSxHQUFBRixPQUFBO0FBV0EsU0FBU0csYUFBYUEsQ0FBQ0MsR0FBVyxF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
|
|
@@ -1,6 +0,0 @@
|
|
|
1
|
-
import { type ParserOptions } from './stream-parser';
|
|
2
|
-
import { DoneToken, DoneInProcToken, DoneProcToken } from './token';
|
|
3
|
-
import { Result } from './helpers';
|
|
4
|
-
export declare function doneParser(buf: Buffer, offset: number, options: ParserOptions): Result<DoneToken>;
|
|
5
|
-
export declare function doneInProcParser(buf: Buffer, offset: number, options: ParserOptions): Result<DoneInProcToken>;
|
|
6
|
-
export declare function doneProcParser(buf: Buffer, offset: number, options: ParserOptions): Result<DoneProcToken>;
|
|
@@ -1,76 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
|
|
3
|
-
Object.defineProperty(exports, "__esModule", {
|
|
4
|
-
value: true
|
|
5
|
-
});
|
|
6
|
-
exports.doneInProcParser = doneInProcParser;
|
|
7
|
-
exports.doneParser = doneParser;
|
|
8
|
-
exports.doneProcParser = doneProcParser;
|
|
9
|
-
var _token = require("./token");
|
|
10
|
-
var _helpers = require("./helpers");
|
|
11
|
-
// s2.2.7.5/6/7
|
|
12
|
-
|
|
13
|
-
const STATUS = {
|
|
14
|
-
MORE: 0x0001,
|
|
15
|
-
ERROR: 0x0002,
|
|
16
|
-
// This bit is not yet in use by SQL Server, so is not exposed in the returned token
|
|
17
|
-
INXACT: 0x0004,
|
|
18
|
-
COUNT: 0x0010,
|
|
19
|
-
ATTN: 0x0020,
|
|
20
|
-
SRVERROR: 0x0100
|
|
21
|
-
};
|
|
22
|
-
function readToken(buf, offset, options) {
|
|
23
|
-
let status;
|
|
24
|
-
({
|
|
25
|
-
offset,
|
|
26
|
-
value: status
|
|
27
|
-
} = (0, _helpers.readUInt16LE)(buf, offset));
|
|
28
|
-
const more = !!(status & STATUS.MORE);
|
|
29
|
-
const sqlError = !!(status & STATUS.ERROR);
|
|
30
|
-
const rowCountValid = !!(status & STATUS.COUNT);
|
|
31
|
-
const attention = !!(status & STATUS.ATTN);
|
|
32
|
-
const serverError = !!(status & STATUS.SRVERROR);
|
|
33
|
-
let curCmd;
|
|
34
|
-
({
|
|
35
|
-
offset,
|
|
36
|
-
value: curCmd
|
|
37
|
-
} = (0, _helpers.readUInt16LE)(buf, offset));
|
|
38
|
-
let rowCount;
|
|
39
|
-
({
|
|
40
|
-
offset,
|
|
41
|
-
value: rowCount
|
|
42
|
-
} = (options.tdsVersion < '7_2' ? _helpers.readUInt32LE : _helpers.readBigUInt64LE)(buf, offset));
|
|
43
|
-
return new _helpers.Result({
|
|
44
|
-
more: more,
|
|
45
|
-
sqlError: sqlError,
|
|
46
|
-
attention: attention,
|
|
47
|
-
serverError: serverError,
|
|
48
|
-
rowCount: rowCountValid ? Number(rowCount) : undefined,
|
|
49
|
-
curCmd: curCmd
|
|
50
|
-
}, offset);
|
|
51
|
-
}
|
|
52
|
-
function doneParser(buf, offset, options) {
|
|
53
|
-
let value;
|
|
54
|
-
({
|
|
55
|
-
offset,
|
|
56
|
-
value
|
|
57
|
-
} = readToken(buf, offset, options));
|
|
58
|
-
return new _helpers.Result(new _token.DoneToken(value), offset);
|
|
59
|
-
}
|
|
60
|
-
function doneInProcParser(buf, offset, options) {
|
|
61
|
-
let value;
|
|
62
|
-
({
|
|
63
|
-
offset,
|
|
64
|
-
value
|
|
65
|
-
} = readToken(buf, offset, options));
|
|
66
|
-
return new _helpers.Result(new _token.DoneInProcToken(value), offset);
|
|
67
|
-
}
|
|
68
|
-
function doneProcParser(buf, offset, options) {
|
|
69
|
-
let value;
|
|
70
|
-
({
|
|
71
|
-
offset,
|
|
72
|
-
value
|
|
73
|
-
} = readToken(buf, offset, options));
|
|
74
|
-
return new _helpers.Result(new _token.DoneProcToken(value), offset);
|
|
75
|
-
}
|
|
76
|
-
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJuYW1lcyI6WyJfdG9rZW4iLCJyZXF1aXJlIiwiX2hlbHBlcnMiLCJTVEFUVVMiLCJNT1JFIiwiRVJST1IiLCJJTlhBQ1QiLCJDT1VOVCIsIkFUVE4iLCJTUlZFUlJPUiIsInJlYWRUb2tlbiIsImJ1ZiIsIm9mZnNldCIsIm9wdGlvbnMiLCJzdGF0dXMiLCJ2YWx1ZSIsInJlYWRVSW50MTZMRSIsIm1vcmUiLCJzcWxFcnJvciIsInJvd0NvdW50VmFsaWQiLCJhdHRlbnRpb24iLCJzZXJ2ZXJFcnJvciIsImN1ckNtZCIsInJvd0NvdW50IiwidGRzVmVyc2lvbiIsInJlYWRVSW50MzJMRSIsInJlYWRCaWdVSW50NjRMRSIsIlJlc3VsdCIsIk51bWJlciIsInVuZGVmaW5lZCIsImRvbmVQYXJzZXIiLCJEb25lVG9rZW4iLCJkb25lSW5Qcm9jUGFyc2VyIiwiRG9uZUluUHJvY1Rva2VuIiwiZG9uZVByb2NQYXJzZXIiLCJEb25lUHJvY1Rva2VuIl0sInNvdXJjZXMiOlsiLi4vLi4vc3JjL3Rva2VuL2RvbmUtdG9rZW4tcGFyc2VyLnRzIl0sInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IHR5cGUgUGFyc2VyT3B0aW9ucyB9IGZyb20gJy4vc3RyZWFtLXBhcnNlcic7XG5pbXBvcnQgeyBEb25lVG9rZW4sIERvbmVJblByb2NUb2tlbiwgRG9uZVByb2NUb2tlbiB9IGZyb20gJy4vdG9rZW4nO1xuaW1wb3J0IHsgUmVzdWx0LCByZWFkQmlnVUludDY0TEUsIHJlYWRVSW50MTZMRSwgcmVhZFVJbnQzMkxFIH0gZnJvbSAnLi9oZWxwZXJzJztcblxuLy8gczIuMi43LjUvNi83XG5cbmNvbnN0IFNUQVRVUyA9IHtcbiAgTU9SRTogMHgwMDAxLFxuICBFUlJPUjogMHgwMDAyLFxuICAvLyBUaGlzIGJpdCBpcyBub3QgeWV0IGluIHVzZSBieSBTUUwgU2VydmVyLCBzbyBpcyBub3QgZXhwb3NlZCBpbiB0aGUgcmV0dXJuZWQgdG9rZW5cbiAgSU5YQUNUOiAweDAwMDQsXG4gIENPVU5UOiAweDAwMTAsXG4gIEFUVE46IDB4MDAyMCxcbiAgU1JWRVJST1I6IDB4MDEwMFxufTtcblxuaW50ZXJmYWNlIFRva2VuRGF0YSB7XG4gIG1vcmU6IGJvb2xlYW47XG4gIHNxbEVycm9yOiBib29sZWFuO1xuICBhdHRlbnRpb246IGJvb2xlYW47XG4gIHNlcnZlckVycm9yOiBib29sZWFuO1xuICByb3dDb3VudDogbnVtYmVyIHwgdW5kZWZpbmVkO1xuICBjdXJDbWQ6IG51bWJlcjtcbn1cblxuZnVuY3Rpb24gcmVhZFRva2VuKGJ1ZjogQnVmZmVyLCBvZmZzZXQ6IG51bWJlciwgb3B0aW9uczogUGFyc2VyT3B0aW9ucyk6IFJlc3VsdDxUb2tlbkRhdGE+IHtcbiAgbGV0IHN0YXR1cztcbiAgKHsgb2Zmc2V0LCB2YWx1ZTogc3RhdHVzIH0gPSByZWFkVUludDE2TEUoYnVmLCBvZmZzZXQpKTtcblxuICBjb25zdCBtb3JlID0gISEoc3RhdHVzICYgU1RBVFVTLk1PUkUpO1xuICBjb25zdCBzcWxFcnJvciA9ICEhKHN0YXR1cyAmIFNUQVRVUy5FUlJPUik7XG4gIGNvbnN0IHJvd0NvdW50VmFsaWQgPSAhIShzdGF0dXMgJiBTVEFUVVMuQ09VTlQpO1xuICBjb25zdCBhdHRlbnRpb24gPSAhIShzdGF0dXMgJiBTVEFUVVMuQVRUTik7XG4gIGNvbnN0IHNlcnZlckVycm9yID0gISEoc3RhdHVzICYgU1RBVFVTLlNSVkVSUk9SKTtcblxuICBsZXQgY3VyQ21kO1xuICAoeyBvZmZzZXQsIHZhbHVlOiBjdXJDbWQgfSA9IHJlYWRVSW50MTZMRShidWYsIG9mZnNldCkpO1xuXG4gIGxldCByb3dDb3VudDtcbiAgKHsgb2Zmc2V0LCB2YWx1ZTogcm93Q291bnQgfSA9IChvcHRpb25zLnRkc1ZlcnNpb24gPCAnN18yJyA/IHJlYWRVSW50MzJMRSA6IHJlYWRCaWdVSW50NjRMRSkoYnVmLCBvZmZzZXQpKTtcblxuICByZXR1cm4gbmV3IFJlc3VsdCh7XG4gICAgbW9yZTogbW9yZSxcbiAgICBzcWxFcnJvcjogc3FsRXJyb3IsXG4gICAgYXR0ZW50aW9uOiBhdHRlbnRpb24sXG4gICAgc2VydmVyRXJyb3I6IHNlcnZlckVycm9yLFxuICAgIHJvd0NvdW50OiByb3dDb3VudFZhbGlkID8gTnVtYmVyKHJvd0NvdW50KSA6IHVuZGVmaW5lZCxcbiAgICBjdXJDbWQ6IGN1ckNtZFxuICB9LCBvZmZzZXQpO1xufVxuXG5leHBvcnQgZnVuY3Rpb24gZG9uZVBhcnNlcihidWY6IEJ1ZmZlciwgb2Zmc2V0OiBudW1iZXIsIG9wdGlvbnM6IFBhcnNlck9wdGlvbnMpOiBSZXN1bHQ8RG9uZVRva2VuPiB7XG4gIGxldCB2YWx1ZTtcbiAgKHsgb2Zmc2V0LCB2YWx1ZSB9ID0gcmVhZFRva2VuKGJ1Ziwgb2Zmc2V0LCBvcHRpb25zKSk7XG4gIHJldHVybiBuZXcgUmVzdWx0KG5ldyBEb25lVG9rZW4odmFsdWUpLCBvZmZzZXQpO1xufVxuXG5leHBvcnQgZnVuY3Rpb24gZG9uZUluUHJvY1BhcnNlcihidWY6IEJ1ZmZlciwgb2Zmc2V0OiBudW1iZXIsIG9wdGlvbnM6IFBhcnNlck9wdGlvbnMpOiBSZXN1bHQ8RG9uZUluUHJvY1Rva2VuPiB7XG4gIGxldCB2YWx1ZTtcbiAgKHsgb2Zmc2V0LCB2YWx1ZSB9ID0gcmVhZFRva2VuKGJ1Ziwgb2Zmc2V0LCBvcHRpb25zKSk7XG4gIHJldHVybiBuZXcgUmVzdWx0KG5ldyBEb25lSW5Qcm9jVG9rZW4odmFsdWUpLCBvZmZzZXQpO1xufVxuXG5leHBvcnQgZnVuY3Rpb24gZG9uZVByb2NQYXJzZXIoYnVmOiBCdWZmZXIsIG9mZnNldDogbnVtYmVyLCBvcHRpb25zOiBQYXJzZXJPcHRpb25zKTogUmVzdWx0PERvbmVQcm9jVG9rZW4+IHtcbiAgbGV0IHZhbHVlO1xuICAoeyBvZmZzZXQsIHZhbHVlIH0gPSByZWFkVG9rZW4oYnVmLCBvZmZzZXQsIG9wdGlvbnMpKTtcbiAgcmV0dXJuIG5ldyBSZXN1bHQobmV3IERvbmVQcm9jVG9rZW4odmFsdWUpLCBvZmZzZXQpO1xufVxuIl0sIm1hcHBpbmdzIjoi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
|
|
@@ -1,5 +0,0 @@
|
|
|
1
|
-
import { type ParserOptions } from './stream-parser';
|
|
2
|
-
import { type EnvChangeToken } from './token';
|
|
3
|
-
import { Result } from './helpers';
|
|
4
|
-
declare function envChangeParser(buf: Buffer, offset: number, _options: ParserOptions): Result<EnvChangeToken | undefined>;
|
|
5
|
-
export default envChangeParser;
|
|
@@ -1,190 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
|
|
3
|
-
Object.defineProperty(exports, "__esModule", {
|
|
4
|
-
value: true
|
|
5
|
-
});
|
|
6
|
-
exports.default = void 0;
|
|
7
|
-
var _collation = require("../collation");
|
|
8
|
-
var _token = require("./token");
|
|
9
|
-
var _helpers = require("./helpers");
|
|
10
|
-
const types = {
|
|
11
|
-
1: {
|
|
12
|
-
name: 'DATABASE',
|
|
13
|
-
event: 'databaseChange'
|
|
14
|
-
},
|
|
15
|
-
2: {
|
|
16
|
-
name: 'LANGUAGE',
|
|
17
|
-
event: 'languageChange'
|
|
18
|
-
},
|
|
19
|
-
3: {
|
|
20
|
-
name: 'CHARSET',
|
|
21
|
-
event: 'charsetChange'
|
|
22
|
-
},
|
|
23
|
-
4: {
|
|
24
|
-
name: 'PACKET_SIZE',
|
|
25
|
-
event: 'packetSizeChange'
|
|
26
|
-
},
|
|
27
|
-
7: {
|
|
28
|
-
name: 'SQL_COLLATION',
|
|
29
|
-
event: 'sqlCollationChange'
|
|
30
|
-
},
|
|
31
|
-
8: {
|
|
32
|
-
name: 'BEGIN_TXN',
|
|
33
|
-
event: 'beginTransaction'
|
|
34
|
-
},
|
|
35
|
-
9: {
|
|
36
|
-
name: 'COMMIT_TXN',
|
|
37
|
-
event: 'commitTransaction'
|
|
38
|
-
},
|
|
39
|
-
10: {
|
|
40
|
-
name: 'ROLLBACK_TXN',
|
|
41
|
-
event: 'rollbackTransaction'
|
|
42
|
-
},
|
|
43
|
-
13: {
|
|
44
|
-
name: 'DATABASE_MIRRORING_PARTNER',
|
|
45
|
-
event: 'partnerNode'
|
|
46
|
-
},
|
|
47
|
-
17: {
|
|
48
|
-
name: 'TXN_ENDED'
|
|
49
|
-
},
|
|
50
|
-
18: {
|
|
51
|
-
name: 'RESET_CONNECTION',
|
|
52
|
-
event: 'resetConnection'
|
|
53
|
-
},
|
|
54
|
-
20: {
|
|
55
|
-
name: 'ROUTING_CHANGE',
|
|
56
|
-
event: 'routingChange'
|
|
57
|
-
}
|
|
58
|
-
};
|
|
59
|
-
function _readNewAndOldValue(buf, offset, length, type) {
|
|
60
|
-
switch (type.name) {
|
|
61
|
-
case 'DATABASE':
|
|
62
|
-
case 'LANGUAGE':
|
|
63
|
-
case 'CHARSET':
|
|
64
|
-
case 'PACKET_SIZE':
|
|
65
|
-
case 'DATABASE_MIRRORING_PARTNER':
|
|
66
|
-
{
|
|
67
|
-
let newValue;
|
|
68
|
-
({
|
|
69
|
-
offset,
|
|
70
|
-
value: newValue
|
|
71
|
-
} = (0, _helpers.readBVarChar)(buf, offset));
|
|
72
|
-
let oldValue;
|
|
73
|
-
({
|
|
74
|
-
offset,
|
|
75
|
-
value: oldValue
|
|
76
|
-
} = (0, _helpers.readBVarChar)(buf, offset));
|
|
77
|
-
switch (type.name) {
|
|
78
|
-
case 'PACKET_SIZE':
|
|
79
|
-
return new _helpers.Result(new _token.PacketSizeEnvChangeToken(parseInt(newValue), parseInt(oldValue)), offset);
|
|
80
|
-
case 'DATABASE':
|
|
81
|
-
return new _helpers.Result(new _token.DatabaseEnvChangeToken(newValue, oldValue), offset);
|
|
82
|
-
case 'LANGUAGE':
|
|
83
|
-
return new _helpers.Result(new _token.LanguageEnvChangeToken(newValue, oldValue), offset);
|
|
84
|
-
case 'CHARSET':
|
|
85
|
-
return new _helpers.Result(new _token.CharsetEnvChangeToken(newValue, oldValue), offset);
|
|
86
|
-
case 'DATABASE_MIRRORING_PARTNER':
|
|
87
|
-
return new _helpers.Result(new _token.DatabaseMirroringPartnerEnvChangeToken(newValue, oldValue), offset);
|
|
88
|
-
}
|
|
89
|
-
throw new Error('unreachable');
|
|
90
|
-
}
|
|
91
|
-
case 'SQL_COLLATION':
|
|
92
|
-
case 'BEGIN_TXN':
|
|
93
|
-
case 'COMMIT_TXN':
|
|
94
|
-
case 'ROLLBACK_TXN':
|
|
95
|
-
case 'RESET_CONNECTION':
|
|
96
|
-
{
|
|
97
|
-
let newValue;
|
|
98
|
-
({
|
|
99
|
-
offset,
|
|
100
|
-
value: newValue
|
|
101
|
-
} = (0, _helpers.readBVarByte)(buf, offset));
|
|
102
|
-
let oldValue;
|
|
103
|
-
({
|
|
104
|
-
offset,
|
|
105
|
-
value: oldValue
|
|
106
|
-
} = (0, _helpers.readBVarByte)(buf, offset));
|
|
107
|
-
switch (type.name) {
|
|
108
|
-
case 'SQL_COLLATION':
|
|
109
|
-
{
|
|
110
|
-
const newCollation = newValue.length ? _collation.Collation.fromBuffer(newValue) : undefined;
|
|
111
|
-
const oldCollation = oldValue.length ? _collation.Collation.fromBuffer(oldValue) : undefined;
|
|
112
|
-
return new _helpers.Result(new _token.CollationChangeToken(newCollation, oldCollation), offset);
|
|
113
|
-
}
|
|
114
|
-
case 'BEGIN_TXN':
|
|
115
|
-
return new _helpers.Result(new _token.BeginTransactionEnvChangeToken(newValue, oldValue), offset);
|
|
116
|
-
case 'COMMIT_TXN':
|
|
117
|
-
return new _helpers.Result(new _token.CommitTransactionEnvChangeToken(newValue, oldValue), offset);
|
|
118
|
-
case 'ROLLBACK_TXN':
|
|
119
|
-
return new _helpers.Result(new _token.RollbackTransactionEnvChangeToken(newValue, oldValue), offset);
|
|
120
|
-
case 'RESET_CONNECTION':
|
|
121
|
-
return new _helpers.Result(new _token.ResetConnectionEnvChangeToken(newValue, oldValue), offset);
|
|
122
|
-
}
|
|
123
|
-
throw new Error('unreachable');
|
|
124
|
-
}
|
|
125
|
-
case 'ROUTING_CHANGE':
|
|
126
|
-
{
|
|
127
|
-
let routePacket;
|
|
128
|
-
({
|
|
129
|
-
offset,
|
|
130
|
-
value: routePacket
|
|
131
|
-
} = (0, _helpers.readUsVarByte)(buf, offset));
|
|
132
|
-
let oldValue;
|
|
133
|
-
({
|
|
134
|
-
offset,
|
|
135
|
-
value: oldValue
|
|
136
|
-
} = (0, _helpers.readUsVarByte)(buf, offset));
|
|
137
|
-
|
|
138
|
-
// Routing Change:
|
|
139
|
-
// Byte 1: Protocol (must be 0)
|
|
140
|
-
// Bytes 2-3 (USHORT): Port number
|
|
141
|
-
// Bytes 4-5 (USHORT): Length of server data in unicode (2byte chars)
|
|
142
|
-
// Bytes 6-*: Server name in unicode characters
|
|
143
|
-
const protocol = routePacket.readUInt8(0);
|
|
144
|
-
if (protocol !== 0) {
|
|
145
|
-
throw new Error('Unknown protocol byte in routing change event');
|
|
146
|
-
}
|
|
147
|
-
const port = routePacket.readUInt16LE(1);
|
|
148
|
-
const serverLen = routePacket.readUInt16LE(3);
|
|
149
|
-
// 2 bytes per char, starting at offset 5
|
|
150
|
-
const server = routePacket.toString('ucs2', 5, 5 + serverLen * 2);
|
|
151
|
-
const newValue = {
|
|
152
|
-
protocol: protocol,
|
|
153
|
-
port: port,
|
|
154
|
-
server: server
|
|
155
|
-
};
|
|
156
|
-
return new _helpers.Result(new _token.RoutingEnvChangeToken(newValue, oldValue), offset);
|
|
157
|
-
}
|
|
158
|
-
default:
|
|
159
|
-
{
|
|
160
|
-
console.error('Tedious > Unsupported ENVCHANGE type ' + type.name);
|
|
161
|
-
|
|
162
|
-
// skip unknown bytes
|
|
163
|
-
return new _helpers.Result(undefined, offset + length - 1);
|
|
164
|
-
}
|
|
165
|
-
}
|
|
166
|
-
}
|
|
167
|
-
function envChangeParser(buf, offset, _options) {
|
|
168
|
-
let tokenLength;
|
|
169
|
-
({
|
|
170
|
-
offset,
|
|
171
|
-
value: tokenLength
|
|
172
|
-
} = (0, _helpers.readUInt16LE)(buf, offset));
|
|
173
|
-
if (buf.length < offset + tokenLength) {
|
|
174
|
-
throw new _helpers.NotEnoughDataError(offset + tokenLength);
|
|
175
|
-
}
|
|
176
|
-
let typeNumber;
|
|
177
|
-
({
|
|
178
|
-
offset,
|
|
179
|
-
value: typeNumber
|
|
180
|
-
} = (0, _helpers.readUInt8)(buf, offset));
|
|
181
|
-
const type = types[typeNumber];
|
|
182
|
-
if (!type) {
|
|
183
|
-
console.error('Tedious > Unsupported ENVCHANGE type ' + typeNumber);
|
|
184
|
-
return new _helpers.Result(undefined, offset + tokenLength - 1);
|
|
185
|
-
}
|
|
186
|
-
return _readNewAndOldValue(buf, offset, tokenLength, type);
|
|
187
|
-
}
|
|
188
|
-
var _default = exports.default = envChangeParser;
|
|
189
|
-
module.exports = envChangeParser;
|
|
190
|
-
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJuYW1lcyI6WyJfY29sbGF0aW9uIiwicmVxdWlyZSIsIl90b2tlbiIsIl9oZWxwZXJzIiwidHlwZXMiLCJuYW1lIiwiZXZlbnQiLCJfcmVhZE5ld0FuZE9sZFZhbHVlIiwiYnVmIiwib2Zmc2V0IiwibGVuZ3RoIiwidHlwZSIsIm5ld1ZhbHVlIiwidmFsdWUiLCJyZWFkQlZhckNoYXIiLCJvbGRWYWx1ZSIsIlJlc3VsdCIsIlBhY2tldFNpemVFbnZDaGFuZ2VUb2tlbiIsInBhcnNlSW50IiwiRGF0YWJhc2VFbnZDaGFuZ2VUb2tlbiIsIkxhbmd1YWdlRW52Q2hhbmdlVG9rZW4iLCJDaGFyc2V0RW52Q2hhbmdlVG9rZW4iLCJEYXRhYmFzZU1pcnJvcmluZ1BhcnRuZXJFbnZDaGFuZ2VUb2tlbiIsIkVycm9yIiwicmVhZEJWYXJCeXRlIiwibmV3Q29sbGF0aW9uIiwiQ29sbGF0aW9uIiwiZnJvbUJ1ZmZlciIsInVuZGVmaW5lZCIsIm9sZENvbGxhdGlvbiIsIkNvbGxhdGlvbkNoYW5nZVRva2VuIiwiQmVnaW5UcmFuc2FjdGlvbkVudkNoYW5nZVRva2VuIiwiQ29tbWl0VHJhbnNhY3Rpb25FbnZDaGFuZ2VUb2tlbiIsIlJvbGxiYWNrVHJhbnNhY3Rpb25FbnZDaGFuZ2VUb2tlbiIsIlJlc2V0Q29ubmVjdGlvbkVudkNoYW5nZVRva2VuIiwicm91dGVQYWNrZXQiLCJyZWFkVXNWYXJCeXRlIiwicHJvdG9jb2wiLCJyZWFkVUludDgiLCJwb3J0IiwicmVhZFVJbnQxNkxFIiwic2VydmVyTGVuIiwic2VydmVyIiwidG9TdHJpbmciLCJSb3V0aW5nRW52Q2hhbmdlVG9rZW4iLCJjb25zb2xlIiwiZXJyb3IiLCJlbnZDaGFuZ2VQYXJzZXIiLCJfb3B0aW9ucyIsInRva2VuTGVuZ3RoIiwiTm90RW5vdWdoRGF0YUVycm9yIiwidHlwZU51bWJlciIsIl9kZWZhdWx0IiwiZXhwb3J0cyIsImRlZmF1bHQiLCJtb2R1bGUiXSwic291cmNlcyI6WyIuLi8uLi9zcmMvdG9rZW4vZW52LWNoYW5nZS10b2tlbi1wYXJzZXIudHMiXSwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgdHlwZSBQYXJzZXJPcHRpb25zIH0gZnJvbSAnLi9zdHJlYW0tcGFyc2VyJztcbmltcG9ydCB7IENvbGxhdGlvbiB9IGZyb20gJy4uL2NvbGxhdGlvbic7XG5cbmltcG9ydCB7XG4gIERhdGFiYXNlRW52Q2hhbmdlVG9rZW4sXG4gIExhbmd1YWdlRW52Q2hhbmdlVG9rZW4sXG4gIENoYXJzZXRFbnZDaGFuZ2VUb2tlbixcbiAgUGFja2V0U2l6ZUVudkNoYW5nZVRva2VuLFxuICBCZWdpblRyYW5zYWN0aW9uRW52Q2hhbmdlVG9rZW4sXG4gIENvbW1pdFRyYW5zYWN0aW9uRW52Q2hhbmdlVG9rZW4sXG4gIFJvbGxiYWNrVHJhbnNhY3Rpb25FbnZDaGFuZ2VUb2tlbixcbiAgRGF0YWJhc2VNaXJyb3JpbmdQYXJ0bmVyRW52Q2hhbmdlVG9rZW4sXG4gIFJlc2V0Q29ubmVjdGlvbkVudkNoYW5nZVRva2VuLFxuICBSb3V0aW5nRW52Q2hhbmdlVG9rZW4sXG4gIENvbGxhdGlvbkNoYW5nZVRva2VuLFxuICB0eXBlIEVudkNoYW5nZVRva2VuXG59IGZyb20gJy4vdG9rZW4nO1xuXG5pbXBvcnQgeyBOb3RFbm91Z2hEYXRhRXJyb3IsIHJlYWRCVmFyQnl0ZSwgcmVhZEJWYXJDaGFyLCByZWFkVUludDE2TEUsIHJlYWRVSW50OCwgcmVhZFVzVmFyQnl0ZSwgUmVzdWx0IH0gZnJvbSAnLi9oZWxwZXJzJztcblxuY29uc3QgdHlwZXM6IHsgW2tleTogbnVtYmVyXTogeyBuYW1lOiBzdHJpbmcsIGV2ZW50Pzogc3RyaW5nIH19ID0ge1xuICAxOiB7XG4gICAgbmFtZTogJ0RBVEFCQVNFJyxcbiAgICBldmVudDogJ2RhdGFiYXNlQ2hhbmdlJ1xuICB9LFxuICAyOiB7XG4gICAgbmFtZTogJ0xBTkdVQUdFJyxcbiAgICBldmVudDogJ2xhbmd1YWdlQ2hhbmdlJ1xuICB9LFxuICAzOiB7XG4gICAgbmFtZTogJ0NIQVJTRVQnLFxuICAgIGV2ZW50OiAnY2hhcnNldENoYW5nZSdcbiAgfSxcbiAgNDoge1xuICAgIG5hbWU6ICdQQUNLRVRfU0laRScsXG4gICAgZXZlbnQ6ICdwYWNrZXRTaXplQ2hhbmdlJ1xuICB9LFxuICA3OiB7XG4gICAgbmFtZTogJ1NRTF9DT0xMQVRJT04nLFxuICAgIGV2ZW50OiAnc3FsQ29sbGF0aW9uQ2hhbmdlJ1xuICB9LFxuICA4OiB7XG4gICAgbmFtZTogJ0JFR0lOX1RYTicsXG4gICAgZXZlbnQ6ICdiZWdpblRyYW5zYWN0aW9uJ1xuICB9LFxuICA5OiB7XG4gICAgbmFtZTogJ0NPTU1JVF9UWE4nLFxuICAgIGV2ZW50OiAnY29tbWl0VHJhbnNhY3Rpb24nXG4gIH0sXG4gIDEwOiB7XG4gICAgbmFtZTogJ1JPTExCQUNLX1RYTicsXG4gICAgZXZlbnQ6ICdyb2xsYmFja1RyYW5zYWN0aW9uJ1xuICB9LFxuICAxMzoge1xuICAgIG5hbWU6ICdEQVRBQkFTRV9NSVJST1JJTkdfUEFSVE5FUicsXG4gICAgZXZlbnQ6ICdwYXJ0bmVyTm9kZSdcbiAgfSxcbiAgMTc6IHtcbiAgICBuYW1lOiAnVFhOX0VOREVEJ1xuICB9LFxuICAxODoge1xuICAgIG5hbWU6ICdSRVNFVF9DT05ORUNUSU9OJyxcbiAgICBldmVudDogJ3Jlc2V0Q29ubmVjdGlvbidcbiAgfSxcbiAgMjA6IHtcbiAgICBuYW1lOiAnUk9VVElOR19DSEFOR0UnLFxuICAgIGV2ZW50OiAncm91dGluZ0NoYW5nZSdcbiAgfVxufTtcblxuZnVuY3Rpb24gX3JlYWROZXdBbmRPbGRWYWx1ZShidWY6IEJ1ZmZlciwgb2Zmc2V0OiBudW1iZXIsIGxlbmd0aDogbnVtYmVyLCB0eXBlOiB7IG5hbWU6IHN0cmluZywgZXZlbnQ/OiBzdHJpbmcgfSk6IFJlc3VsdDxFbnZDaGFuZ2VUb2tlbiB8IHVuZGVmaW5lZD4ge1xuICBzd2l0Y2ggKHR5cGUubmFtZSkge1xuICAgIGNhc2UgJ0RBVEFCQVNFJzpcbiAgICBjYXNlICdMQU5HVUFHRSc6XG4gICAgY2FzZSAnQ0hBUlNFVCc6XG4gICAgY2FzZSAnUEFDS0VUX1NJWkUnOlxuICAgIGNhc2UgJ0RBVEFCQVNFX01JUlJPUklOR19QQVJUTkVSJzoge1xuICAgICAgbGV0IG5ld1ZhbHVlO1xuICAgICAgKHsgb2Zmc2V0LCB2YWx1ZTogbmV3VmFsdWUgfSA9IHJlYWRCVmFyQ2hhcihidWYsIG9mZnNldCkpO1xuXG4gICAgICBsZXQgb2xkVmFsdWU7XG4gICAgICAoeyBvZmZzZXQsIHZhbHVlOiBvbGRWYWx1ZSB9ID0gcmVhZEJWYXJDaGFyKGJ1Ziwgb2Zmc2V0KSk7XG5cbiAgICAgIHN3aXRjaCAodHlwZS5uYW1lKSB7XG4gICAgICAgIGNhc2UgJ1BBQ0tFVF9TSVpFJzpcbiAgICAgICAgICByZXR1cm4gbmV3IFJlc3VsdChuZXcgUGFja2V0U2l6ZUVudkNoYW5nZVRva2VuKHBhcnNlSW50KG5ld1ZhbHVlKSwgcGFyc2VJbnQob2xkVmFsdWUpKSwgb2Zmc2V0KTtcblxuICAgICAgICBjYXNlICdEQVRBQkFTRSc6XG4gICAgICAgICAgcmV0dXJuIG5ldyBSZXN1bHQobmV3IERhdGFiYXNlRW52Q2hhbmdlVG9rZW4obmV3VmFsdWUsIG9sZFZhbHVlKSwgb2Zmc2V0KTtcblxuICAgICAgICBjYXNlICdMQU5HVUFHRSc6XG4gICAgICAgICAgcmV0dXJuIG5ldyBSZXN1bHQobmV3IExhbmd1YWdlRW52Q2hhbmdlVG9rZW4obmV3VmFsdWUsIG9sZFZhbHVlKSwgb2Zmc2V0KTtcblxuICAgICAgICBjYXNlICdDSEFSU0VUJzpcbiAgICAgICAgICByZXR1cm4gbmV3IFJlc3VsdChuZXcgQ2hhcnNldEVudkNoYW5nZVRva2VuKG5ld1ZhbHVlLCBvbGRWYWx1ZSksIG9mZnNldCk7XG5cbiAgICAgICAgY2FzZSAnREFUQUJBU0VfTUlSUk9SSU5HX1BBUlRORVInOlxuICAgICAgICAgIHJldHVybiBuZXcgUmVzdWx0KG5ldyBEYXRhYmFzZU1pcnJvcmluZ1BhcnRuZXJFbnZDaGFuZ2VUb2tlbihuZXdWYWx1ZSwgb2xkVmFsdWUpLCBvZmZzZXQpO1xuICAgICAgfVxuXG4gICAgICB0aHJvdyBuZXcgRXJyb3IoJ3VucmVhY2hhYmxlJyk7XG4gICAgfVxuXG4gICAgY2FzZSAnU1FMX0NPTExBVElPTic6XG4gICAgY2FzZSAnQkVHSU5fVFhOJzpcbiAgICBjYXNlICdDT01NSVRfVFhOJzpcbiAgICBjYXNlICdST0xMQkFDS19UWE4nOlxuICAgIGNhc2UgJ1JFU0VUX0NPTk5FQ1RJT04nOiB7XG4gICAgICBsZXQgbmV3VmFsdWU7XG4gICAgICAoeyBvZmZzZXQsIHZhbHVlOiBuZXdWYWx1ZSB9ID0gcmVhZEJWYXJCeXRlKGJ1Ziwgb2Zmc2V0KSk7XG5cbiAgICAgIGxldCBvbGRWYWx1ZTtcbiAgICAgICh7IG9mZnNldCwgdmFsdWU6IG9sZFZhbHVlIH0gPSByZWFkQlZhckJ5dGUoYnVmLCBvZmZzZXQpKTtcblxuICAgICAgc3dpdGNoICh0eXBlLm5hbWUpIHtcbiAgICAgICAgY2FzZSAnU1FMX0NPTExBVElPTic6IHtcbiAgICAgICAgICBjb25zdCBuZXdDb2xsYXRpb24gPSBuZXdWYWx1ZS5sZW5ndGggPyBDb2xsYXRpb24uZnJvbUJ1ZmZlcihuZXdWYWx1ZSkgOiB1bmRlZmluZWQ7XG4gICAgICAgICAgY29uc3Qgb2xkQ29sbGF0aW9uID0gb2xkVmFsdWUubGVuZ3RoID8gQ29sbGF0aW9uLmZyb21CdWZmZXIob2xkVmFsdWUpIDogdW5kZWZpbmVkO1xuXG4gICAgICAgICAgcmV0dXJuIG5ldyBSZXN1bHQobmV3IENvbGxhdGlvbkNoYW5nZVRva2VuKG5ld0NvbGxhdGlvbiwgb2xkQ29sbGF0aW9uKSwgb2Zmc2V0KTtcbiAgICAgICAgfVxuXG4gICAgICAgIGNhc2UgJ0JFR0lOX1RYTic6XG4gICAgICAgICAgcmV0dXJuIG5ldyBSZXN1bHQobmV3IEJlZ2luVHJhbnNhY3Rpb25FbnZDaGFuZ2VUb2tlbihuZXdWYWx1ZSwgb2xkVmFsdWUpLCBvZmZzZXQpO1xuXG4gICAgICAgIGNhc2UgJ0NPTU1JVF9UWE4nOlxuICAgICAgICAgIHJldHVybiBuZXcgUmVzdWx0KG5ldyBDb21taXRUcmFuc2FjdGlvbkVudkNoYW5nZVRva2VuKG5ld1ZhbHVlLCBvbGRWYWx1ZSksIG9mZnNldCk7XG5cbiAgICAgICAgY2FzZSAnUk9MTEJBQ0tfVFhOJzpcbiAgICAgICAgICByZXR1cm4gbmV3IFJlc3VsdChuZXcgUm9sbGJhY2tUcmFuc2FjdGlvbkVudkNoYW5nZVRva2VuKG5ld1ZhbHVlLCBvbGRWYWx1ZSksIG9mZnNldCk7XG5cbiAgICAgICAgY2FzZSAnUkVTRVRfQ09OTkVDVElPTic6XG4gICAgICAgICAgcmV0dXJuIG5ldyBSZXN1bHQobmV3IFJlc2V0Q29ubmVjdGlvbkVudkNoYW5nZVRva2VuKG5ld1ZhbHVlLCBvbGRWYWx1ZSksIG9mZnNldCk7XG4gICAgICB9XG5cbiAgICAgIHRocm93IG5ldyBFcnJvcigndW5yZWFjaGFibGUnKTtcbiAgICB9XG5cbiAgICBjYXNlICdST1VUSU5HX0NIQU5HRSc6IHtcbiAgICAgIGxldCByb3V0ZVBhY2tldDtcbiAgICAgICh7IG9mZnNldCwgdmFsdWU6IHJvdXRlUGFja2V0IH0gPSByZWFkVXNWYXJCeXRlKGJ1Ziwgb2Zmc2V0KSk7XG5cbiAgICAgIGxldCBvbGRWYWx1ZTtcbiAgICAgICh7IG9mZnNldCwgdmFsdWU6IG9sZFZhbHVlIH0gPSByZWFkVXNWYXJCeXRlKGJ1Ziwgb2Zmc2V0KSk7XG5cbiAgICAgIC8vIFJvdXRpbmcgQ2hhbmdlOlxuICAgICAgLy8gQnl0ZSAxOiBQcm90b2NvbCAobXVzdCBiZSAwKVxuICAgICAgLy8gQnl0ZXMgMi0zIChVU0hPUlQpOiBQb3J0IG51bWJlclxuICAgICAgLy8gQnl0ZXMgNC01IChVU0hPUlQpOiBMZW5ndGggb2Ygc2VydmVyIGRhdGEgaW4gdW5pY29kZSAoMmJ5dGUgY2hhcnMpXG4gICAgICAvLyBCeXRlcyA2LSo6IFNlcnZlciBuYW1lIGluIHVuaWNvZGUgY2hhcmFjdGVyc1xuICAgICAgY29uc3QgcHJvdG9jb2wgPSByb3V0ZVBhY2tldC5yZWFkVUludDgoMCk7XG4gICAgICBpZiAocHJvdG9jb2wgIT09IDApIHtcbiAgICAgICAgdGhyb3cgbmV3IEVycm9yKCdVbmtub3duIHByb3RvY29sIGJ5dGUgaW4gcm91dGluZyBjaGFuZ2UgZXZlbnQnKTtcbiAgICAgIH1cblxuICAgICAgY29uc3QgcG9ydCA9IHJvdXRlUGFja2V0LnJlYWRVSW50MTZMRSgxKTtcbiAgICAgIGNvbnN0IHNlcnZlckxlbiA9IHJvdXRlUGFja2V0LnJlYWRVSW50MTZMRSgzKTtcbiAgICAgIC8vIDIgYnl0ZXMgcGVyIGNoYXIsIHN0YXJ0aW5nIGF0IG9mZnNldCA1XG4gICAgICBjb25zdCBzZXJ2ZXIgPSByb3V0ZVBhY2tldC50b1N0cmluZygndWNzMicsIDUsIDUgKyAoc2VydmVyTGVuICogMikpO1xuXG4gICAgICBjb25zdCBuZXdWYWx1ZSA9IHtcbiAgICAgICAgcHJvdG9jb2w6IHByb3RvY29sLFxuICAgICAgICBwb3J0OiBwb3J0LFxuICAgICAgICBzZXJ2ZXI6IHNlcnZlclxuICAgICAgfTtcblxuICAgICAgcmV0dXJuIG5ldyBSZXN1bHQobmV3IFJvdXRpbmdFbnZDaGFuZ2VUb2tlbihuZXdWYWx1ZSwgb2xkVmFsdWUpLCBvZmZzZXQpO1xuICAgIH1cblxuICAgIGRlZmF1bHQ6IHtcbiAgICAgIGNvbnNvbGUuZXJyb3IoJ1RlZGlvdXMgPiBVbnN1cHBvcnRlZCBFTlZDSEFOR0UgdHlwZSAnICsgdHlwZS5uYW1lKTtcblxuICAgICAgLy8gc2tpcCB1bmtub3duIGJ5dGVzXG4gICAgICByZXR1cm4gbmV3IFJlc3VsdCh1bmRlZmluZWQsIG9mZnNldCArIGxlbmd0aCAtIDEpO1xuICAgIH1cbiAgfVxufVxuXG5mdW5jdGlvbiBlbnZDaGFuZ2VQYXJzZXIoYnVmOiBCdWZmZXIsIG9mZnNldDogbnVtYmVyLCBfb3B0aW9uczogUGFyc2VyT3B0aW9ucyk6IFJlc3VsdDxFbnZDaGFuZ2VUb2tlbiB8IHVuZGVmaW5lZD4ge1xuICBsZXQgdG9rZW5MZW5ndGg7XG4gICh7IG9mZnNldCwgdmFsdWU6IHRva2VuTGVuZ3RoIH0gPSByZWFkVUludDE2TEUoYnVmLCBvZmZzZXQpKTtcblxuICBpZiAoYnVmLmxlbmd0aCA8IG9mZnNldCArIHRva2VuTGVuZ3RoKSB7XG4gICAgdGhyb3cgbmV3IE5vdEVub3VnaERhdGFFcnJvcihvZmZzZXQgKyB0b2tlbkxlbmd0aCk7XG4gIH1cblxuICBsZXQgdHlwZU51bWJlcjtcbiAgKHsgb2Zmc2V0LCB2YWx1ZTogdHlwZU51bWJlciB9ID0gcmVhZFVJbnQ4KGJ1Ziwgb2Zmc2V0KSk7XG5cbiAgY29uc3QgdHlwZSA9IHR5cGVzW3R5cGVOdW1iZXJdO1xuXG4gIGlmICghdHlwZSkge1xuICAgIGNvbnNvbGUuZXJyb3IoJ1RlZGlvdXMgPiBVbnN1cHBvcnRlZCBFTlZDSEFOR0UgdHlwZSAnICsgdHlwZU51bWJlcik7XG4gICAgcmV0dXJuIG5ldyBSZXN1bHQodW5kZWZpbmVkLCBvZmZzZXQgKyB0b2tlbkxlbmd0aCAtIDEpO1xuICB9XG5cbiAgcmV0dXJuIF9yZWFkTmV3QW5kT2xkVmFsdWUoYnVmLCBvZmZzZXQsIHRva2VuTGVuZ3RoLCB0eXBlKTtcbn1cblxuZXhwb3J0IGRlZmF1bHQgZW52Q2hhbmdlUGFyc2VyO1xubW9kdWxlLmV4cG9ydHMgPSBlbnZDaGFuZ2VQYXJzZXI7XG4iXSwibWFwcGluZ3MiOiI7Ozs7OztBQUNBLElBQUFBLFVBQUEsR0FBQUMsT0FBQTtBQUVBLElBQUFDLE1BQUEsR0FBQUQsT0FBQTtBQWVBLElBQUFFLFFBQUEsR0FBQUYsT0FBQTtBQUVBLE1BQU1HLEtBQXlELEdBQUc7RUFDaEUsQ0FBQyxFQUFFO0lBQ0RDLElBQUksRUFBRSxVQUFVO0lBQ2hCQyxLQUFLLEVBQUU7RUFDVCxDQUFDO0VBQ0QsQ0FBQyxFQUFFO0lBQ0RELElBQUksRUFBRSxVQUFVO0lBQ2hCQyxLQUFLLEVBQUU7RUFDVCxDQUFDO0VBQ0QsQ0FBQyxFQUFFO0lBQ0RELElBQUksRUFBRSxTQUFTO0lBQ2ZDLEtBQUssRUFBRTtFQUNULENBQUM7RUFDRCxDQUFDLEVBQUU7SUFDREQsSUFBSSxFQUFFLGFBQWE7SUFDbkJDLEtBQUssRUFBRTtFQUNULENBQUM7RUFDRCxDQUFDLEVBQUU7SUFDREQsSUFBSSxFQUFFLGVBQWU7SUFDckJDLEtBQUssRUFBRTtFQUNULENBQUM7RUFDRCxDQUFDLEVBQUU7SUFDREQsSUFBSSxFQUFFLFdBQVc7SUFDakJDLEtBQUssRUFBRTtFQUNULENBQUM7RUFDRCxDQUFDLEVBQUU7SUFDREQsSUFBSSxFQUFFLFlBQVk7SUFDbEJDLEtBQUssRUFBRTtFQUNULENBQUM7RUFDRCxFQUFFLEVBQUU7SUFDRkQsSUFBSSxFQUFFLGNBQWM7SUFDcEJDLEtBQUssRUFBRTtFQUNULENBQUM7RUFDRCxFQUFFLEVBQUU7SUFDRkQsSUFBSSxFQUFFLDRCQUE0QjtJQUNsQ0MsS0FBSyxFQUFFO0VBQ1QsQ0FBQztFQUNELEVBQUUsRUFBRTtJQUNGRCxJQUFJLEVBQUU7RUFDUixDQUFDO0VBQ0QsRUFBRSxFQUFFO0lBQ0ZBLElBQUksRUFBRSxrQkFBa0I7SUFDeEJDLEtBQUssRUFBRTtFQUNULENBQUM7RUFDRCxFQUFFLEVBQUU7SUFDRkQsSUFBSSxFQUFFLGdCQUFnQjtJQUN0QkMsS0FBSyxFQUFFO0VBQ1Q7QUFDRixDQUFDO0FBRUQsU0FBU0MsbUJBQW1CQSxDQUFDQyxHQUFXLEVBQUVDLE1BQWMsRUFBRUMsTUFBYyxFQUFFQyxJQUFzQyxFQUFzQztFQUNwSixRQUFRQSxJQUFJLENBQUNOLElBQUk7SUFDZixLQUFLLFVBQVU7SUFDZixLQUFLLFVBQVU7SUFDZixLQUFLLFNBQVM7SUFDZCxLQUFLLGFBQWE7SUFDbEIsS0FBSyw0QkFBNEI7TUFBRTtRQUNqQyxJQUFJTyxRQUFRO1FBQ1osQ0FBQztVQUFFSCxNQUFNO1VBQUVJLEtBQUssRUFBRUQ7UUFBUyxDQUFDLEdBQUcsSUFBQUUscUJBQVksRUFBQ04sR0FBRyxFQUFFQyxNQUFNLENBQUM7UUFFeEQsSUFBSU0sUUFBUTtRQUNaLENBQUM7VUFBRU4sTUFBTTtVQUFFSSxLQUFLLEVBQUVFO1FBQVMsQ0FBQyxHQUFHLElBQUFELHFCQUFZLEVBQUNOLEdBQUcsRUFBRUMsTUFBTSxDQUFDO1FBRXhELFFBQVFFLElBQUksQ0FBQ04sSUFBSTtVQUNmLEtBQUssYUFBYTtZQUNoQixPQUFPLElBQUlXLGVBQU0sQ0FBQyxJQUFJQywrQkFBd0IsQ0FBQ0MsUUFBUSxDQUFDTixRQUFRLENBQUMsRUFBRU0sUUFBUSxDQUFDSCxRQUFRLENBQUMsQ0FBQyxFQUFFTixNQUFNLENBQUM7VUFFakcsS0FBSyxVQUFVO1lBQ2IsT0FBTyxJQUFJTyxlQUFNLENBQUMsSUFBSUcsNkJBQXNCLENBQUNQLFFBQVEsRUFBRUcsUUFBUSxDQUFDLEVBQUVOLE1BQU0sQ0FBQztVQUUzRSxLQUFLLFVBQVU7WUFDYixPQUFPLElBQUlPLGVBQU0sQ0FBQyxJQUFJSSw2QkFBc0IsQ0FBQ1IsUUFBUSxFQUFFRyxRQUFRLENBQUMsRUFBRU4sTUFBTSxDQUFDO1VBRTNFLEtBQUssU0FBUztZQUNaLE9BQU8sSUFBSU8sZUFBTSxDQUFDLElBQUlLLDRCQUFxQixDQUFDVCxRQUFRLEVBQUVHLFFBQVEsQ0FBQyxFQUFFTixNQUFNLENBQUM7VUFFMUUsS0FBSyw0QkFBNEI7WUFDL0IsT0FBTyxJQUFJTyxlQUFNLENBQUMsSUFBSU0sNkNBQXNDLENBQUNWLFFBQVEsRUFBRUcsUUFBUSxDQUFDLEVBQUVOLE1BQU0sQ0FBQztRQUM3RjtRQUVBLE1BQU0sSUFBSWMsS0FBSyxDQUFDLGFBQWEsQ0FBQztNQUNoQztJQUVBLEtBQUssZUFBZTtJQUNwQixLQUFLLFdBQVc7SUFDaEIsS0FBSyxZQUFZO0lBQ2pCLEtBQUssY0FBYztJQUNuQixLQUFLLGtCQUFrQjtNQUFFO1FBQ3ZCLElBQUlYLFFBQVE7UUFDWixDQUFDO1VBQUVILE1BQU07VUFBRUksS0FBSyxFQUFFRDtRQUFTLENBQUMsR0FBRyxJQUFBWSxxQkFBWSxFQUFDaEIsR0FBRyxFQUFFQyxNQUFNLENBQUM7UUFFeEQsSUFBSU0sUUFBUTtRQUNaLENBQUM7VUFBRU4sTUFBTTtVQUFFSSxLQUFLLEVBQUVFO1FBQVMsQ0FBQyxHQUFHLElBQUFTLHFCQUFZLEVBQUNoQixHQUFHLEVBQUVDLE1BQU0sQ0FBQztRQUV4RCxRQUFRRSxJQUFJLENBQUNOLElBQUk7VUFDZixLQUFLLGVBQWU7WUFBRTtjQUNwQixNQUFNb0IsWUFBWSxHQUFHYixRQUFRLENBQUNGLE1BQU0sR0FBR2dCLG9CQUFTLENBQUNDLFVBQVUsQ0FBQ2YsUUFBUSxDQUFDLEdBQUdnQixTQUFTO2NBQ2pGLE1BQU1DLFlBQVksR0FBR2QsUUFBUSxDQUFDTCxNQUFNLEdBQUdnQixvQkFBUyxDQUFDQyxVQUFVLENBQUNaLFFBQVEsQ0FBQyxHQUFHYSxTQUFTO2NBRWpGLE9BQU8sSUFBSVosZUFBTSxDQUFDLElBQUljLDJCQUFvQixDQUFDTCxZQUFZLEVBQUVJLFlBQVksQ0FBQyxFQUFFcEIsTUFBTSxDQUFDO1lBQ2pGO1VBRUEsS0FBSyxXQUFXO1lBQ2QsT0FBTyxJQUFJTyxlQUFNLENBQUMsSUFBSWUscUNBQThCLENBQUNuQixRQUFRLEVBQUVHLFFBQVEsQ0FBQyxFQUFFTixNQUFNLENBQUM7VUFFbkYsS0FBSyxZQUFZO1lBQ2YsT0FBTyxJQUFJTyxlQUFNLENBQUMsSUFBSWdCLHNDQUErQixDQUFDcEIsUUFBUSxFQUFFRyxRQUFRLENBQUMsRUFBRU4sTUFBTSxDQUFDO1VBRXBGLEtBQUssY0FBYztZQUNqQixPQUFPLElBQUlPLGVBQU0sQ0FBQyxJQUFJaUIsd0NBQWlDLENBQUNyQixRQUFRLEVBQUVHLFFBQVEsQ0FBQyxFQUFFTixNQUFNLENBQUM7VUFFdEYsS0FBSyxrQkFBa0I7WUFDckIsT0FBTyxJQUFJTyxlQUFNLENBQUMsSUFBSWtCLG9DQUE2QixDQUFDdEIsUUFBUSxFQUFFRyxRQUFRLENBQUMsRUFBRU4sTUFBTSxDQUFDO1FBQ3BGO1FBRUEsTUFBTSxJQUFJYyxLQUFLLENBQUMsYUFBYSxDQUFDO01BQ2hDO0lBRUEsS0FBSyxnQkFBZ0I7TUFBRTtRQUNyQixJQUFJWSxXQUFXO1FBQ2YsQ0FBQztVQUFFMUIsTUFBTTtVQUFFSSxLQUFLLEVBQUVzQjtRQUFZLENBQUMsR0FBRyxJQUFBQyxzQkFBYSxFQUFDNUIsR0FBRyxFQUFFQyxNQUFNLENBQUM7UUFFNUQsSUFBSU0sUUFBUTtRQUNaLENBQUM7VUFBRU4sTUFBTTtVQUFFSSxLQUFLLEVBQUVFO1FBQVMsQ0FBQyxHQUFHLElBQUFxQixzQkFBYSxFQUFDNUIsR0FBRyxFQUFFQyxNQUFNLENBQUM7O1FBRXpEO1FBQ0E7UUFDQTtRQUNBO1FBQ0E7UUFDQSxNQUFNNEIsUUFBUSxHQUFHRixXQUFXLENBQUNHLFNBQVMsQ0FBQyxDQUFDLENBQUM7UUFDekMsSUFBSUQsUUFBUSxLQUFLLENBQUMsRUFBRTtVQUNsQixNQUFNLElBQUlkLEtBQUssQ0FBQywrQ0FBK0MsQ0FBQztRQUNsRTtRQUVBLE1BQU1nQixJQUFJLEdBQUdKLFdBQVcsQ0FBQ0ssWUFBWSxDQUFDLENBQUMsQ0FBQztRQUN4QyxNQUFNQyxTQUFTLEdBQUdOLFdBQVcsQ0FBQ0ssWUFBWSxDQUFDLENBQUMsQ0FBQztRQUM3QztRQUNBLE1BQU1FLE1BQU0sR0FBR1AsV0FBVyxDQUFDUSxRQUFRLENBQUMsTUFBTSxFQUFFLENBQUMsRUFBRSxDQUFDLEdBQUlGLFNBQVMsR0FBRyxDQUFFLENBQUM7UUFFbkUsTUFBTTdCLFFBQVEsR0FBRztVQUNmeUIsUUFBUSxFQUFFQSxRQUFRO1VBQ2xCRSxJQUFJLEVBQUVBLElBQUk7VUFDVkcsTUFBTSxFQUFFQTtRQUNWLENBQUM7UUFFRCxPQUFPLElBQUkxQixlQUFNLENBQUMsSUFBSTRCLDRCQUFxQixDQUFDaEMsUUFBUSxFQUFFRyxRQUFRLENBQUMsRUFBRU4sTUFBTSxDQUFDO01BQzFFO0lBRUE7TUFBUztRQUNQb0MsT0FBTyxDQUFDQyxLQUFLLENBQUMsdUNBQXVDLEdBQUduQyxJQUFJLENBQUNOLElBQUksQ0FBQzs7UUFFbEU7UUFDQSxPQUFPLElBQUlXLGVBQU0sQ0FBQ1ksU0FBUyxFQUFFbkIsTUFBTSxHQUFHQyxNQUFNLEdBQUcsQ0FBQyxDQUFDO01BQ25EO0VBQ0Y7QUFDRjtBQUVBLFNBQVNxQyxlQUFlQSxDQUFDdkMsR0FBVyxFQUFFQyxNQUFjLEVBQUV1QyxRQUF1QixFQUFzQztFQUNqSCxJQUFJQyxXQUFXO0VBQ2YsQ0FBQztJQUFFeEMsTUFBTTtJQUFFSSxLQUFLLEVBQUVvQztFQUFZLENBQUMsR0FBRyxJQUFBVCxxQkFBWSxFQUFDaEMsR0FBRyxFQUFFQyxNQUFNLENBQUM7RUFFM0QsSUFBSUQsR0FBRyxDQUFDRSxNQUFNLEdBQUdELE1BQU0sR0FBR3dDLFdBQVcsRUFBRTtJQUNyQyxNQUFNLElBQUlDLDJCQUFrQixDQUFDekMsTUFBTSxHQUFHd0MsV0FBVyxDQUFDO0VBQ3BEO0VBRUEsSUFBSUUsVUFBVTtFQUNkLENBQUM7SUFBRTFDLE1BQU07SUFBRUksS0FBSyxFQUFFc0M7RUFBVyxDQUFDLEdBQUcsSUFBQWIsa0JBQVMsRUFBQzlCLEdBQUcsRUFBRUMsTUFBTSxDQUFDO0VBRXZELE1BQU1FLElBQUksR0FBR1AsS0FBSyxDQUFDK0MsVUFBVSxDQUFDO0VBRTlCLElBQUksQ0FBQ3hDLElBQUksRUFBRTtJQUNUa0MsT0FBTyxDQUFDQyxLQUFLLENBQUMsdUNBQXVDLEdBQUdLLFVBQVUsQ0FBQztJQUNuRSxPQUFPLElBQUluQyxlQUFNLENBQUNZLFNBQVMsRUFBRW5CLE1BQU0sR0FBR3dDLFdBQVcsR0FBRyxDQUFDLENBQUM7RUFDeEQ7RUFFQSxPQUFPMUMsbUJBQW1CLENBQUNDLEdBQUcsRUFBRUMsTUFBTSxFQUFFd0MsV0FBVyxFQUFFdEMsSUFBSSxDQUFDO0FBQzVEO0FBQUMsSUFBQXlDLFFBQUEsR0FBQUMsT0FBQSxDQUFBQyxPQUFBLEdBRWNQLGVBQWU7QUFDOUJRLE1BQU0sQ0FBQ0YsT0FBTyxHQUFHTixlQUFlIn0=
|
|
@@ -1,5 +0,0 @@
|
|
|
1
|
-
import { Result } from './helpers';
|
|
2
|
-
import { type ParserOptions } from './stream-parser';
|
|
3
|
-
import { FeatureExtAckToken } from './token';
|
|
4
|
-
declare function featureExtAckParser(buf: Buffer, offset: number, _options: ParserOptions): Result<FeatureExtAckToken>;
|
|
5
|
-
export default featureExtAckParser;
|
|
@@ -1,52 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
|
|
3
|
-
Object.defineProperty(exports, "__esModule", {
|
|
4
|
-
value: true
|
|
5
|
-
});
|
|
6
|
-
exports.default = void 0;
|
|
7
|
-
var _helpers = require("./helpers");
|
|
8
|
-
var _token = require("./token");
|
|
9
|
-
const FEATURE_ID = {
|
|
10
|
-
SESSIONRECOVERY: 0x01,
|
|
11
|
-
FEDAUTH: 0x02,
|
|
12
|
-
COLUMNENCRYPTION: 0x04,
|
|
13
|
-
GLOBALTRANSACTIONS: 0x05,
|
|
14
|
-
AZURESQLSUPPORT: 0x08,
|
|
15
|
-
UTF8_SUPPORT: 0x0A,
|
|
16
|
-
TERMINATOR: 0xFF
|
|
17
|
-
};
|
|
18
|
-
function featureExtAckParser(buf, offset, _options) {
|
|
19
|
-
let fedAuth;
|
|
20
|
-
let utf8Support;
|
|
21
|
-
while (true) {
|
|
22
|
-
let featureId;
|
|
23
|
-
({
|
|
24
|
-
value: featureId,
|
|
25
|
-
offset
|
|
26
|
-
} = (0, _helpers.readUInt8)(buf, offset));
|
|
27
|
-
if (featureId === FEATURE_ID.TERMINATOR) {
|
|
28
|
-
return new _helpers.Result(new _token.FeatureExtAckToken(fedAuth, utf8Support), offset);
|
|
29
|
-
}
|
|
30
|
-
let featureAckDataLen;
|
|
31
|
-
({
|
|
32
|
-
value: featureAckDataLen,
|
|
33
|
-
offset
|
|
34
|
-
} = (0, _helpers.readUInt32LE)(buf, offset));
|
|
35
|
-
if (buf.length < offset + featureAckDataLen) {
|
|
36
|
-
throw new _helpers.NotEnoughDataError(offset + featureAckDataLen);
|
|
37
|
-
}
|
|
38
|
-
const featureData = buf.slice(offset, offset + featureAckDataLen);
|
|
39
|
-
offset += featureAckDataLen;
|
|
40
|
-
switch (featureId) {
|
|
41
|
-
case FEATURE_ID.FEDAUTH:
|
|
42
|
-
fedAuth = featureData;
|
|
43
|
-
break;
|
|
44
|
-
case FEATURE_ID.UTF8_SUPPORT:
|
|
45
|
-
utf8Support = !!featureData[0];
|
|
46
|
-
break;
|
|
47
|
-
}
|
|
48
|
-
}
|
|
49
|
-
}
|
|
50
|
-
var _default = exports.default = featureExtAckParser;
|
|
51
|
-
module.exports = featureExtAckParser;
|
|
52
|
-
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJuYW1lcyI6WyJfaGVscGVycyIsInJlcXVpcmUiLCJfdG9rZW4iLCJGRUFUVVJFX0lEIiwiU0VTU0lPTlJFQ09WRVJZIiwiRkVEQVVUSCIsIkNPTFVNTkVOQ1JZUFRJT04iLCJHTE9CQUxUUkFOU0FDVElPTlMiLCJBWlVSRVNRTFNVUFBPUlQiLCJVVEY4X1NVUFBPUlQiLCJURVJNSU5BVE9SIiwiZmVhdHVyZUV4dEFja1BhcnNlciIsImJ1ZiIsIm9mZnNldCIsIl9vcHRpb25zIiwiZmVkQXV0aCIsInV0ZjhTdXBwb3J0IiwiZmVhdHVyZUlkIiwidmFsdWUiLCJyZWFkVUludDgiLCJSZXN1bHQiLCJGZWF0dXJlRXh0QWNrVG9rZW4iLCJmZWF0dXJlQWNrRGF0YUxlbiIsInJlYWRVSW50MzJMRSIsImxlbmd0aCIsIk5vdEVub3VnaERhdGFFcnJvciIsImZlYXR1cmVEYXRhIiwic2xpY2UiLCJfZGVmYXVsdCIsImV4cG9ydHMiLCJkZWZhdWx0IiwibW9kdWxlIl0sInNvdXJjZXMiOlsiLi4vLi4vc3JjL3Rva2VuL2ZlYXR1cmUtZXh0LWFjay1wYXJzZXIudHMiXSwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgTm90RW5vdWdoRGF0YUVycm9yLCByZWFkVUludDMyTEUsIHJlYWRVSW50OCwgUmVzdWx0IH0gZnJvbSAnLi9oZWxwZXJzJztcbmltcG9ydCB7IHR5cGUgUGFyc2VyT3B0aW9ucyB9IGZyb20gJy4vc3RyZWFtLXBhcnNlcic7XG5cbmltcG9ydCB7IEZlYXR1cmVFeHRBY2tUb2tlbiB9IGZyb20gJy4vdG9rZW4nO1xuXG5jb25zdCBGRUFUVVJFX0lEID0ge1xuICBTRVNTSU9OUkVDT1ZFUlk6IDB4MDEsXG4gIEZFREFVVEg6IDB4MDIsXG4gIENPTFVNTkVOQ1JZUFRJT046IDB4MDQsXG4gIEdMT0JBTFRSQU5TQUNUSU9OUzogMHgwNSxcbiAgQVpVUkVTUUxTVVBQT1JUOiAweDA4LFxuICBVVEY4X1NVUFBPUlQ6IDB4MEEsXG4gIFRFUk1JTkFUT1I6IDB4RkZcbn07XG5cbmZ1bmN0aW9uIGZlYXR1cmVFeHRBY2tQYXJzZXIoYnVmOiBCdWZmZXIsIG9mZnNldDogbnVtYmVyLCBfb3B0aW9uczogUGFyc2VyT3B0aW9ucyk6IFJlc3VsdDxGZWF0dXJlRXh0QWNrVG9rZW4+IHtcbiAgbGV0IGZlZEF1dGg6IEJ1ZmZlciB8IHVuZGVmaW5lZDtcbiAgbGV0IHV0ZjhTdXBwb3J0OiBib29sZWFuIHwgdW5kZWZpbmVkO1xuXG4gIHdoaWxlICh0cnVlKSB7XG4gICAgbGV0IGZlYXR1cmVJZDtcbiAgICAoeyB2YWx1ZTogZmVhdHVyZUlkLCBvZmZzZXQgfSA9IHJlYWRVSW50OChidWYsIG9mZnNldCkpO1xuXG4gICAgaWYgKGZlYXR1cmVJZCA9PT0gRkVBVFVSRV9JRC5URVJNSU5BVE9SKSB7XG4gICAgICByZXR1cm4gbmV3IFJlc3VsdChuZXcgRmVhdHVyZUV4dEFja1Rva2VuKGZlZEF1dGgsIHV0ZjhTdXBwb3J0KSwgb2Zmc2V0KTtcbiAgICB9XG5cbiAgICBsZXQgZmVhdHVyZUFja0RhdGFMZW47XG4gICAgKHsgdmFsdWU6IGZlYXR1cmVBY2tEYXRhTGVuLCBvZmZzZXQgfSA9IHJlYWRVSW50MzJMRShidWYsIG9mZnNldCkpO1xuXG4gICAgaWYgKGJ1Zi5sZW5ndGggPCBvZmZzZXQgKyBmZWF0dXJlQWNrRGF0YUxlbikge1xuICAgICAgdGhyb3cgbmV3IE5vdEVub3VnaERhdGFFcnJvcihvZmZzZXQgKyBmZWF0dXJlQWNrRGF0YUxlbik7XG4gICAgfVxuXG4gICAgY29uc3QgZmVhdHVyZURhdGEgPSBidWYuc2xpY2Uob2Zmc2V0LCBvZmZzZXQgKyBmZWF0dXJlQWNrRGF0YUxlbik7XG4gICAgb2Zmc2V0ICs9IGZlYXR1cmVBY2tEYXRhTGVuO1xuXG4gICAgc3dpdGNoIChmZWF0dXJlSWQpIHtcbiAgICAgIGNhc2UgRkVBVFVSRV9JRC5GRURBVVRIOlxuICAgICAgICBmZWRBdXRoID0gZmVhdHVyZURhdGE7XG4gICAgICAgIGJyZWFrO1xuICAgICAgY2FzZSBGRUFUVVJFX0lELlVURjhfU1VQUE9SVDpcbiAgICAgICAgdXRmOFN1cHBvcnQgPSAhIWZlYXR1cmVEYXRhWzBdO1xuICAgICAgICBicmVhaztcbiAgICB9XG4gIH1cbn1cblxuZXhwb3J0IGRlZmF1bHQgZmVhdHVyZUV4dEFja1BhcnNlcjtcbm1vZHVsZS5leHBvcnRzID0gZmVhdHVyZUV4dEFja1BhcnNlcjtcbiJdLCJtYXBwaW5ncyI6Ijs7Ozs7O0FBQUEsSUFBQUEsUUFBQSxHQUFBQyxPQUFBO0FBR0EsSUFBQUMsTUFBQSxHQUFBRCxPQUFBO0FBRUEsTUFBTUUsVUFBVSxHQUFHO0VBQ2pCQyxlQUFlLEVBQUUsSUFBSTtFQUNyQkMsT0FBTyxFQUFFLElBQUk7RUFDYkMsZ0JBQWdCLEVBQUUsSUFBSTtFQUN0QkMsa0JBQWtCLEVBQUUsSUFBSTtFQUN4QkMsZUFBZSxFQUFFLElBQUk7RUFDckJDLFlBQVksRUFBRSxJQUFJO0VBQ2xCQyxVQUFVLEVBQUU7QUFDZCxDQUFDO0FBRUQsU0FBU0MsbUJBQW1CQSxDQUFDQyxHQUFXLEVBQUVDLE1BQWMsRUFBRUMsUUFBdUIsRUFBOEI7RUFDN0csSUFBSUMsT0FBMkI7RUFDL0IsSUFBSUMsV0FBZ0M7RUFFcEMsT0FBTyxJQUFJLEVBQUU7SUFDWCxJQUFJQyxTQUFTO0lBQ2IsQ0FBQztNQUFFQyxLQUFLLEVBQUVELFNBQVM7TUFBRUo7SUFBTyxDQUFDLEdBQUcsSUFBQU0sa0JBQVMsRUFBQ1AsR0FBRyxFQUFFQyxNQUFNLENBQUM7SUFFdEQsSUFBSUksU0FBUyxLQUFLZCxVQUFVLENBQUNPLFVBQVUsRUFBRTtNQUN2QyxPQUFPLElBQUlVLGVBQU0sQ0FBQyxJQUFJQyx5QkFBa0IsQ0FBQ04sT0FBTyxFQUFFQyxXQUFXLENBQUMsRUFBRUgsTUFBTSxDQUFDO0lBQ3pFO0lBRUEsSUFBSVMsaUJBQWlCO0lBQ3JCLENBQUM7TUFBRUosS0FBSyxFQUFFSSxpQkFBaUI7TUFBRVQ7SUFBTyxDQUFDLEdBQUcsSUFBQVUscUJBQVksRUFBQ1gsR0FBRyxFQUFFQyxNQUFNLENBQUM7SUFFakUsSUFBSUQsR0FBRyxDQUFDWSxNQUFNLEdBQUdYLE1BQU0sR0FBR1MsaUJBQWlCLEVBQUU7TUFDM0MsTUFBTSxJQUFJRywyQkFBa0IsQ0FBQ1osTUFBTSxHQUFHUyxpQkFBaUIsQ0FBQztJQUMxRDtJQUVBLE1BQU1JLFdBQVcsR0FBR2QsR0FBRyxDQUFDZSxLQUFLLENBQUNkLE1BQU0sRUFBRUEsTUFBTSxHQUFHUyxpQkFBaUIsQ0FBQztJQUNqRVQsTUFBTSxJQUFJUyxpQkFBaUI7SUFFM0IsUUFBUUwsU0FBUztNQUNmLEtBQUtkLFVBQVUsQ0FBQ0UsT0FBTztRQUNyQlUsT0FBTyxHQUFHVyxXQUFXO1FBQ3JCO01BQ0YsS0FBS3ZCLFVBQVUsQ0FBQ00sWUFBWTtRQUMxQk8sV0FBVyxHQUFHLENBQUMsQ0FBQ1UsV0FBVyxDQUFDLENBQUMsQ0FBQztRQUM5QjtJQUNKO0VBQ0Y7QUFDRjtBQUFDLElBQUFFLFFBQUEsR0FBQUMsT0FBQSxDQUFBQyxPQUFBLEdBRWNuQixtQkFBbUI7QUFDbENvQixNQUFNLENBQUNGLE9BQU8sR0FBR2xCLG1CQUFtQiJ9
|
|
@@ -1,5 +0,0 @@
|
|
|
1
|
-
import { Result } from './helpers';
|
|
2
|
-
import { type ParserOptions } from './stream-parser';
|
|
3
|
-
import { FedAuthInfoToken } from './token';
|
|
4
|
-
declare function fedAuthInfoParser(buf: Buffer, offset: number, _options: ParserOptions): Result<FedAuthInfoToken>;
|
|
5
|
-
export default fedAuthInfoParser;
|
|
@@ -1,62 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
|
|
3
|
-
Object.defineProperty(exports, "__esModule", {
|
|
4
|
-
value: true
|
|
5
|
-
});
|
|
6
|
-
exports.default = void 0;
|
|
7
|
-
var _helpers = require("./helpers");
|
|
8
|
-
var _token = require("./token");
|
|
9
|
-
const FEDAUTHINFOID = {
|
|
10
|
-
STSURL: 0x01,
|
|
11
|
-
SPN: 0x02
|
|
12
|
-
};
|
|
13
|
-
function readFedAuthInfo(data) {
|
|
14
|
-
let offset = 0;
|
|
15
|
-
let spn, stsurl;
|
|
16
|
-
const countOfInfoIDs = data.readUInt32LE(offset);
|
|
17
|
-
offset += 4;
|
|
18
|
-
for (let i = 0; i < countOfInfoIDs; i++) {
|
|
19
|
-
const fedauthInfoID = data.readUInt8(offset);
|
|
20
|
-
offset += 1;
|
|
21
|
-
const fedAuthInfoDataLen = data.readUInt32LE(offset);
|
|
22
|
-
offset += 4;
|
|
23
|
-
const fedAuthInfoDataOffset = data.readUInt32LE(offset);
|
|
24
|
-
offset += 4;
|
|
25
|
-
switch (fedauthInfoID) {
|
|
26
|
-
case FEDAUTHINFOID.SPN:
|
|
27
|
-
spn = data.toString('ucs2', fedAuthInfoDataOffset, fedAuthInfoDataOffset + fedAuthInfoDataLen);
|
|
28
|
-
break;
|
|
29
|
-
case FEDAUTHINFOID.STSURL:
|
|
30
|
-
stsurl = data.toString('ucs2', fedAuthInfoDataOffset, fedAuthInfoDataOffset + fedAuthInfoDataLen);
|
|
31
|
-
break;
|
|
32
|
-
|
|
33
|
-
// ignoring unknown fedauthinfo options
|
|
34
|
-
default:
|
|
35
|
-
break;
|
|
36
|
-
}
|
|
37
|
-
}
|
|
38
|
-
return {
|
|
39
|
-
spn,
|
|
40
|
-
stsurl
|
|
41
|
-
};
|
|
42
|
-
}
|
|
43
|
-
function fedAuthInfoParser(buf, offset, _options) {
|
|
44
|
-
let tokenLength;
|
|
45
|
-
({
|
|
46
|
-
offset,
|
|
47
|
-
value: tokenLength
|
|
48
|
-
} = (0, _helpers.readUInt32LE)(buf, offset));
|
|
49
|
-
if (buf.length < offset + tokenLength) {
|
|
50
|
-
throw new _helpers.NotEnoughDataError(offset + tokenLength);
|
|
51
|
-
}
|
|
52
|
-
const data = buf.slice(offset, offset + tokenLength);
|
|
53
|
-
offset += tokenLength;
|
|
54
|
-
const {
|
|
55
|
-
spn,
|
|
56
|
-
stsurl
|
|
57
|
-
} = readFedAuthInfo(data);
|
|
58
|
-
return new _helpers.Result(new _token.FedAuthInfoToken(spn, stsurl), offset);
|
|
59
|
-
}
|
|
60
|
-
var _default = exports.default = fedAuthInfoParser;
|
|
61
|
-
module.exports = fedAuthInfoParser;
|
|
62
|
-
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJuYW1lcyI6WyJfaGVscGVycyIsInJlcXVpcmUiLCJfdG9rZW4iLCJGRURBVVRISU5GT0lEIiwiU1RTVVJMIiwiU1BOIiwicmVhZEZlZEF1dGhJbmZvIiwiZGF0YSIsIm9mZnNldCIsInNwbiIsInN0c3VybCIsImNvdW50T2ZJbmZvSURzIiwicmVhZFVJbnQzMkxFIiwiaSIsImZlZGF1dGhJbmZvSUQiLCJyZWFkVUludDgiLCJmZWRBdXRoSW5mb0RhdGFMZW4iLCJmZWRBdXRoSW5mb0RhdGFPZmZzZXQiLCJ0b1N0cmluZyIsImZlZEF1dGhJbmZvUGFyc2VyIiwiYnVmIiwiX29wdGlvbnMiLCJ0b2tlbkxlbmd0aCIsInZhbHVlIiwibGVuZ3RoIiwiTm90RW5vdWdoRGF0YUVycm9yIiwic2xpY2UiLCJSZXN1bHQiLCJGZWRBdXRoSW5mb1Rva2VuIiwiX2RlZmF1bHQiLCJleHBvcnRzIiwiZGVmYXVsdCIsIm1vZHVsZSJdLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy90b2tlbi9mZWRhdXRoLWluZm8tcGFyc2VyLnRzIl0sInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IE5vdEVub3VnaERhdGFFcnJvciwgcmVhZFVJbnQzMkxFLCBSZXN1bHQgfSBmcm9tICcuL2hlbHBlcnMnO1xuaW1wb3J0IHsgdHlwZSBQYXJzZXJPcHRpb25zIH0gZnJvbSAnLi9zdHJlYW0tcGFyc2VyJztcbmltcG9ydCB7IEZlZEF1dGhJbmZvVG9rZW4gfSBmcm9tICcuL3Rva2VuJztcblxuY29uc3QgRkVEQVVUSElORk9JRCA9IHtcbiAgU1RTVVJMOiAweDAxLFxuICBTUE46IDB4MDJcbn07XG5cbmZ1bmN0aW9uIHJlYWRGZWRBdXRoSW5mbyhkYXRhOiBCdWZmZXIpOiB7IHNwbjogc3RyaW5nIHwgdW5kZWZpbmVkLCBzdHN1cmw6IHN0cmluZyB8IHVuZGVmaW5lZCB9IHtcbiAgbGV0IG9mZnNldCA9IDA7XG4gIGxldCBzcG4sIHN0c3VybDtcblxuICBjb25zdCBjb3VudE9mSW5mb0lEcyA9IGRhdGEucmVhZFVJbnQzMkxFKG9mZnNldCk7XG4gIG9mZnNldCArPSA0O1xuXG4gIGZvciAobGV0IGkgPSAwOyBpIDwgY291bnRPZkluZm9JRHM7IGkrKykge1xuICAgIGNvbnN0IGZlZGF1dGhJbmZvSUQgPSBkYXRhLnJlYWRVSW50OChvZmZzZXQpO1xuICAgIG9mZnNldCArPSAxO1xuXG4gICAgY29uc3QgZmVkQXV0aEluZm9EYXRhTGVuID0gZGF0YS5yZWFkVUludDMyTEUob2Zmc2V0KTtcbiAgICBvZmZzZXQgKz0gNDtcblxuICAgIGNvbnN0IGZlZEF1dGhJbmZvRGF0YU9mZnNldCA9IGRhdGEucmVhZFVJbnQzMkxFKG9mZnNldCk7XG4gICAgb2Zmc2V0ICs9IDQ7XG5cbiAgICBzd2l0Y2ggKGZlZGF1dGhJbmZvSUQpIHtcbiAgICAgIGNhc2UgRkVEQVVUSElORk9JRC5TUE46XG4gICAgICAgIHNwbiA9IGRhdGEudG9TdHJpbmcoJ3VjczInLCBmZWRBdXRoSW5mb0RhdGFPZmZzZXQsIGZlZEF1dGhJbmZvRGF0YU9mZnNldCArIGZlZEF1dGhJbmZvRGF0YUxlbik7XG4gICAgICAgIGJyZWFrO1xuXG4gICAgICBjYXNlIEZFREFVVEhJTkZPSUQuU1RTVVJMOlxuICAgICAgICBzdHN1cmwgPSBkYXRhLnRvU3RyaW5nKCd1Y3MyJywgZmVkQXV0aEluZm9EYXRhT2Zmc2V0LCBmZWRBdXRoSW5mb0RhdGFPZmZzZXQgKyBmZWRBdXRoSW5mb0RhdGFMZW4pO1xuICAgICAgICBicmVhaztcblxuICAgICAgLy8gaWdub3JpbmcgdW5rbm93biBmZWRhdXRoaW5mbyBvcHRpb25zXG4gICAgICBkZWZhdWx0OlxuICAgICAgICBicmVhaztcbiAgICB9XG4gIH1cblxuICByZXR1cm4geyBzcG4sIHN0c3VybCB9O1xufVxuXG5mdW5jdGlvbiBmZWRBdXRoSW5mb1BhcnNlcihidWY6IEJ1ZmZlciwgb2Zmc2V0OiBudW1iZXIsIF9vcHRpb25zOiBQYXJzZXJPcHRpb25zKTogUmVzdWx0PEZlZEF1dGhJbmZvVG9rZW4+IHtcbiAgbGV0IHRva2VuTGVuZ3RoO1xuICAoeyBvZmZzZXQsIHZhbHVlOiB0b2tlbkxlbmd0aCB9ID0gcmVhZFVJbnQzMkxFKGJ1Ziwgb2Zmc2V0KSk7XG5cbiAgaWYgKGJ1Zi5sZW5ndGggPCBvZmZzZXQgKyB0b2tlbkxlbmd0aCkge1xuICAgIHRocm93IG5ldyBOb3RFbm91Z2hEYXRhRXJyb3Iob2Zmc2V0ICsgdG9rZW5MZW5ndGgpO1xuICB9XG5cbiAgY29uc3QgZGF0YSA9IGJ1Zi5zbGljZShvZmZzZXQsIG9mZnNldCArIHRva2VuTGVuZ3RoKTtcbiAgb2Zmc2V0ICs9IHRva2VuTGVuZ3RoO1xuXG4gIGNvbnN0IHsgc3BuLCBzdHN1cmwgfSA9IHJlYWRGZWRBdXRoSW5mbyhkYXRhKTtcbiAgcmV0dXJuIG5ldyBSZXN1bHQobmV3IEZlZEF1dGhJbmZvVG9rZW4oc3BuLCBzdHN1cmwpLCBvZmZzZXQpO1xufVxuXG5leHBvcnQgZGVmYXVsdCBmZWRBdXRoSW5mb1BhcnNlcjtcbm1vZHVsZS5leHBvcnRzID0gZmVkQXV0aEluZm9QYXJzZXI7XG4iXSwibWFwcGluZ3MiOiI7Ozs7OztBQUFBLElBQUFBLFFBQUEsR0FBQUMsT0FBQTtBQUVBLElBQUFDLE1BQUEsR0FBQUQsT0FBQTtBQUVBLE1BQU1FLGFBQWEsR0FBRztFQUNwQkMsTUFBTSxFQUFFLElBQUk7RUFDWkMsR0FBRyxFQUFFO0FBQ1AsQ0FBQztBQUVELFNBQVNDLGVBQWVBLENBQUNDLElBQVksRUFBMkQ7RUFDOUYsSUFBSUMsTUFBTSxHQUFHLENBQUM7RUFDZCxJQUFJQyxHQUFHLEVBQUVDLE1BQU07RUFFZixNQUFNQyxjQUFjLEdBQUdKLElBQUksQ0FBQ0ssWUFBWSxDQUFDSixNQUFNLENBQUM7RUFDaERBLE1BQU0sSUFBSSxDQUFDO0VBRVgsS0FBSyxJQUFJSyxDQUFDLEdBQUcsQ0FBQyxFQUFFQSxDQUFDLEdBQUdGLGNBQWMsRUFBRUUsQ0FBQyxFQUFFLEVBQUU7SUFDdkMsTUFBTUMsYUFBYSxHQUFHUCxJQUFJLENBQUNRLFNBQVMsQ0FBQ1AsTUFBTSxDQUFDO0lBQzVDQSxNQUFNLElBQUksQ0FBQztJQUVYLE1BQU1RLGtCQUFrQixHQUFHVCxJQUFJLENBQUNLLFlBQVksQ0FBQ0osTUFBTSxDQUFDO0lBQ3BEQSxNQUFNLElBQUksQ0FBQztJQUVYLE1BQU1TLHFCQUFxQixHQUFHVixJQUFJLENBQUNLLFlBQVksQ0FBQ0osTUFBTSxDQUFDO0lBQ3ZEQSxNQUFNLElBQUksQ0FBQztJQUVYLFFBQVFNLGFBQWE7TUFDbkIsS0FBS1gsYUFBYSxDQUFDRSxHQUFHO1FBQ3BCSSxHQUFHLEdBQUdGLElBQUksQ0FBQ1csUUFBUSxDQUFDLE1BQU0sRUFBRUQscUJBQXFCLEVBQUVBLHFCQUFxQixHQUFHRCxrQkFBa0IsQ0FBQztRQUM5RjtNQUVGLEtBQUtiLGFBQWEsQ0FBQ0MsTUFBTTtRQUN2Qk0sTUFBTSxHQUFHSCxJQUFJLENBQUNXLFFBQVEsQ0FBQyxNQUFNLEVBQUVELHFCQUFxQixFQUFFQSxxQkFBcUIsR0FBR0Qsa0JBQWtCLENBQUM7UUFDakc7O01BRUY7TUFDQTtRQUNFO0lBQ0o7RUFDRjtFQUVBLE9BQU87SUFBRVAsR0FBRztJQUFFQztFQUFPLENBQUM7QUFDeEI7QUFFQSxTQUFTUyxpQkFBaUJBLENBQUNDLEdBQVcsRUFBRVosTUFBYyxFQUFFYSxRQUF1QixFQUE0QjtFQUN6RyxJQUFJQyxXQUFXO0VBQ2YsQ0FBQztJQUFFZCxNQUFNO0lBQUVlLEtBQUssRUFBRUQ7RUFBWSxDQUFDLEdBQUcsSUFBQVYscUJBQVksRUFBQ1EsR0FBRyxFQUFFWixNQUFNLENBQUM7RUFFM0QsSUFBSVksR0FBRyxDQUFDSSxNQUFNLEdBQUdoQixNQUFNLEdBQUdjLFdBQVcsRUFBRTtJQUNyQyxNQUFNLElBQUlHLDJCQUFrQixDQUFDakIsTUFBTSxHQUFHYyxXQUFXLENBQUM7RUFDcEQ7RUFFQSxNQUFNZixJQUFJLEdBQUdhLEdBQUcsQ0FBQ00sS0FBSyxDQUFDbEIsTUFBTSxFQUFFQSxNQUFNLEdBQUdjLFdBQVcsQ0FBQztFQUNwRGQsTUFBTSxJQUFJYyxXQUFXO0VBRXJCLE1BQU07SUFBRWIsR0FBRztJQUFFQztFQUFPLENBQUMsR0FBR0osZUFBZSxDQUFDQyxJQUFJLENBQUM7RUFDN0MsT0FBTyxJQUFJb0IsZUFBTSxDQUFDLElBQUlDLHVCQUFnQixDQUFDbkIsR0FBRyxFQUFFQyxNQUFNLENBQUMsRUFBRUYsTUFBTSxDQUFDO0FBQzlEO0FBQUMsSUFBQXFCLFFBQUEsR0FBQUMsT0FBQSxDQUFBQyxPQUFBLEdBRWNaLGlCQUFpQjtBQUNoQ2EsTUFBTSxDQUFDRixPQUFPLEdBQUdYLGlCQUFpQiJ9
|