406 lines
13 KiB
Text
406 lines
13 KiB
Text
|
|
# Copyright 2025 The Chromium Authors
|
||
|
|
# Use of this source code is governed by a BSD-style license that can be
|
||
|
|
# found in the LICENSE file.
|
||
|
|
#
|
||
|
|
# Contributing to Chrome DevTools Protocol: https://goo.gle/devtools-contribution-guide-cdp
|
||
|
|
# This domain allows to emulate smart card readers and cards,
|
||
|
|
# bypassing the need for physical hardware.
|
||
|
|
|
||
|
|
experimental domain SmartCardEmulation
|
||
|
|
|
||
|
|
# Indicates the PC/SC error code.
|
||
|
|
#
|
||
|
|
# This maps to:
|
||
|
|
# PC/SC Lite: https://pcsclite.apdu.fr/api/group__ErrorCodes.html
|
||
|
|
# Microsoft: https://learn.microsoft.com/en-us/windows/win32/secauthn/authentication-return-values
|
||
|
|
type ResultCode extends string
|
||
|
|
enum
|
||
|
|
success
|
||
|
|
removed-card
|
||
|
|
reset-card
|
||
|
|
unpowered-card
|
||
|
|
unresponsive-card
|
||
|
|
unsupported-card
|
||
|
|
reader-unavailable
|
||
|
|
sharing-violation
|
||
|
|
not-transacted
|
||
|
|
no-smartcard
|
||
|
|
proto-mismatch
|
||
|
|
system-cancelled
|
||
|
|
not-ready
|
||
|
|
cancelled
|
||
|
|
insufficient-buffer
|
||
|
|
invalid-handle
|
||
|
|
invalid-parameter
|
||
|
|
invalid-value
|
||
|
|
no-memory
|
||
|
|
timeout
|
||
|
|
unknown-reader
|
||
|
|
unsupported-feature
|
||
|
|
no-readers-available
|
||
|
|
service-stopped
|
||
|
|
no-service
|
||
|
|
comm-error
|
||
|
|
internal-error
|
||
|
|
server-too-busy
|
||
|
|
unexpected
|
||
|
|
shutdown
|
||
|
|
|
||
|
|
# Maps to SCARD_E_UNKNOWN_CARD.
|
||
|
|
# TODO(crbug.com/472114998): Rename Mojo's kUnknownError to kUnknownCard to match.
|
||
|
|
unknown-card
|
||
|
|
|
||
|
|
# Error code that is not mapped in this enum.
|
||
|
|
unknown
|
||
|
|
|
||
|
|
# Maps to the |SCARD_SHARE_*| values.
|
||
|
|
type ShareMode extends string
|
||
|
|
enum
|
||
|
|
shared
|
||
|
|
exclusive
|
||
|
|
direct
|
||
|
|
|
||
|
|
# Indicates what the reader should do with the card.
|
||
|
|
type Disposition extends string
|
||
|
|
enum
|
||
|
|
leave-card
|
||
|
|
reset-card
|
||
|
|
unpower-card
|
||
|
|
eject-card
|
||
|
|
|
||
|
|
# Maps to |SCARD_*| connection state values.
|
||
|
|
type ConnectionState extends string
|
||
|
|
enum
|
||
|
|
absent
|
||
|
|
present
|
||
|
|
swallowed
|
||
|
|
powered
|
||
|
|
negotiable
|
||
|
|
specific
|
||
|
|
|
||
|
|
# Maps to the |SCARD_STATE_*| flags.
|
||
|
|
type ReaderStateFlags extends object
|
||
|
|
properties
|
||
|
|
optional boolean unaware
|
||
|
|
optional boolean ignore
|
||
|
|
optional boolean changed
|
||
|
|
optional boolean unknown
|
||
|
|
optional boolean unavailable
|
||
|
|
optional boolean empty
|
||
|
|
optional boolean present
|
||
|
|
optional boolean exclusive
|
||
|
|
optional boolean inuse
|
||
|
|
optional boolean mute
|
||
|
|
optional boolean unpowered
|
||
|
|
|
||
|
|
# Maps to the |SCARD_PROTOCOL_*| flags.
|
||
|
|
type ProtocolSet extends object
|
||
|
|
properties
|
||
|
|
optional boolean t0
|
||
|
|
optional boolean t1
|
||
|
|
optional boolean raw
|
||
|
|
|
||
|
|
# Maps to the |SCARD_PROTOCOL_*| values.
|
||
|
|
type Protocol extends string
|
||
|
|
enum
|
||
|
|
t0
|
||
|
|
t1
|
||
|
|
raw
|
||
|
|
|
||
|
|
type ReaderStateIn extends object
|
||
|
|
properties
|
||
|
|
string reader
|
||
|
|
ReaderStateFlags currentState
|
||
|
|
integer currentInsertionCount
|
||
|
|
|
||
|
|
type ReaderStateOut extends object
|
||
|
|
properties
|
||
|
|
string reader
|
||
|
|
ReaderStateFlags eventState
|
||
|
|
integer eventCount
|
||
|
|
binary atr
|
||
|
|
|
||
|
|
# Enables the |SmartCardEmulation| domain.
|
||
|
|
command enable
|
||
|
|
|
||
|
|
# Disables the |SmartCardEmulation| domain.
|
||
|
|
command disable
|
||
|
|
|
||
|
|
# Reports the successful result of a |SCardEstablishContext| call.
|
||
|
|
#
|
||
|
|
# This maps to:
|
||
|
|
# PC/SC Lite: https://pcsclite.apdu.fr/api/group__API.html#gaa1b8970169fd4883a6dc4a8f43f19b67
|
||
|
|
# Microsoft: https://learn.microsoft.com/en-us/windows/win32/api/winscard/nf-winscard-scardestablishcontext
|
||
|
|
command reportEstablishContextResult
|
||
|
|
parameters
|
||
|
|
string requestId
|
||
|
|
integer contextId
|
||
|
|
|
||
|
|
# Reports the successful result of a |SCardReleaseContext| call.
|
||
|
|
#
|
||
|
|
# This maps to:
|
||
|
|
# PC/SC Lite: https://pcsclite.apdu.fr/api/group__API.html#ga6aabcba7744c5c9419fdd6404f73a934
|
||
|
|
# Microsoft: https://learn.microsoft.com/en-us/windows/win32/api/winscard/nf-winscard-scardreleasecontext
|
||
|
|
command reportReleaseContextResult
|
||
|
|
parameters
|
||
|
|
string requestId
|
||
|
|
|
||
|
|
# Reports the successful result of a |SCardListReaders| call.
|
||
|
|
#
|
||
|
|
# This maps to:
|
||
|
|
# PC/SC Lite: https://pcsclite.apdu.fr/api/group__API.html#ga93b07815789b3cf2629d439ecf20f0d9
|
||
|
|
# Microsoft: https://learn.microsoft.com/en-us/windows/win32/api/winscard/nf-winscard-scardlistreadersa
|
||
|
|
command reportListReadersResult
|
||
|
|
parameters
|
||
|
|
string requestId
|
||
|
|
array of string readers
|
||
|
|
|
||
|
|
# Reports the successful result of a |SCardGetStatusChange| call.
|
||
|
|
#
|
||
|
|
# This maps to:
|
||
|
|
# PC/SC Lite: https://pcsclite.apdu.fr/api/group__API.html#ga33247d5d1257d59e55647c3bb717db24
|
||
|
|
# Microsoft: https://learn.microsoft.com/en-us/windows/win32/api/winscard/nf-winscard-scardgetstatuschangea
|
||
|
|
command reportGetStatusChangeResult
|
||
|
|
parameters
|
||
|
|
string requestId
|
||
|
|
array of ReaderStateOut readerStates
|
||
|
|
|
||
|
|
# Reports the result of a |SCardBeginTransaction| call.
|
||
|
|
# On success, this creates a new transaction object.
|
||
|
|
#
|
||
|
|
# This maps to:
|
||
|
|
# PC/SC Lite: https://pcsclite.apdu.fr/api/group__API.html#gaddb835dce01a0da1d6ca02d33ee7d861
|
||
|
|
# Microsoft: https://learn.microsoft.com/en-us/windows/win32/api/winscard/nf-winscard-scardbegintransaction
|
||
|
|
command reportBeginTransactionResult
|
||
|
|
parameters
|
||
|
|
string requestId
|
||
|
|
integer handle
|
||
|
|
|
||
|
|
# Reports the successful result of a call that returns only a result code.
|
||
|
|
# Used for: |SCardCancel|, |SCardDisconnect|, |SCardSetAttrib|, |SCardEndTransaction|.
|
||
|
|
#
|
||
|
|
# This maps to:
|
||
|
|
# 1. SCardCancel
|
||
|
|
# PC/SC Lite: https://pcsclite.apdu.fr/api/group__API.html#gaacbbc0c6d6c0cbbeb4f4debf6fbeeee6
|
||
|
|
# Microsoft: https://learn.microsoft.com/en-us/windows/win32/api/winscard/nf-winscard-scardcancel
|
||
|
|
#
|
||
|
|
# 2. SCardDisconnect
|
||
|
|
# PC/SC Lite: https://pcsclite.apdu.fr/api/group__API.html#ga4be198045c73ec0deb79e66c0ca1738a
|
||
|
|
# Microsoft: https://learn.microsoft.com/en-us/windows/win32/api/winscard/nf-winscard-scarddisconnect
|
||
|
|
#
|
||
|
|
# 3. SCardSetAttrib
|
||
|
|
# PC/SC Lite: https://pcsclite.apdu.fr/api/group__API.html#ga060f0038a4ddfd5dd2b8fadf3c3a2e4f
|
||
|
|
# Microsoft: https://learn.microsoft.com/en-us/windows/win32/api/winscard/nf-winscard-scardsetattrib
|
||
|
|
#
|
||
|
|
# 4. SCardEndTransaction
|
||
|
|
# PC/SC Lite: https://pcsclite.apdu.fr/api/group__API.html#gae8742473b404363e5c587f570d7e2f3b
|
||
|
|
# Microsoft: https://learn.microsoft.com/en-us/windows/win32/api/winscard/nf-winscard-scardendtransaction
|
||
|
|
command reportPlainResult
|
||
|
|
parameters
|
||
|
|
string requestId
|
||
|
|
|
||
|
|
# Reports the successful result of a |SCardConnect| call.
|
||
|
|
#
|
||
|
|
# This maps to:
|
||
|
|
# PC/SC Lite: https://pcsclite.apdu.fr/api/group__API.html#ga4e515829752e0a8dbc4d630696a8d6a5
|
||
|
|
# Microsoft: https://learn.microsoft.com/en-us/windows/win32/api/winscard/nf-winscard-scardconnecta
|
||
|
|
command reportConnectResult
|
||
|
|
parameters
|
||
|
|
string requestId
|
||
|
|
integer handle
|
||
|
|
optional Protocol activeProtocol
|
||
|
|
|
||
|
|
# Reports the successful result of a call that sends back data on success.
|
||
|
|
# Used for |SCardTransmit|, |SCardControl|, and |SCardGetAttrib|.
|
||
|
|
#
|
||
|
|
# This maps to:
|
||
|
|
# 1. SCardTransmit
|
||
|
|
# PC/SC Lite: https://pcsclite.apdu.fr/api/group__API.html#ga9a2d77242a271310269065e64633ab99
|
||
|
|
# Microsoft: https://learn.microsoft.com/en-us/windows/win32/api/winscard/nf-winscard-scardtransmit
|
||
|
|
#
|
||
|
|
# 2. SCardControl
|
||
|
|
# PC/SC Lite: https://pcsclite.apdu.fr/api/group__API.html#gac3454d4657110fd7f753b2d3d8f4e32f
|
||
|
|
# Microsoft: https://learn.microsoft.com/en-us/windows/win32/api/winscard/nf-winscard-scardcontrol
|
||
|
|
#
|
||
|
|
# 3. SCardGetAttrib
|
||
|
|
# PC/SC Lite: https://pcsclite.apdu.fr/api/group__API.html#gaacfec51917255b7a25b94c5104961602
|
||
|
|
# Microsoft: https://learn.microsoft.com/en-us/windows/win32/api/winscard/nf-winscard-scardgetattrib
|
||
|
|
command reportDataResult
|
||
|
|
parameters
|
||
|
|
string requestId
|
||
|
|
binary data
|
||
|
|
|
||
|
|
# Reports the successful result of a |SCardStatus| call.
|
||
|
|
#
|
||
|
|
# This maps to:
|
||
|
|
# PC/SC Lite: https://pcsclite.apdu.fr/api/group__API.html#gae49c3c894ad7ac12a5b896bde70d0382
|
||
|
|
# Microsoft: https://learn.microsoft.com/en-us/windows/win32/api/winscard/nf-winscard-scardstatusa
|
||
|
|
command reportStatusResult
|
||
|
|
parameters
|
||
|
|
string requestId
|
||
|
|
string readerName
|
||
|
|
ConnectionState state
|
||
|
|
binary atr
|
||
|
|
optional Protocol protocol
|
||
|
|
|
||
|
|
# Reports an error result for the given request.
|
||
|
|
command reportError
|
||
|
|
parameters
|
||
|
|
string requestId
|
||
|
|
ResultCode resultCode
|
||
|
|
|
||
|
|
# Fired when |SCardEstablishContext| is called.
|
||
|
|
#
|
||
|
|
# This maps to:
|
||
|
|
# PC/SC Lite: https://pcsclite.apdu.fr/api/group__API.html#gaa1b8970169fd4883a6dc4a8f43f19b67
|
||
|
|
# Microsoft: https://learn.microsoft.com/en-us/windows/win32/api/winscard/nf-winscard-scardestablishcontext
|
||
|
|
event establishContextRequested
|
||
|
|
parameters
|
||
|
|
string requestId
|
||
|
|
|
||
|
|
# Fired when |SCardReleaseContext| is called.
|
||
|
|
#
|
||
|
|
# This maps to:
|
||
|
|
# PC/SC Lite: https://pcsclite.apdu.fr/api/group__API.html#ga6aabcba7744c5c9419fdd6404f73a934
|
||
|
|
# Microsoft: https://learn.microsoft.com/en-us/windows/win32/api/winscard/nf-winscard-scardreleasecontext
|
||
|
|
event releaseContextRequested
|
||
|
|
parameters
|
||
|
|
string requestId
|
||
|
|
integer contextId
|
||
|
|
|
||
|
|
# Fired when |SCardListReaders| is called.
|
||
|
|
#
|
||
|
|
# This maps to:
|
||
|
|
# PC/SC Lite: https://pcsclite.apdu.fr/api/group__API.html#ga93b07815789b3cf2629d439ecf20f0d9
|
||
|
|
# Microsoft: https://learn.microsoft.com/en-us/windows/win32/api/winscard/nf-winscard-scardlistreadersa
|
||
|
|
event listReadersRequested
|
||
|
|
parameters
|
||
|
|
string requestId
|
||
|
|
integer contextId
|
||
|
|
|
||
|
|
# Fired when |SCardGetStatusChange| is called. Timeout is specified in milliseconds.
|
||
|
|
#
|
||
|
|
# This maps to:
|
||
|
|
# PC/SC Lite: https://pcsclite.apdu.fr/api/group__API.html#ga33247d5d1257d59e55647c3bb717db24
|
||
|
|
# Microsoft: https://learn.microsoft.com/en-us/windows/win32/api/winscard/nf-winscard-scardgetstatuschangea
|
||
|
|
event getStatusChangeRequested
|
||
|
|
parameters
|
||
|
|
string requestId
|
||
|
|
integer contextId
|
||
|
|
array of ReaderStateIn readerStates
|
||
|
|
|
||
|
|
# in milliseconds, if absent, it means "infinite"
|
||
|
|
optional integer timeout
|
||
|
|
|
||
|
|
# Fired when |SCardCancel| is called.
|
||
|
|
#
|
||
|
|
# This maps to:
|
||
|
|
# PC/SC Lite: https://pcsclite.apdu.fr/api/group__API.html#gaacbbc0c6d6c0cbbeb4f4debf6fbeeee6
|
||
|
|
# Microsoft: https://learn.microsoft.com/en-us/windows/win32/api/winscard/nf-winscard-scardcancel
|
||
|
|
event cancelRequested
|
||
|
|
parameters
|
||
|
|
string requestId
|
||
|
|
integer contextId
|
||
|
|
|
||
|
|
# Fired when |SCardConnect| is called.
|
||
|
|
#
|
||
|
|
# This maps to:
|
||
|
|
# PC/SC Lite: https://pcsclite.apdu.fr/api/group__API.html#ga4e515829752e0a8dbc4d630696a8d6a5
|
||
|
|
# Microsoft: https://learn.microsoft.com/en-us/windows/win32/api/winscard/nf-winscard-scardconnecta
|
||
|
|
event connectRequested
|
||
|
|
parameters
|
||
|
|
string requestId
|
||
|
|
integer contextId
|
||
|
|
string reader
|
||
|
|
ShareMode shareMode
|
||
|
|
ProtocolSet preferredProtocols
|
||
|
|
|
||
|
|
# Fired when |SCardDisconnect| is called.
|
||
|
|
#
|
||
|
|
# This maps to:
|
||
|
|
# PC/SC Lite: https://pcsclite.apdu.fr/api/group__API.html#ga4be198045c73ec0deb79e66c0ca1738a
|
||
|
|
# Microsoft: https://learn.microsoft.com/en-us/windows/win32/api/winscard/nf-winscard-scarddisconnect
|
||
|
|
event disconnectRequested
|
||
|
|
parameters
|
||
|
|
string requestId
|
||
|
|
integer handle
|
||
|
|
Disposition disposition
|
||
|
|
|
||
|
|
# Fired when |SCardTransmit| is called.
|
||
|
|
#
|
||
|
|
# This maps to:
|
||
|
|
# PC/SC Lite: https://pcsclite.apdu.fr/api/group__API.html#ga9a2d77242a271310269065e64633ab99
|
||
|
|
# Microsoft: https://learn.microsoft.com/en-us/windows/win32/api/winscard/nf-winscard-scardtransmit
|
||
|
|
event transmitRequested
|
||
|
|
parameters
|
||
|
|
string requestId
|
||
|
|
integer handle
|
||
|
|
binary data
|
||
|
|
optional Protocol protocol
|
||
|
|
|
||
|
|
# Fired when |SCardControl| is called.
|
||
|
|
#
|
||
|
|
# This maps to:
|
||
|
|
# PC/SC Lite: https://pcsclite.apdu.fr/api/group__API.html#gac3454d4657110fd7f753b2d3d8f4e32f
|
||
|
|
# Microsoft: https://learn.microsoft.com/en-us/windows/win32/api/winscard/nf-winscard-scardcontrol
|
||
|
|
event controlRequested
|
||
|
|
parameters
|
||
|
|
string requestId
|
||
|
|
integer handle
|
||
|
|
integer controlCode
|
||
|
|
binary data
|
||
|
|
|
||
|
|
# Fired when |SCardGetAttrib| is called.
|
||
|
|
#
|
||
|
|
# This maps to:
|
||
|
|
# PC/SC Lite: https://pcsclite.apdu.fr/api/group__API.html#gaacfec51917255b7a25b94c5104961602
|
||
|
|
# Microsoft: https://learn.microsoft.com/en-us/windows/win32/api/winscard/nf-winscard-scardgetattrib
|
||
|
|
event getAttribRequested
|
||
|
|
parameters
|
||
|
|
string requestId
|
||
|
|
integer handle
|
||
|
|
integer attribId
|
||
|
|
|
||
|
|
# Fired when |SCardSetAttrib| is called.
|
||
|
|
#
|
||
|
|
# This maps to:
|
||
|
|
# PC/SC Lite: https://pcsclite.apdu.fr/api/group__API.html#ga060f0038a4ddfd5dd2b8fadf3c3a2e4f
|
||
|
|
# Microsoft: https://learn.microsoft.com/en-us/windows/win32/api/winscard/nf-winscard-scardsetattrib
|
||
|
|
event setAttribRequested
|
||
|
|
parameters
|
||
|
|
string requestId
|
||
|
|
integer handle
|
||
|
|
integer attribId
|
||
|
|
binary data
|
||
|
|
|
||
|
|
# Fired when |SCardStatus| is called.
|
||
|
|
#
|
||
|
|
# This maps to:
|
||
|
|
# PC/SC Lite: https://pcsclite.apdu.fr/api/group__API.html#gae49c3c894ad7ac12a5b896bde70d0382
|
||
|
|
# Microsoft: https://learn.microsoft.com/en-us/windows/win32/api/winscard/nf-winscard-scardstatusa
|
||
|
|
event statusRequested
|
||
|
|
parameters
|
||
|
|
string requestId
|
||
|
|
integer handle
|
||
|
|
|
||
|
|
# Fired when |SCardBeginTransaction| is called.
|
||
|
|
#
|
||
|
|
# This maps to:
|
||
|
|
# PC/SC Lite: https://pcsclite.apdu.fr/api/group__API.html#gaddb835dce01a0da1d6ca02d33ee7d861
|
||
|
|
# Microsoft: https://learn.microsoft.com/en-us/windows/win32/api/winscard/nf-winscard-scardbegintransaction
|
||
|
|
event beginTransactionRequested
|
||
|
|
parameters
|
||
|
|
string requestId
|
||
|
|
integer handle
|
||
|
|
|
||
|
|
# Fired when |SCardEndTransaction| is called.
|
||
|
|
#
|
||
|
|
# This maps to:
|
||
|
|
# PC/SC Lite: https://pcsclite.apdu.fr/api/group__API.html#gae8742473b404363e5c587f570d7e2f3b
|
||
|
|
# Microsoft: https://learn.microsoft.com/en-us/windows/win32/api/winscard/nf-winscard-scardendtransaction
|
||
|
|
event endTransactionRequested
|
||
|
|
parameters
|
||
|
|
string requestId
|
||
|
|
integer handle
|
||
|
|
Disposition disposition
|