Keyple C++
0.9.0
Keyple, an Open Source SDK for Ticketing
|
void prepareRehabilitate()
Definition: PoTransaction.cpp:1370
virtual const std::string & getName() const =0
std::set< std::string > nativeReadersNames
Definition: PcscPluginImpl.h:53
std::shared_ptr< std::set< int > > getSuccessfulSelectionStatusCodes() const
Definition: SeSelector.cpp:151
static const int SFI_MIN
Definition: CalypsoPoUtils.h:67
virtual std::string getAtrRegex()
Definition: SeSelector.cpp:190
Definition: PcscPluginFactory.h:32
DefaultSelectionsRequest(const std::vector< std::shared_ptr< SeRequest >> &selectionSeRequests, const MultiSeRequestProcessing &multiSeRequestProcessing, const ChannelControl &channelControl)
Definition: DefaultSelectionsRequest.cpp:24
Exception(const std::string &message, const std::exception cause)
Definition: Exception.h:39
Definition: CalypsoPoCloseSecureSessionException.h:37
Byte(const Byte &b)
Definition: Byte.h:83
Definition: DecreaseRespPars.h:41
uint8_t getSfi() const
Definition: DecreaseCmdBuild.cpp:84
Definition: CalypsoNoSamResourceAvailableException.h:32
uint8_t getSoftwareRevision() const
Definition: CalypsoPo.cpp:299
bool isSuccessful() const
Definition: ApduResponse.cpp:55
const std::vector< uint8_t > & getDfName() const
Definition: GetDataFciRespPars.cpp:182
virtual ~ReaderPlugin()=default
static const int SEL_SFI_OFFSET
Definition: CalypsoPoUtils.h:113
ObservableReader::NotificationMode NotificationMode
Definition: AbstractLocalReader.cpp:58
const std::map< int, std::shared_ptr< StatusProperties > > & getStatusTable() const override
Definition: GiveRandomRespPars.cpp:57
bool hasFci() const
Definition: AbstractMatchingSe.cpp:58
bool operator==(const ApduResponse &o) const
Definition: ApduResponse.cpp:86
friend SamSelector
Definition: SamSelector.h:53
virtual void removeSe()=0
Definition: StubReader.h:25
const std::vector< uint8_t > getDebitTimeBytes() const
Definition: SvDebitLogRecord.cpp:47
uint8_t getSfi() const
Definition: UpdateRecordCmdBuild.cpp:72
std::shared_ptr< To > reinterpret_pointer_cast(std::shared_ptr< From > const &ptr) noexcept
Definition: KeypleStd.h:28
CalypsoPoTransactionIllegalStateException(const std::string &message)
Definition: CalypsoPoTransactionIllegalStateException.h:34
Definition: WaitForSeRemoval.h:40
std::shared_ptr< SamReadCeilingsRespPars > createResponseParser(std::shared_ptr< ApduResponse > apduResponse) override
Definition: SamReadCeilingsCmdBuild.cpp:69
void closeLogicalAndPhysicalChannels()
Definition: AbstractLocalReader.cpp:615
static const CalypsoSamCommand DIGEST_INIT
Definition: CalypsoSamCommand.h:43
Definition: PoTransaction.h:184
void prepareSelectFile(const std::vector< uint8_t > &lid)
Definition: PoSelectionRequest.cpp:69
DigestUpdateCmdBuild(const SamRevision &revision, const bool encryptedSession, const std::vector< uint8_t > &digestData)
Definition: DigestUpdateCmdBuild.cpp:33
static const std::vector< uint8_t > getSvGetData()
Definition: CalypsoPoUtils.cpp:650
std::shared_ptr< StubPluginImpl > mStubPlugin
Definition: StubPoolPluginImpl.h:46
Thread()
Definition: Thread.h:35
void onDeactivate()
Definition: AbstractObservableState.cpp:74
Definition: SeSelector.h:360
DigestInitRespPars(const std::shared_ptr< ApduResponse > response, DigestInitCmdBuild *builder)
Definition: DigestInitRespPars.cpp:72
Definition: OpenSession24RespPars.h:37
Definition: CalypsoSamCommandException.h:35
PoTransaction::SvSettings::Operation Operation
Definition: PoCommandManager.h:31
Definition: IllegalArgumentException.h:22
bool wasChannelPreviouslyOpen() const
Definition: SeResponse.cpp:37
const std::map< uint8_t, std::shared_ptr< ElementaryFile > > & getAllFiles() const
Definition: CalypsoPo.cpp:368
virtual void addHexCommand(const std::string &command, const std::string &response)
Definition: StubSecureElement.cpp:45
std::set< std::string > getReaderGroupReferences() override
Definition: StubPoolPluginImpl.cpp:51
static const SamRevision & valueOf(const std::string &name)
Definition: SamRevision.cpp:77
static const std::string SETTING_MODE_EXCLUSIVE
Definition: PcscReader.h:44
static const int SEL_DATA_REF_OFFSET
Definition: CalypsoPoUtils.h:125
Definition: PluginEvent.h:47
Definition: AbstractMatchingSe.h:43
void onEvent(const InternalEvent event) override
Definition: WaitForSeProcessing.cpp:33
std::shared_ptr< DigestCloseRespPars > createResponseParser(const std::shared_ptr< ApduResponse > apduResponse) override
Definition: DigestCloseCmdBuild.cpp:53
Definition: CalypsoSam.h:43
void prepareWriteRecord(const uint8_t sfi, const uint8_t recordNumber, const std::vector< uint8_t > &recordData)
Definition: PoTransaction.cpp:1129
virtual ~SecureSession()=default
CalypsoSvAuthenticationException(const std::string &message, const std::exception &cause)
Definition: CalypsoSvAuthenticationException.h:44
InnerEnum
Definition: ObservableReader.h:83
static std::string uint16ToHexString(const uint16_t v)
Definition: stringhelper.h:118
static const int SEL_NKEY_LENGTH
Definition: CalypsoPoUtils.h:121
void trace(const std::string &format, Args... args)
Definition: Logger.h:72
AbstractSamResponseParser(const std::shared_ptr< ApduResponse > response, AbstractSamCommandBuilder< AbstractSamResponseParser > *builder)
Definition: AbstractSamResponseParser.cpp:57
CalypsoSamIllegalParameterException(const std::string &message, const std::shared_ptr< CalypsoSamCommand > command, const int statusCode)
Definition: CalypsoSamIllegalParameterException.h:39
void countDown(void)
Definition: CountDownLatch.h:46
std::map< K, V >::iterator iterator
Definition: ConcurrentMap.h:41
Definition: StubPoolPluginImpl.h:41
const PoClass & getPoClass() const
Definition: CalypsoPo.cpp:324
virtual void removeObserver(const std::shared_ptr< PluginObserver > observer)=0
Definition: CardCipherPinCmdBuild.h:47
virtual bool isSessionBufferUsed() const override
Definition: SvDebitCmdBuild.cpp:111
VerifyPinRespPars(std::shared_ptr< ApduResponse > response, VerifyPinCmdBuild *builder)
Definition: VerifyPinRespPars.cpp:88
static const CalypsoSamCommand CARD_CIPHER_PIN
Definition: CalypsoSamCommand.h:78
Definition: AbstractPoCommandBuilder.h:33
AbstractApduResponseParser(const AbstractApduResponseParser &aarp)=default
void addObserver(const std::shared_ptr< ObservableReader::ReaderObserver > observer) final
Definition: AbstractObservableLocalReader.cpp:244
bool isSessionKvcAuthorized(const uint8_t kvc) const
Definition: PoSecuritySettings.cpp:109
size_type erase(const K &k)
Definition: ConcurrentMap.h:112
std::shared_ptr< InvalidateRespPars > createResponseParser(std::shared_ptr< ApduResponse > apduResponse) override
Definition: InvalidateCmdBuild.cpp:39
PoSelectorBuilder & seProtocol(const std::shared_ptr< SeProtocol > seProtocol) override
Definition: PoSelector.cpp:59
void setParameters(const std::map< const std::string, const std::string > ¶meters)
Definition: AbstractSeProxyComponent.cpp:28
static std::string uint8ToHexString(const uint8_t *v, const int s)
Definition: stringhelper.h:107
Definition: PoTransaction.h:161
Definition: SvUndebitCmdBuild.h:47
Definition: AbstractApduCommandBuilder.h:45
virtual ~AbstractPlugin()=default
ReadRecordsCmdBuild::ReadMode ReadMode
Definition: PoTransaction.cpp:117
const std::shared_ptr< AbstractObservableState > getCurrentState() const
Definition: ObservableReaderStateService.cpp:64
const std::map< int, std::shared_ptr< AbstractMatchingSe > > & getMatchingSelections() const
Definition: SelectionsResult.cpp:61
void prepareSvReadAllLogs()
Definition: PoTransaction.cpp:1344
void prepareCheckPinStatus()
Definition: PoTransaction.cpp:1198
std::ostream & operator<<(std::ostream &os, const AbstractMatchingSe &ams)
Definition: AbstractMatchingSe.cpp:89
MultiSeRequestProcessing
Definition: MultiSeRequestProcessing.h:25
std::shared_ptr< AbstractOpenSessionRespPars > createResponseParser(std::shared_ptr< ApduResponse > apduResponse) override
Definition: OpenSession24CmdBuild.cpp:75
std::set< std::string > _set
Definition: AbstractThreadedObservablePlugin.cpp:36
bool operator==(const EventType &o) const
Definition: PluginEvent.cpp:42
AbstractPoResponseParser(const AbstractPoResponseParser &arp)=default
const std::shared_ptr< ElementaryFile > getFileByLid(const uint16_t lid)
Definition: CalypsoPo.cpp:352
bool matches()
Definition: Matcher.cpp:45
Definition: CalypsoPoIllegalArgumentException.h:31
virtual ConcurrentMap< const std::string, std::shared_ptr< SeReader > > & initNativeReaders()=0
const std::string getStartupInfo() const
Definition: CalypsoPo.cpp:213
Definition: KeypleReaderIOException.h:39
const std::shared_ptr< FileHeader > getHeader() const
Definition: ElementaryFile.cpp:38
LogRead
Definition: PoTransaction.h:133
int getSvTNum() const
Definition: SvLoadLogRecord.cpp:109
virtual std::vector< std::shared_ptr< SeResponse > > processSeRequests(const std::vector< std::shared_ptr< SeRequest >> &seRequests, const MultiSeRequestProcessing &multiSeRequestProcessing, const ChannelControl &channelControl)=0
static const std::string SETTING_DISCONNECT_EJECT
Definition: PcscReader.h:50
PoSecuritySettingsBuilder & sessionDefaultKvc(const AccessLevel &sessionAccessLevel, const uint8_t kvc)
Definition: PoSecuritySettings.cpp:170
std::shared_ptr< SeSelector > build() override
Definition: SamSelector.cpp:150
const std::set< std::string > getReaderNames() const override
Definition: StubPoolPluginImpl.cpp:171
Definition: RuntimeException.h:22
bool operator!=(const FileOccurrence &o) const
Definition: SeSelector.cpp:62
void setParameter(const std::string &key, const std::string &value) override
Definition: StubPoolPluginImpl.cpp:194
Definition: KeypleReaderNotFoundException.h:31
SvReloadRespPars(std::shared_ptr< ApduResponse > response, SvReloadCmdBuild *builder)
Definition: SvReloadRespPars.cpp:82
virtual ~PluginFactory()=default
std::shared_ptr< SamGetChallengeRespPars > createResponseParser(const std::shared_ptr< ApduResponse > apduResponse) override
Definition: SamGetChallengeCmdBuild.cpp:52
std::shared_ptr< ReaderPlugin > mSamReaderPlugin
Definition: SamResourceManagerDefault.h:175
void closePhysicalChannel() override
Definition: PcscReaderImpl.cpp:129
std::map< K, V >::const_iterator const_iterator
Definition: ConcurrentMap.h:46
FileHeader::FileHeaderBuilder FileHeaderBuilder
Definition: FileHeader.cpp:26
std::shared_ptr< ReadRecordsRespPars > createResponseParser(std::shared_ptr< ApduResponse > apduResponse) override
Definition: ReadRecordsCmdBuild.cpp:67
virtual void setParameter(const std::string &key, const std::string &value)=0
Definition: ChangeKeyRespPars.h:37
Definition: IOException.h:22
Definition: SvCheckCmdBuild.h:39
AbstractApduResponseParser::StatusProperties StatusProperties
Definition: AppendRecordRespPars.cpp:39
AssertionError()
Definition: AssertionError.h:27
bool operator!=(const PoClass &o) const
Definition: PoClass.cpp:54
virtual void closePhysicalChannel()
Definition: StubSecureElement.cpp:40
DigestAuthenticateCmdBuild(const SamRevision &revision, const std::vector< uint8_t > &signature)
Definition: DigestAuthenticateCmdBuild.cpp:37
Definition: CardCipherPinRespPars.h:38
static bool startsWith(const std::vector< uint8_t > &source, const std::vector< uint8_t > &match)
Definition: AbstractLocalReader.cpp:512
bool isSePresentPing()
Definition: AbstractObservableLocalReader.cpp:192
Definition: CalypsoPoCommandException.h:31
const KeypleAssert & isTrue(const bool condition, const std::string &name) const
Definition: KeypleAssert.cpp:61
IOException(const std::string &message, const std::exception cause)
Definition: IOException.h:32
OpenSession31CmdBuild(const uint8_t keyIndex, const std::vector< uint8_t > &samChallenge, const uint8_t sfi, const uint8_t recordNumber)
Definition: OpenSession31CmdBuild.cpp:33
virtual std::shared_ptr< SeRequest > getSelectionRequest()
Definition: AbstractSeSelectionRequest.h:81
static const CalypsoSamCommand DIGEST_CLOSE
Definition: CalypsoSamCommand.h:58
virtual void setSeProtocolSetting(const std::map< std::shared_ptr< SeProtocol >, std::string > &protocolSetting)=0
virtual ~AbstractObservableState()=default
virtual const std::vector< uint8_t > & getATR()=0
void prepareSvReload(const int amount, const std::vector< uint8_t > &date, const std::vector< uint8_t > &time, const std::vector< uint8_t > &free)
Definition: PoTransaction.cpp:1238
void prepareSvGet(const SvSettings::Operation &svOperation, const SvSettings::Action &svAction)
Definition: PoTransaction.cpp:1209
Definition: SelectDiversifierCmdBuild.h:41
SeCommonProtocols::SeCommonProtocol SeCommonProtocol
Definition: StubProtocolSetting.h:46
Exception()
Definition: Exception.h:29
virtual const std::set< std::string > getReaderNames() const =0
std::shared_ptr< SamResourceManagerDefault::ReaderObserver > mReaderObserver
Definition: SamResourceManagerDefault.h:131
void unplugStubPoolReader(const std::string &groupReference) override
Definition: StubPoolPluginImpl.cpp:90
virtual const std::string & getName() const =0
const std::vector< uint8_t > & getData() const
Definition: AppendRecordCmdBuild.cpp:73
ObservableReaderNotifier()
Definition: ObservableReaderNotifier.h:37
static const EventType TIMEOUT_ERROR
Definition: ReaderEvent.h:53
NoSuchMethodException(const std::string &message, const std::exception cause)
Definition: NoSuchMethodException.h:32
Integer(int value)
Definition: Integer.h:55
TagClass
Definition: Tag.h:54
KeyplePluginInstantiationException(const std::string &msg)
Definition: KeyplePluginInstantiationException.h:35
IOException(const std::string &message)
Definition: IOException.h:27
const std::map< const std::string, const std::string > & getParameters() const override
Definition: StubPoolPluginImpl.cpp:189
InstantiationException(const std::string &message, const std::exception cause)
Definition: InstantiationException.h:32
Definition: WaitForStartDetect.h:40
Definition: CloseSessionRespPars.h:41
InvalidateCmdBuild(const PoClass &poClass)
Definition: InvalidateCmdBuild.cpp:28
Definition: AbstractOpenSessionCmdBuild.h:34
SvDebitLogRecord(const std::vector< uint8_t > &poResponse, const int offset)
Definition: SvDebitLogRecord.cpp:30
std::unique_ptr< Pattern > mPattern
Definition: SamResourceManagerDefault.h:100
GetDataFciCmdBuild(PoClass poClass)
Definition: GetDataFciCmdBuild.cpp:32
SeCommonProtocols::SeCommonProtocol SeCommonProtocol
Definition: PcscProtocolSetting.h:44
virtual const std::string & getPluginName() const =0
virtual ~AbstractIso7816CommandBuilder()=default
virtual ~AbstractSeProxyComponent()=default
const std::vector< uint8_t > getSignatureLo() const
Definition: SvUndebitRespPars.cpp:100
const std::vector< uint8_t > & getSvGetCommandHeader() const
Definition: SvGetRespPars.cpp:125
Definition: CalypsoSamAccessForbiddenException.h:23
static const CalypsoSamCommand READ_KEY_PARAMETERS
Definition: CalypsoSamCommand.h:93
KeyReference(const uint8_t kif, const uint8_t kvc)
Definition: KeyReference.cpp:19
std::shared_ptr< GetDataTraceRespPars > createResponseParser(std::shared_ptr< ApduResponse > apduResponse) override
Definition: GetDataTraceCmdBuild.cpp:37
Operation
Definition: PoTransaction.h:103
Definition: PcscTerminal.h:37
virtual std::shared_ptr< ReaderEvent > processSeInserted()
Definition: AbstractObservableLocalReader.cpp:92
Definition: AbstractIso7816CommandBuilder.h:46
std::ostream & operator<<(std::ostream &os, const PoClass &pc)
Definition: PoClass.cpp:69
StringBuilder * append(const std::string &toAppend)
Definition: stringbuilder.h:41
const std::string & getName() const override
Definition: AbstractReader.h:111
void freeSamResource(const SeResource< CalypsoSam > &samResource) override
Definition: SamResourceManagerDefault.cpp:192
static const std::shared_ptr< SeCommonProtocol > PROTOCOL_JIS_6319_4
Definition: SeCommonProtocols.h:93
SeSelector::SeSelectorBuilder SeSelectorBuilder
Definition: PoSelector.cpp:29
std::pair< iterator, bool > insert(const std::pair< const K, V > &val)
Definition: ConcurrentMap.h:74
#define KEYPLECALYPSO_API
Definition: KeypleCalypsoExport.h:24
void stop() override
Definition: CardAbsentPingMonitoringJob.cpp:83
Definition: StubPluginImpl.h:44
Definition: SelectFileRespPars.h:54
void releaseReader(std::shared_ptr< SeReader > seReader) override
Definition: StubPoolPluginImpl.cpp:138
NotificationMode(const std::string &nameValue, InnerEnum innerEnum, const std::string &name)
Definition: ObservableReader.cpp:37
Definition: SamResourceManager.h:38
void processOpening(const SessionSetting::AccessLevel &accessLevel)
Definition: PoTransaction.cpp:562
bool isDeselectRatificationSupported() const
Definition: CalypsoPo.cpp:264
bool operator==(const SeResponse &o) const
Definition: SeResponse.cpp:96
NegativeBalance
Definition: PoTransaction.h:148
virtual const std::shared_ptr< SeReader > getReader(const std::string &name)=0
std::string toString()
Definition: stringbuilder.h:66
SelectFileRespPars(std::shared_ptr< ApduResponse > response, SelectFileCmdBuild *builder)
Definition: SelectFileRespPars.cpp:71
Definition: AbstractApduResponseParser.h:44
Definition: ObservablePlugin.h:41
TLV(const std::vector< uint8_t > &binary)
Definition: TLV.cpp:32
CalypsoSamIllegalArgumentException(const std::string &message, const std::shared_ptr< CalypsoSamCommand > command)
Definition: CalypsoSamIllegalArgumentException.h:38
void switchState(const MonitoringState stateId)
Definition: ObservableReaderStateService.cpp:36
PoSecuritySettingsBuilder & svGetLogReadMode(const LogRead svGetLogReadMode)
Definition: PoSecuritySettings.cpp:200
KeypleRuntimeException(const std::string &message)
Definition: KeypleRuntimeException.h:39
virtual std::vector< uint8_t > processApdu(const std::vector< uint8_t > &apduIn)
Definition: StubSecureElement.cpp:66
static const EventType READER_DISCONNECTED
Definition: PluginEvent.h:57
int getBalance() const
Definition: SvLoadLogRecord.cpp:38
Definition: ProxyReader.h:46
const std::map< int, std::shared_ptr< StatusProperties > > & getStatusTable() const override
Definition: DigestCloseRespPars.cpp:61
int hashCode() override
Definition: Byte.h:139
virtual std::shared_ptr< SeResponse > processSeRequest(const std::shared_ptr< SeRequest > seRequest, const ChannelControl &channelControl) override
Definition: AbstractLocalReader.cpp:327
bool parse(std::shared_ptr< Tag > tag, int offset)
Definition: TLV.cpp:39
int getIncValue() const
Definition: IncreaseCmdBuild.cpp:95
friend AidSelector
Definition: SeSelector.h:195
TagType
Definition: Tag.h:46
virtual void checkStatus() const
Definition: AbstractApduResponseParser.cpp:93
bool operator==(const EventType &other) const
CalypsoPoPinException(const std::string &message, const std::shared_ptr< CalypsoPoCommand > command, const int statusCode)
Definition: CalypsoPoPinException.h:37
Definition: CardCipherPinCmdBuild.cpp:29
AtrFilter(const std::string &atrRegex)
Definition: SeSelector.cpp:180
StringBuilder(std::size_t capacity)
Definition: stringbuilder.h:31
bool isModificationsCounterInBytes() const
Definition: CalypsoPo.cpp:239
AbstractOpenSessionRespPars::SecureSession SecureSession
Definition: AbstractOpenSessionRespPars.cpp:56
void addMatchingSe(int selectionIndex, const std::shared_ptr< AbstractMatchingSe > matchingSe, bool isSelected)
Definition: SelectionsResult.cpp:31
AbstractSamResponseParser(const AbstractSamResponseParser &asrp)=default
Definition: SamReadEventCounterCmdBuild.h:41
Definition: SvDebitCmdBuild.cpp:28
void addSuccessfulStatusCode(int statusCode)
Definition: SeSelector.cpp:157
static const int EF_TYPE_CYCLIC
Definition: CalypsoPoUtils.h:106
Definition: CalypsoPoSecurityContextException.h:31
Definition: PoGetChallengeRespPars.h:41
std::shared_ptr< DecreaseRespPars > createResponseParser(std::shared_ptr< ApduResponse > apduResponse) override
Definition: DecreaseCmdBuild.cpp:73
std::shared_ptr< AbstractMonitoringJob > mMonitoringJob
Definition: AbstractObservableState.h:84
PcscTerminal(const std::string &name)
Definition: PcscTerminal.cpp:43
static std::vector< std::string > split(const std::string &source, char delimiter)
Definition: stringhelper.h:74
std::shared_ptr< SvDebitRespPars > createResponseParser(std::shared_ptr< ApduResponse > apduResponse) override
Definition: SvDebitCmdBuild.cpp:105
@ FIRST
Definition: SamReadKeyParametersCmdBuild.h:54
unsigned int m_count
Definition: CountDownLatch.h:65
uint8_t getSessionModification() const
Definition: CalypsoPo.cpp:304
Level
Definition: Logger.h:44
void setSamIdentifier(std::shared_ptr< SamIdentifier > samIdentifier)
Definition: SamResourceManager.cpp:82
Definition: SamRevision.h:33
Definition: RatificationCmdBuild.h:39
virtual bool isSessionBufferUsed() const override
Definition: OpenSession24CmdBuild.cpp:81
ConcurrentMap< const std::string, std::shared_ptr< SeReader > > & initNativeReaders() override
Definition: StubPluginImpl.cpp:171
std::shared_ptr< CardCipherPinRespPars > createResponseParser(std::shared_ptr< ApduResponse > apduResponse) override
Definition: CardCipherPinCmdBuild.cpp:79
const std::vector< uint8_t > & getContent() const
Definition: FileData.cpp:45
std::atomic< bool > mCancellationFlag
Definition: AbstractObservableState.h:111
std::string getVersion()
Definition: SeProxyService.cpp:94
#define KEYPLECOMMON_API
Definition: KeypleCommonExport.h:24
Definition: DefaultSelectionsResponse.h:37
void setParameter(const std::string &key, const std::string &value) override
Definition: PcscPluginImpl.cpp:57
Definition: CalypsoPoDataOutOfBoundsException.h:33
static const CalypsoSamCommand UNLOCK
Definition: CalypsoSamCommand.h:83
std::vector< uint8_t > & getData()
Definition: WriteRecordCmdBuild.cpp:80
std::ostream & operator<<(std::ostream &os, const std::shared_ptr< SeProtocol > &se)
Definition: SeProtocol.cpp:22
std::ostream & operator<<(std::ostream &os, const uint8_t v)
Definition: KeypleStd.h:34
void clear() noexcept
Definition: ConcurrentMap.h:146
const std::map< int, std::shared_ptr< StatusProperties > > & getStatusTable() const override
Definition: SelectDiversifierRespPars.cpp:64
Definition: PoSelector.h:52
bool isSessionBufferUsed() const override
Definition: SvReloadCmdBuild.cpp:114
const std::vector< uint8_t > getSamIdBytes() const
Definition: SvDebitLogRecord.cpp:80
virtual std::shared_ptr< T > createResponseParser(const std::shared_ptr< ApduResponse > apduResponse)=0
ConcurrentMap< const std::string, std::shared_ptr< SeReader > > & getReaders() override
Definition: StubPoolPluginImpl.cpp:177
Definition: CardGenerateKeyCmdBuild.h:47
StatusProperties(const std::string &information)
Definition: AbstractApduResponseParser.cpp:143
const std::string & getPluginName() const
Definition: AbstractReader.cpp:54
virtual ~ChangeKeyRespPars()=default
virtual ~ObservableReader()=default
RatificationMode mRatificationMode
Definition: PoSecuritySettings.h:80
Definition: KeypleRuntimeException.h:34
std::vector< std::shared_ptr< SeResponse > > transmitSeRequests(const std::vector< std::shared_ptr< SeRequest >> &seRequests, const MultiSeRequestProcessing &multiSeRequestProcessing, const ChannelControl &channelControl) override
Definition: AbstractReader.cpp:59
Definition: ObservableReaderNotifier.h:32
static const int FILE_TYPE_EF
Definition: CalypsoPoUtils.h:98
void stop() override
Definition: SmartInsertionMonitoringJob.cpp:78
NegativeBalance getSvNegativeBalance() const
Definition: PoSecuritySettings.cpp:126
const std::vector< uint8_t > & getBytes() const
Definition: ApduRequest.cpp:79
static const std::shared_ptr< SeCommonProtocol > PROTOCOL_MIFARE_UL
Definition: SeCommonProtocols.h:97
virtual uint8_t getInstructionByte() const =0
const std::string getDfName() const
Definition: CalypsoPo.cpp:189
const std::string toString() const
Definition: SvUndebitRespPars.cpp:105
virtual bool isSessionBufferUsed() const override
Definition: OpenSession10CmdBuild.cpp:80
static bool startsWith(const std::string &source, const std::string &value)
Definition: stringhelper.h:56
static const int SEL_TYPE_OFFSET
Definition: CalypsoPoUtils.h:114
PoSelectorBuilder()
Definition: PoSelector.cpp:47
#define KEYPLEPLUGINSTUB_API
Definition: KeyplePluginStubExport.h:24
ChangeKeyCmdBuild(const PoClass poClass, const uint8_t keyIndex, const std::vector< uint8_t > &cryptogram)
Definition: ChangeKeyCmdBuild.cpp:39
CalypsoPoIOException(const std::string &message, const std::exception &cause)
Definition: CalypsoPoIOException.h:40
Definition: AbstractApduResponseParser.h:39
void prepareIncreaseCounter(const uint8_t sfi, const uint8_t counterNumber, const int incValue)
Definition: PoTransaction.cpp:1150
static const CalypsoSamCommand SV_PREPARE_UNDEBIT
Definition: CalypsoSamCommand.h:123
AbstractSeProxyComponent(const std::string &name)
Definition: AbstractSeProxyComponent.cpp:21
Definition: GetDataTraceCmdBuild.h:44
Definition: SamIdentifier.h:37
IndexOutOfBoundsException(const std::string &message, const std::exception cause)
Definition: IndexOutOfBoundsException.h:32
Definition: AbstractPoCommandBuilder.h:34
CalypsoPoDataAccessException(const std::string &message, const std::shared_ptr< CalypsoPoCommand > command, const int statusCode)
Definition: CalypsoPoDataAccessException.h:38
std::shared_ptr< SamWriteKeyRespPars > createResponseParser(std::shared_ptr< ApduResponse > apduResponse) override
Definition: SamWriteKeyCmdBuild.cpp:54
PoSecuritySettingsBuilder & sessionDefaultKeyRecordNumber(const AccessLevel &sessionAccessLevel, const uint8_t keyRecordNumber)
Definition: PoSecuritySettings.cpp:178
uint32_t getSamId() const
Definition: SvLoadLogRecord.cpp:96
const std::map< int, std::shared_ptr< StatusProperties > > & getStatusTable() const override
Definition: WriteRecordRespPars.cpp:90
AbstractIso7816CommandBuilder(const std::shared_ptr< SeCommand > commandReference, const std::shared_ptr< ApduRequest > request)
Definition: AbstractIso7816CommandBuilder.cpp:32
static const int MAX_COUNTER_REC_NUMB
Definition: SamReadEventCounterCmdBuild.h:51
AbstractApduResponseParser::StatusProperties StatusProperties
Definition: SvDebitRespPars.h:35
virtual std::shared_ptr< ManagedSamResource > createSamResource(std::shared_ptr< SeReader > samReader)
Definition: SamResourceManager.cpp:38
SelectionStatus(std::shared_ptr< AnswerToReset > atr, std::shared_ptr< ApduResponse > fci, const bool hasMatched)
Definition: SelectionStatus.cpp:23
const std::map< int, std::shared_ptr< StatusProperties > > & getStatusTable() const override
Definition: SamGetChallengeRespPars.cpp:58
long long mThreadWaitTimeout
Definition: AbstractThreadedObservablePlugin.h:87
CalypsoPoRevokedException(const std::string &message)
Definition: CalypsoPoRevokedException.h:33
static std::shared_ptr< PcscPluginImpl > getInstance()
Definition: PcscPluginImpl.cpp:38
virtual void addSeProtocolSetting(std::shared_ptr< SeProtocol > seProtocol, const std::string &protocolRule)=0
static const CalypsoSamCommand SV_CHECK
Definition: CalypsoSamCommand.h:108
std::shared_ptr< DigestAuthenticateRespPars > createResponseParser(std::shared_ptr< ApduResponse > apduResponse) override
Definition: DigestAuthenticateCmdBuild.cpp:60
static const SamRevision NO_REV
Definition: SamRevision.h:53
Definition: AbstractMatchingSe.cpp:29
virtual ~Thread()
Definition: Thread.h:54
AbstractPlugin(const std::string &name)
Definition: AbstractPlugin.cpp:37
bool operator==(const Byte &other)
Definition: Byte.h:203
void openAndConnect(const std::string &protocol)
Definition: PcscTerminal.cpp:168
std::vector< char > parseOctetString(int tag, std::vector< int > rlen)
Definition: BerDecoder.h:130
Definition: AbstractLocalReader.h:54
virtual ~SmartInsertionReader()
Definition: SmartInsertionReader.h:31
AbstractObservableLocalReader * mReader
Definition: AbstractObservableState.h:96
const std::vector< uint8_t > & getData() const
Definition: UpdateRecordCmdBuild.cpp:82
void monitoringJob(AbstractObservableState *state, std::atomic< bool > &cancellationFlag)
Definition: CardAbsentPingMonitoringJob.cpp:33
std::shared_ptr< WriteRecordRespPars > createResponseParser(std::shared_ptr< ApduResponse > apduResponse) override
Definition: WriteRecordCmdBuild.cpp:59
static const CalypsoSamCommand SELECT_DIVERSIFIER
Definition: CalypsoSamCommand.h:33
std::shared_ptr< ReaderPlugin > registerPlugin(std::shared_ptr< PluginFactory > pluginFactory)
Definition: SeProxyService.cpp:34
const std::vector< uint8_t > & getSignatureLo() const
Definition: CloseSessionRespPars.cpp:101
SelectionsResult()
Definition: SelectionsResult.cpp:29
bool operator!=(const Tag &o) const
Definition: Tag.cpp:96
virtual std::string getName()
Definition: ObservableReader.cpp:50
virtual ~AbstractDefaultSelectionsRequest()
Definition: AbstractDefaultSelectionsRequest.h:52
Definition: SvReloadCmdBuild.h:45
int getLoadDate() const
Definition: SvLoadLogRecord.cpp:57
Definition: AbstractDefaultSelectionsRequest.cpp:19
static const std::shared_ptr< SeCommonProtocol > PROTOCOL_HSP
Definition: SeCommonProtocols.h:109
static std::unique_ptr< SamIdentifierBuilder > builder()
Definition: SamIdentifier.cpp:35
const std::string getApplicationSerialNumber() const
Definition: CalypsoPo.cpp:208
int getSamTNum() const
Definition: SvLoadLogRecord.cpp:123
static const CalypsoPoCommand READ_RECORDS
Definition: CalypsoPoCommand.h:55
SvPrepareOperationRespPars(const std::shared_ptr< ApduResponse > response, AbstractSamCommandBuilder< AbstractSamResponseParser > *builder)
Definition: SvPrepareOperationRespPars.cpp:71
std::pair< const K, V > value_type
Definition: ConcurrentMap.h:36
std::string replaceAll(const std::string &replacement) const
Definition: Matcher.cpp:50
StringBuilder * insert(std::size_t position, const T &toInsert)
Definition: stringbuilder.h:60
Operation getSvOperation() const
Definition: SvGetCmdBuild.cpp:57
static const std::shared_ptr< SeCommonProtocol > PROTOCOL_ISO15693
Definition: SeCommonProtocols.h:88
TagClass getTagClass() const
Definition: Tag.cpp:71
Definition: SeSelector.h:60
static const std::shared_ptr< SeCommonProtocol > PROTOCOL_NDEF
Definition: SeCommonProtocols.h:94
void terminateSeCommunication() override
Definition: AbstractObservableLocalReader.cpp:84
PoTransaction::SvSettings::Operation Operation
Definition: SvGetCmdBuild.h:39
virtual bool isPhysicalChannelOpen()
Definition: StubSecureElement.cpp:30
virtual std::vector< uint8_t > transmitApdu(const std::vector< uint8_t > &apduIn)=0
const std::shared_ptr< AbstractMatchingSe > getMatchingSe(int selectionIndex)
Definition: SelectionsResult.cpp:66
void restoreFiles()
Definition: CalypsoPo.cpp:425
KeyplePluginException(const std::string &msg)
Definition: KeyplePluginException.h:32
iterator end() noexcept
Definition: ConcurrentMap.h:181
virtual uint8_t getValue() const
Definition: PoClass.cpp:43
virtual std::shared_ptr< SelectionStatus > openLogicalChannel(std::shared_ptr< SeSelector > seSelector)
Definition: AbstractLocalReader.cpp:81
const std::vector< uint8_t > getSessionTerminalChallenge()
Definition: SamCommandProcessor.cpp:88
Definition: ReaderPoolPlugin.h:45
Action
Definition: PoTransaction.h:124
Definition: IllegalStateException.h:22
static const CalypsoSamCommand GIVE_RANDOM
Definition: CalypsoSamCommand.h:68
AbstractLocalReader(const std::string &pluginName, const std::string &readerName)
Definition: AbstractLocalReader.cpp:60
~ObservableReaderStateService()=default
RuntimeException(const std::string &message, const std::exception cause)
Definition: RuntimeException.h:32
Definition: CountDownLatch.h:20
static const RatificationMode mDefaultRatificationMode
Definition: PoSecuritySettings.h:54
RuntimeException(const std::string &message)
Definition: RuntimeException.h:27
Definition: NoSuchElementException.h:22
FileNotFoundException(const std::string &message)
Definition: FileNotFoundException.h:27
CalypsoPoCommandException(const std::string &message, const std::shared_ptr< CalypsoPoCommand > command, const int statusCode)
Definition: CalypsoPoCommandException.h:38
const std::map< int, std::shared_ptr< StatusProperties > > & getStatusTable() const override
Definition: SvCheckRespPars.cpp:69
const std::map< int, std::shared_ptr< StatusProperties > > & getStatusTable() const override
Definition: UpdateRecordRespPars.cpp:91
void setCounter(const uint8_t sfi, const int numCounter, const std::vector< uint8_t > &content)
Definition: CalypsoPo.cpp:388
void load(std::ifstream &inStream)
Definition: Properties.cpp:29
KeypleAllocationNoReaderException(const std::string &message, const std::exception &cause)
Definition: KeypleAllocationNoReaderException.h:33
virtual std::shared_ptr< AnswerToReset > getAtr() const
Definition: SelectionStatus.cpp:34
void openPhysicalChannel() override
Definition: PcscReaderImpl.cpp:429
virtual ~AbstractDefaultSelectionsResponse()
Definition: AbstractDefaultSelectionsResponse.h:43
static void sleep(long millis)
Definition: Thread.h:176
void plugStubReader(const std::string &readerName, bool synchronous) override
Definition: StubPluginImpl.cpp:51
MonitoringState
Definition: AbstractObservableState.h:37
std::shared_ptr< ApduResponse > processApduRequest(std::shared_ptr< ApduRequest > apduRequest)
Definition: AbstractLocalReader.cpp:526
bool match(const int from, const int anchor) const
Definition: Matcher.cpp:34
Definition: PcscProtocolSetting.h:57
int join()
Definition: Thread.h:106
Definition: SvDebitLogRecord.h:32
void checkStatus() const override
Definition: AbstractSamResponseParser.cpp:132
Definition: PoTransaction.h:97
virtual const std::shared_ptr< SeProtocol > getSeProtocol() const
Definition: SeSelector.cpp:312
virtual bool isSessionBufferUsed() const override
Definition: VerifyPinCmdBuild.cpp:74
static const int CNT_VALUE_MAX
Definition: CalypsoPoUtils.h:86
OpenSession10RespPars(std::shared_ptr< ApduResponse > response, OpenSession10CmdBuild *builder)
Definition: OpenSession10RespPars.cpp:38
SamIdentifierBuilder & serialNumber(const std::string &serialNumber)
Definition: SamIdentifier.cpp:89
SamReadKeyParametersCmdBuild(const SamRevision &revision)
Definition: SamReadKeyParametersCmdBuild.cpp:34
virtual void releaseReader(std::shared_ptr< SeReader > seReader)=0
virtual ~ObservablePluginNotifier()=default
uint8_t getSessionDefaultKvc(const AccessLevel &sessionAccessLevel) const
Definition: PoSecuritySettings.cpp:87
static const int MAX_CEILING_NUMB
Definition: SamReadCeilingsCmdBuild.h:46
void processSeRemoved()
Definition: AbstractObservableLocalReader.cpp:211
int detach()
Definition: Thread.h:124
std::unique_ptr< Pattern > compile(const std::string ®ularExpression, const int flags) const
Definition: Pattern.cpp:21
static const EventType SE_MATCHED
Definition: ReaderEvent.h:63
SamSelector::SamSelectorBuilder SamSelectorBuilder
Definition: SamSelector.cpp:35
unsigned char byteValue()
Definition: Byte.h:188
Definition: DigestUpdateRespPars.h:43
virtual const std::vector< uint8_t > & getOriginalData() const
Definition: AbstractOpenSessionRespPars.cpp:309
bool isConfidentialSessionModeSupported() const
Definition: CalypsoPo.cpp:259
static unsigned long long currentTimeMillis()
Definition: System.h:71
Definition: CalypsoPoSessionBufferOverflowException.h:31
Definition: AbstractSamResponseParser.h:35
std::ostream & operator<<(std::ostream &os, const StubSecureElement &s)
Definition: StubSecureElement.cpp:87
TransmissionMode
Definition: TransmissionMode.h:28
uint8_t getCurrentKVC() const
Definition: SvGetRespPars.cpp:130
CalypsoPoTerminatedException(const std::string &message, const std::shared_ptr< CalypsoPoCommand > command, const int statusCode)
Definition: CalypsoPoTerminatedException.h:38
virtual void insertSe(std::shared_ptr< StubSecureElement > _se)=0
static bool endsWith(const std::string &source, const std::string &value)
Definition: stringhelper.h:64
AllocationMode
Definition: SamResourceManager.h:43
Definition: SeProtocol.h:31
Definition: SeSelector.h:46
const std::vector< uint8_t > & getPreviousSignatureLo() const
Definition: SvGetRespPars.cpp:140
virtual void setParameters(const std::map< const std::string, const std::string > ¶meters) final
Definition: PcscPluginImpl.h:84
OpenSession32RespPars(std::shared_ptr< ApduResponse > response, OpenSession32CmdBuild *builder)
Definition: OpenSession32RespPars.cpp:30
virtual uint8_t getKif() const
Definition: KeyReference.cpp:21
const std::vector< uint8_t > getKeyParameters() const
Definition: SamReadKeyParametersRespPars.cpp:88
const std::string & getName() const
Definition: CalypsoPoCommand.cpp:58
static const CalypsoSamCommand READ_CEILINGS
Definition: CalypsoSamCommand.h:103
Definition: CalypsoSamIllegalParameterException.h:32
void addSeProtocolSetting(std::shared_ptr< SeProtocol > seProtocol, const std::string &protocolRule) override
Definition: AbstractLocalReader.cpp:193
virtual void stopWaitForCard()
Definition: SmartInsertionReader.h:53
virtual std::shared_ptr< AidSelector > getAidSelector() const
Definition: SeSelector.cpp:322
std::shared_ptr< SeReader > fetchNativeReader(const std::string &name) override
Definition: PcscPluginImpl.cpp:143
Matcher * reset()
Definition: Matcher.cpp:119
int getAmount() const
Definition: SvLoadLogRecord.cpp:33
PoGetChallengeRespPars(std::shared_ptr< ApduResponse > response, PoGetChallengeCmdBuild *builder)
Definition: PoGetChallengeRespPars.cpp:28
const std::string & getGroupReference() const
Definition: SamIdentifier.cpp:50
const std::map< int, std::shared_ptr< StatusProperties > > & getStatusTable() const override
Definition: CloseSessionRespPars.cpp:71
friend std::ostream & operator<<(std::ostream &os, const Exception &e)
Definition: Exception.h:61
bool isInterrupted() const
Definition: Thread.h:218
static const std::shared_ptr< SeCommonProtocol > PROTOCOL_MIFARE_DESFIRE
Definition: SeCommonProtocols.h:99
virtual const std::shared_ptr< SeCommand > getCommandRef() const
Definition: AbstractApduCommandBuilder.cpp:54
static const std::shared_ptr< SeCommonProtocol > PROTOCOL_NDEF_FORMATABLE
Definition: SeCommonProtocols.h:95
const std::shared_ptr< AbstractMatchingSe > parse(std::shared_ptr< SeResponse > seResponse) override
Definition: SamSelectionRequest.cpp:53
const std::shared_ptr< SeResource< CalypsoSam > > getSamResource() const
Definition: PoSecuritySettings.cpp:56
Definition: ChangeKeyCmdBuild.h:25
std::shared_ptr< ReaderPlugin > getPlugin() const override
Definition: StubPoolPluginFactory.cpp:40
SeCommonProtocols::SeCommonProtocol SeCommonProtocol
Definition: SeCommonProtocols.cpp:23
std::string getClassName()
Definition: Logger.cpp:26
virtual std::shared_ptr< SeReader > plugStubPoolReader(const std::string &groupReference, const std::string &readerName, std::shared_ptr< StubSecureElement > se)=0
void setSvData(const int svBalance, const int svLastTNum, const std::shared_ptr< SvLoadLogRecord > svLoadLogRecord, const std::shared_ptr< SvDebitLogRecord > svDebitLogRecord)
Definition: CalypsoPo.cpp:478
bool isRunning() const
Definition: AbstractMonitoringJob.h:73
static const CalypsoPoCommand WRITE_RECORD
Definition: CalypsoPoCommand.h:61
const std::shared_ptr< SeSelector > mSeSelector
Definition: AbstractSeSelectionRequest.h:62
PoSecuritySettings(PoSecuritySettingsBuilder *builder)
Definition: PoSecuritySettings.cpp:42
SvGetRespPars(const std::vector< uint8_t > &svCommandHeader, std::shared_ptr< ApduResponse > response, SvGetCmdBuild *builder)
Definition: SvGetRespPars.cpp:78
std::future< void > startMonitoring(AbstractObservableState *state, std::atomic< bool > &cancellationFlag) override
Definition: CardAbsentPingMonitoringJob.cpp:90
Byte()
Definition: Byte.h:62
static const AccessLevel SESSION_LVL_DEBIT
Definition: PoTransaction.h:204
int getAmount() const
Definition: SvDebitLogRecord.cpp:33
virtual std::shared_ptr< SeResponse > processSeRequest(const std::shared_ptr< SeRequest > seRequest, const ChannelControl &channelControl)=0
void addCommandBuilder(std::shared_ptr< AbstractPoCommandBuilder< AbstractPoResponseParser > > commandBuilder)
Definition: AbstractSeSelectionRequest.h:142
static const int NB_CNT_MAX
Definition: CalypsoPoUtils.h:80
static const std::map< std::shared_ptr< SeCommonProtocol >, std::string > getSpecificSettings(const std::set< std::shared_ptr< SeCommonProtocol >> &specificProtocols)
Definition: PcscProtocolSetting.cpp:45
Definition: CalypsoSamRevokedException.h:28
Definition: WriteRecordRespPars.h:43
int getRecordNumber() const
Definition: WriteRecordCmdBuild.cpp:75
FileControlInformation getFileControlInformation() const
Definition: SeSelector.cpp:146
bool operator!=(const CalypsoPoCommand &other) const
Definition: CalypsoPoCommand.cpp:91
BerDecoder(std::vector< char > buf, int offset, int bufsize)
Definition: BerDecoder.h:48
virtual void setParameter(const std::string &key, const std::string &value)=0
virtual ~AbstractLocalReader()=default
static const PoClass & valueOf(const std::string &name)
Definition: PoClass.cpp:59
Definition: FileNotFoundException.h:22
uint8_t getSessionDefaultKeyRecordNumber(const AccessLevel &sessionAccessLevel) const
Definition: PoSecuritySettings.cpp:98
KeypleAllocationNoReaderException(const std::string &message)
Definition: KeypleAllocationNoReaderException.h:30
Definition: SamResourceManagerDefault.h:44
ReadRecordsRespPars(std::shared_ptr< ApduResponse > apduResponse, ReadRecordsCmdBuild *builder)
Definition: ReadRecordsRespPars.cpp:95
Definition: ReadRecordsCmdBuild.h:46
static const uint8_t STORED_VALUE_FILE_STRUCTURE_ID
Definition: CalypsoPoUtils.h:130
Matcher(const Pattern *parent, const std::string &text)
Definition: Matcher.cpp:27
void insert(InputIterator first, InputIterator last)
Definition: ConcurrentMap.h:103
virtual ~AbstractSamResponseParser()=default
bool hasSelectionMatched(int selectionIndex) const
Definition: SelectionsResult.cpp:83
void prepareReleasePoChannel()
Definition: PoTransaction.cpp:983
Definition: ObservablePlugin.h:36
ManagedSamResource(std::shared_ptr< SeReader > seReader, std::shared_ptr< CalypsoSam > calypsoSam)
Definition: SamResourceManager.cpp:71
Definition: CalypsoSamIllegalArgumentException.h:32
virtual void unplugStubPoolReader(const std::string &groupReference)=0
virtual ~AbstractObservablePlugin()=default
bool isReadCounterOnly() const
Definition: VerifyPinCmdBuild.cpp:79
virtual void openPhysicalChannel()
Definition: StubSecureElement.cpp:35
static std::string trim(const std::string &source, const std::string &trimChars=" \t\n\r\v\f")
Definition: stringhelper.h:40
std::shared_ptr< StubSecureElement > getSe() override
Definition: StubReaderImpl.cpp:218
virtual void notifyObservers(const std::shared_ptr< PluginEvent > event) final
Definition: AbstractObservablePlugin.cpp:62
iterator begin() noexcept
Definition: ConcurrentMap.h:164
Definition: OpenSession32RespPars.h:37
virtual ~AbstractMonitoringJob()
Definition: AbstractMonitoringJob.h:52
virtual const std::string & getName() const
Definition: AbstractApduCommandBuilder.cpp:59
int getNewValue()
Definition: DecreaseRespPars.cpp:116
bool isSvOperationCompleteOneTime()
Definition: PoCommandManager.cpp:94
std::condition_variable m_cv
Definition: CountDownLatch.h:64
int getDebitTime() const
Definition: SvDebitLogRecord.cpp:42
Definition: SvLoadLogRecord.h:31
PoClass(const std::string &name, const uint8_t cla)
Definition: PoClass.cpp:32
ReaderEvent(const std::string &pluginName, const std::string &readerName, const EventType &eventType, std::shared_ptr< AbstractDefaultSelectionsResponse > defaultSelectionsResponse)
Definition: ReaderEvent.cpp:84
virtual ~SeResource()
Definition: SeResource.h:54
std::atomic< bool > mShuttingDown
Definition: ObservableReaderNotifier.h:58
static const CalypsoPoCommand VERIFY_PIN
Definition: CalypsoPoCommand.h:82
const std::type_info & getExceptionClass() const
Definition: AbstractApduResponseParser.cpp:160
CalypsoPoIllegalArgumentException(const std::string &message, const std::shared_ptr< SeCommand > command)
Definition: CalypsoPoIllegalArgumentException.h:37
static Byte * valueOf(unsigned char b)
Definition: Byte.h:113
const std::string & getName() const
Definition: ApduRequest.cpp:74
bool search(const int from)
Definition: Matcher.cpp:104
DigestCloseCmdBuild(const SamRevision &revision, const uint8_t expectedResponseLength)
Definition: DigestCloseCmdBuild.cpp:33
@ NEXT
Definition: SamReadKeyParametersCmdBuild.h:54
@ SYSTEM_KEY
Definition: SamReadKeyParametersCmdBuild.h:49
static const int NB_REC_MIN
Definition: CalypsoPoUtils.h:73
InvalidatedPo
Definition: PoSelector.h:42
Definition: SeCommand.h:23
static std::string toString(bool b)
Definition: Boolean.h:81
bool isDfRatified() const
Definition: CalypsoPo.cpp:314
Definition: AbstractReader.h:50
AbstractApduCommandBuilder(const std::shared_ptr< SeCommand > commandRef, const std::shared_ptr< ApduRequest > request)
Definition: AbstractApduCommandBuilder.cpp:26
virtual ~SeSelector()
Definition: SeSelector.h:503
virtual ~AbstractThreadedObservablePlugin()
Definition: AbstractThreadedObservablePlugin.cpp:46
Definition: Properties.h:25
const std::vector< uint8_t > & getDfNameBytes() const
Definition: CalypsoPo.cpp:184
Definition: CardCipherPinCmdBuild.h:29
virtual ~PoClass()=default
std::ostream & operator<<(std::ostream &os, const AnswerToReset &atr)
Definition: AnswerToReset.cpp:46
AbstractMonitoringJob()
Definition: AbstractMonitoringJob.h:47
CalypsoPoUnknownStatusException(const std::string &message, const std::shared_ptr< CalypsoPoCommand > command, const int statusCode)
Definition: CalypsoPoUnknownStatusException.h:37
Definition: KeypleAssert.h:30
virtual ConcurrentMap< const std::string, std::shared_ptr< SeReader > > & getReaders() override
Definition: AbstractPlugin.cpp:48
virtual uint8_t getSfi() const =0
std::shared_ptr< SelectionStatus > openLogicalChannelAndSelect(std::shared_ptr< SeSelector > seSelector)
Definition: AbstractLocalReader.cpp:153
const std::vector< uint8_t > getSamTNumBytes() const
Definition: SvDebitLogRecord.cpp:106
Definition: CalypsoPoTransactionIllegalStateException.h:29
SamResourceManagerDefault::PluginObserver PluginObserver
Definition: SamResourceManagerDefault.cpp:46
Definition: ObservableReader.h:42
SelectFileCmdBuild(const PoClass &poClass, SelectFileControl selectFileControl)
Definition: SelectFileCmdBuild.cpp:41
Definition: KeyplePluginException.h:27
friend std::ostream & operator<<(std::ostream &os, const SessionState &ss)
Definition: PoTransaction.cpp:1441
SvCheckCmdBuild(const SamRevision &revision, const std::vector< uint8_t > &svPoSignature)
Definition: SvCheckCmdBuild.cpp:35
Definition: BerDecoder.h:22
static const int MASK_7_BITS
Definition: CalypsoPoUtils.h:59
static int twoBytesToInt(const std::vector< uint8_t > &bytes, const int offset)
Definition: ByteArrayUtil.cpp:94
AbstractThreadedObservablePlugin(const std::string &name)
Definition: AbstractThreadedObservablePlugin.cpp:40
static const CalypsoPoCommand INVALIDATE
Definition: CalypsoPoCommand.h:100
std::shared_ptr< SvCheckRespPars > createResponseParser(const std::shared_ptr< ApduResponse > apduResponse) override
Definition: SvCheckCmdBuild.cpp:61
const std::shared_ptr< AbstractMatchingSe > parse(std::shared_ptr< SeResponse > seResponse) override
Definition: PoSelectionRequest.cpp:100
const std::string & getPluginName() const override
Definition: PcscPluginFactory.cpp:33
ExecutorService & operator=(ExecutorService o)=delete
virtual uint8_t getSelectedKif() const
Definition: AbstractOpenSessionRespPars.cpp:211
AbstractMatchingSe(const std::shared_ptr< SeResponse > selectionResponse, const TransmissionMode &transmissionMode)
Definition: AbstractMatchingSe.cpp:36
const std::exception & getCause() const
Definition: Exception.h:53
void unplugStubReaders(const std::set< std::string > &readerNames, const bool synchronous) override
Definition: StubPluginImpl.cpp:134
void start()
Definition: Thread.h:73
const std::map< int, std::shared_ptr< StatusProperties > > & getStatusTable() const override
Definition: CardCipherPinRespPars.cpp:81
void stopWaitForCardRemoval() override
Definition: PcscReaderImpl.cpp:226
ObservableReaderStateService(AbstractObservableLocalReader *reader, std::map< MonitoringState, std::shared_ptr< AbstractObservableState >> states, const MonitoringState initState)
Definition: ObservableReaderStateService.cpp:21
SamCommandProcessor(const std::shared_ptr< SeResource< CalypsoPo >> poResource, const std::shared_ptr< PoSecuritySettings > poSecuritySettings)
Definition: SamCommandProcessor.cpp:72
static const std::string SETTING_PROTOCOL_T0
Definition: PcscReader.h:39
const_iterator begin() const noexcept
Definition: ConcurrentMap.h:173
AbstractApduResponseParser::StatusProperties StatusProperties
Definition: AbstractOpenSessionRespPars.cpp:55
Definition: StubReaderImpl.h:57
virtual bool isPhysicalChannelOpen()=0
int prepareSelection(std::shared_ptr< AbstractSeSelectionRequest< AbstractApduCommandBuilder >> seSelectionRequest)
Definition: SeSelection.cpp:45
std::shared_ptr< SvPrepareOperationRespPars > createResponseParser(const std::shared_ptr< ApduResponse > apduResponse) override
Definition: SvPrepareUndebitCmdBuild.cpp:54
std::shared_ptr< SeReader > fetchNativeReader(const std::string &readerName) override
Definition: StubPluginImpl.cpp:179
void addRegularCommand(std::shared_ptr< AbstractPoCommandBuilder< AbstractPoResponseParser >> commandBuilder)
Definition: PoCommandManager.cpp:34
virtual std::shared_ptr< SecureSession > toSecureSession(const std::vector< uint8_t > &apduResponseData)
Definition: AbstractOpenSessionRespPars.cpp:155
ConcurrentMap< const std::string, std::shared_ptr< SeReader > > & initNativeReaders() override
Definition: PcscPluginImpl.cpp:92
std::ostream & operator<<(std::ostream &os, const ObservableReader::PollingMode &pm)
Definition: ObservableReader.cpp:115
SelectFileControl getSelectFileControl() const
Definition: SelectFileCmdBuild.cpp:111
void prepareUpdateRecord(const uint8_t sfi, const uint8_t recordNumber, const std::vector< uint8_t > &recordData)
Definition: PoTransaction.cpp:1108
bool operator==(const ElementaryFile &o) const
Definition: ElementaryFile.cpp:55
virtual bool isSessionBufferUsed() const override
Definition: OpenSession31CmdBuild.cpp:69
Definition: ConcurrentMap.h:26
SamSelectorBuilder & samIdentifier(const std::shared_ptr< SamIdentifier > samIdentifier)
Definition: SamSelector.cpp:111
const std::vector< uint8_t > & getAtrBytes() const
Definition: AbstractMatchingSe.cpp:76
std::shared_ptr< ExecutorService > mExecutorService
Definition: AbstractObservableState.h:106
void error(const std::string &format, Args... args)
Definition: Logger.h:112
SecurityException(const std::string &message)
Definition: SecurityException.h:27
friend PoSelector
Definition: PoSelector.h:57
static const CalypsoPoCommand OPEN_SESSION_10
Definition: CalypsoPoCommand.h:40
std::ostream & operator<<(std::ostream &os, const PcscTerminal &t)
Definition: PcscTerminal.cpp:375
SamResourceManagerPool(ReaderPoolPlugin &samReaderPoolPlugin, const int maxBlockingTime, const int sleepTime)
Definition: SamResourceManagerPool.cpp:37
friend std::ostream & operator<<(std::ostream &os, const AbstractSeSelectionRequest< T > &asr)
Definition: AbstractSeSelectionRequest.h:110
const std::map< const std::string, const std::string > & getParameters() const override
Definition: PcscReaderImpl.cpp:388
virtual const KeypleSeCommandException buildCommandException(const std::type_info &exceptionClass, const std::string &message, const std::shared_ptr< SeCommand > commandRef, const int statusCode) const
Definition: AbstractApduResponseParser.cpp:130
static std::string uint24ToHexString(const uint32_t v)
Definition: stringhelper.h:127
virtual ~AbstractMatchingSe()
Definition: AbstractMatchingSe.h:48
static uint8_t getSvKvc()
Definition: CalypsoPoUtils.cpp:640
const std::map< int, std::shared_ptr< StatusProperties > > & getStatusTable() const override
Definition: SamReadKeyParametersRespPars.cpp:83
Definition: GetDataFciCmdBuild.h:51
static std::shared_ptr< AbstractOpenSessionCmdBuild< T > > create(const PoRevision revision, const uint8_t debitKeyIndex, const std::vector< uint8_t > &sessionTerminalChallenge, const uint8_t sfi, const uint8_t recordNumber)
Definition: AbstractOpenSessionCmdBuild.h:80
SvDebitCmdBuild(const PoClass &poClass, const PoRevision &poRevision, const int amount, const uint8_t kvc, const std::vector< uint8_t > &date, const std::vector< uint8_t > &time)
Definition: SvDebitCmdBuild.cpp:33
ObservableReader::NotificationMode NotificationMode
Definition: ObservableReader.cpp:25
int ordinal()
Definition: ObservableReader.cpp:93
uint8_t getSoftwareVersion() const
Definition: CalypsoPo.cpp:294
const std::vector< uint8_t > & getAidToSelect() const
Definition: SeSelector.cpp:136
const std::map< int, std::shared_ptr< StatusProperties > > & getStatusTable() const override
Definition: SvPrepareOperationRespPars.cpp:76
virtual const std::vector< uint8_t > & getSecureSessionData() const
Definition: AbstractOpenSessionRespPars.cpp:314
static std::string trimStart(std::string source, const std::string &trimChars=" \t\n\r\v\f")
Definition: stringhelper.h:30
std::shared_ptr< KeyReference > mPinCipheringKey
Definition: PoSecuritySettings.h:90
RehabilitateRespPars(std::shared_ptr< ApduResponse > response, RehabilitateCmdBuild *builder)
Definition: RehabilitateRespPars.cpp:58
virtual ~StubPoolPluginFactory()=default
PcscTerminalException(const std::string &msg, std::exception &cause)
Definition: PcscTerminalException.h:34
const std::map< int, std::shared_ptr< StatusProperties > > & getStatusTable() const override
Definition: DecreaseRespPars.cpp:104
Definition: KeypleSeCommandException.h:28
static const ModificationMode mDefaultSessionModificationMode
Definition: PoSecuritySettings.h:49
virtual ~ObservableReaderNotifier()
Definition: ObservableReaderNotifier.h:42
static const uint8_t SV_LOG_FILE_REC_LENGTH
Definition: CalypsoPoUtils.h:135
SamSelectorBuilder()
Definition: SamSelector.cpp:92
static const int SEL_NUM_REC_OFFSET
Definition: CalypsoPoUtils.h:117
bool isSePresent() override
Definition: AbstractLocalReader.cpp:71
bool isRegistered(const std::string &pluginName)
Definition: SeProxyService.cpp:69
static std::vector< uint8_t > fromHex(const std::string &hex)
Definition: ByteArrayUtil.cpp:53
SvDebitRespPars(std::shared_ptr< ApduResponse > response, SvDebitCmdBuild *builder)
Definition: SvDebitRespPars.cpp:74
virtual const std::set< std::string > & fetchNativeReadersNames()=0
UpdateRecordCmdBuild(const PoClass poClass, const uint8_t sfi, const uint8_t recordNumber, const std::vector< uint8_t > &newRecordData)
Definition: UpdateRecordCmdBuild.cpp:37
virtual SeSelectorBuilder & seProtocol(const std::shared_ptr< SeProtocol > seProtocol)
Definition: SeSelector.cpp:269
int getDecValue() const
Definition: DecreaseCmdBuild.cpp:94
void monitoringJob(AbstractObservableState *state, std::atomic< bool > &cancellationFlag)
Definition: CardPresentMonitoringJob.cpp:32
ObservableReader::NotificationMode mNotificationMode
Definition: AbstractReader.h:125
std::shared_ptr< ObservableReaderStateService > initStateService() override
Definition: PcscReaderImpl.cpp:95
std::ostream & operator<<(std::ostream &os, const ReadRecordsCmdBuild::ReadMode &rm)
Definition: ReadRecordsCmdBuild.cpp:93
virtual std::shared_ptr< ApduResponse > openChannelForAid(SeSelector::AidSelector &aidSelector)=0
void checkStatus() const override
Definition: AbstractPoResponseParser.cpp:92
WriteRecordCmdBuild(const PoClass &poClass, const uint8_t sfi, const uint8_t recordNumber, const std::vector< uint8_t > &newRecordData)
Definition: WriteRecordCmdBuild.cpp:36
bool isSessionBufferUsed() const override
Definition: WriteRecordCmdBuild.cpp:65
virtual const std::shared_ptr< AbstractMatchingSe > parse(std::shared_ptr< SeResponse > seResponse)=0
SvReloadCmdBuild(const PoClass &poClass, const PoRevision &poRevision, const int amount, const uint8_t kvc, const std::vector< uint8_t > &date, const std::vector< uint8_t > &time, const std::vector< uint8_t > &free)
Definition: SvReloadCmdBuild.cpp:33
bool await(const std::chrono::duration< Rep, Period > &timeout)
Definition: CountDownLatch.h:34
static const EventType SE_INSERTED
Definition: ReaderEvent.h:58
std::unique_ptr< Matcher > matcher(const std::string &input) const
Definition: Pattern.cpp:35
int getPosition() const
Definition: TLV.cpp:93
Definition: KeypleSeCommandUnknownStatusException.h:29
const std::map< int, std::shared_ptr< StatusProperties > > & getStatusTable() const override
Definition: GetDataFciRespPars.cpp:90
Definition: SeSelection.h:52
virtual bool isSessionBufferUsed() const override
Definition: AppendRecordCmdBuild.cpp:63
Definition: SamReadEventCounterRespPars.h:38
Definition: StubProtocolSetting.h:55
virtual void setAtrRegex(const std::string &atrRegex)
Definition: SeSelector.cpp:185
Definition: StubPoolPlugin.h:34
SamResourceManagerDefault::ReaderObserver ReaderObserver
Definition: SamResourceManagerDefault.cpp:48
virtual void stop()
Definition: AbstractMonitoringJob.h:68
void closePhysicalChannel() override
Definition: StubReaderImpl.cpp:105
std::shared_ptr< SecureSession > toSecureSession(const std::vector< uint8_t > &apduResponseData) override
Definition: OpenSession10RespPars.cpp:51
void interrupt()
Definition: Thread.h:210
const CalypsoPoCommandException & getCause() override
Definition: CalypsoPoAnomalyException.h:48
virtual ~StubReader()=default
Definition: UpdateRecordRespPars.h:43
Definition: SamWriteKeyRespPars.h:37
Definition: SvPrepareLoadCmdBuild.h:34
std::ostream & operator<<(std::ostream &os, const Tag::TagClass &tc)
Definition: Tag.cpp:101
const std::vector< uint8_t > getSamTNumBytes() const
Definition: SvLoadLogRecord.cpp:128
static const std::string SETTING_KEY_PROTOCOL
Definition: PcscReader.h:38
int getActiveSelectionIndex() const
Definition: SelectionsResult.cpp:89
static const SamRevision AUTO
Definition: SamRevision.h:62
const SamRevision & getSamRevision() const
Definition: SamIdentifier.cpp:40
uint8_t getSfi() const
Definition: AppendRecordCmdBuild.cpp:68
int getPinAttemptRemaining() const
Definition: CalypsoPo.cpp:556
static const uint8_t SV_DEBIT_LOG_FILE_NB_REC
Definition: CalypsoPoUtils.h:134
static const int SEL_EF_TYPE_OFFSET
Definition: CalypsoPoUtils.h:115
const std::string & getName() const override
Definition: SeCommonProtocols.cpp:113
void prepareSelectFile(const std::vector< uint8_t > &lid)
Definition: PoTransaction.cpp:988
Definition: CalypsoPoAccessForbiddenException.h:24
void update(const std::shared_ptr< PluginEvent > event) override
Definition: SamResourceManagerDefault.cpp:261
PoRevision
Definition: PoRevision.h:32
Definition: IndexOutOfBoundsException.h:22
static const EventType & valueOf(const std::string &name)
Definition: SeCommonProtocols.h:30
Definition: AbstractLocalReader.cpp:46
SamRevision(const SamRevision &o)
Definition: SamRevision.cpp:38
StubPoolPluginFactory(const std::string &pluginName)
Definition: StubPoolPluginFactory.cpp:30
const std::map< int, std::shared_ptr< StatusProperties > > & getStatusTable() const override
Definition: AbstractOpenSessionRespPars.cpp:129
SamReadKeyParametersRespPars(const std::shared_ptr< ApduResponse > response, SamReadKeyParametersCmdBuild *builder)
Definition: SamReadKeyParametersRespPars.cpp:74
Definition: SeProxyService.h:39
bool matches(const std::shared_ptr< SamIdentifier > samIdentifier) const
Definition: SamIdentifier.cpp:55
const std::vector< std::shared_ptr< ApduRequest > > & getApduRequests() const
Definition: SeRequest.cpp:47
ElementaryFile & setHeader(const std::shared_ptr< FileHeader > header)
Definition: ElementaryFile.cpp:43
Definition: DigestInitCmdBuild.h:43
ClassNotFoundException(const std::string &message, const std::exception cause)
Definition: ClassNotFoundException.h:32
SeCommonProtocol(const std::string &name, const TransmissionMode &transmissionMode)
Definition: SeCommonProtocols.cpp:107
bool operator!=(const AccessLevel &o) const
Definition: PoTransaction.cpp:1406
ReaderPoolPlugin & mSamReaderPlugin
Definition: SamResourceManagerPool.h:74
virtual uint8_t getSfi() const override
Definition: OpenSession24CmdBuild.cpp:86
const std::vector< uint8_t > & getUnlockData() const
Definition: SamSelector.cpp:80
static bool equals(const std::vector< char > &a1, const std::vector< char > &a2)
Definition: Arrays.h:28
const std::vector< uint8_t > getSamIdBytes() const
Definition: SvLoadLogRecord.cpp:101
const std::map< int, std::shared_ptr< StatusProperties > > & getStatusTable() const override
Definition: VerifyPinRespPars.cpp:119
static std::vector< NotificationMode > values()
Definition: ObservableReader.cpp:88
static const std::map< int, std::shared_ptr< StatusProperties > > STATUS_TABLE
Definition: AbstractApduResponseParser.h:171
bool mIsPhysicalChannelOpen
Definition: StubSecureElement.h:38
KeypleAllocationReaderException(const std::string &msg)
Definition: KeypleAllocationReaderException.h:32
const std::shared_ptr< SvLoadLogRecord > getLoadLog() const
Definition: SvGetRespPars.cpp:155
const std::vector< uint8_t > getSvUndebitComplementaryData(std::shared_ptr< SvUndebitCmdBuild > svUndebitCmdBuild, const std::vector< uint8_t > &svGetHeader, const std::vector< uint8_t > &svGetData)
Definition: SamCommandProcessor.cpp:592
void authenticatePoSignature(const std::vector< uint8_t > &poSignatureLo)
Definition: SamCommandProcessor.cpp:374
std::thread::id selfId()
Definition: Thread.h:140
std::shared_ptr< AbstractOpenSessionRespPars > createResponseParser(std::shared_ptr< ApduResponse > apduResponse) override
Definition: OpenSession32CmdBuild.cpp:72
int getContentAsCounterValue(const int numCounter) const
Definition: FileData.cpp:85
const CalypsoPoCommandException & getCause()
Definition: CalypsoPoCloseSecureSessionException.h:52
std::future< void > * submit(std::shared_ptr< AbstractMonitoringJob > monitoringJob, AbstractObservableState *state, std::atomic< bool > &cancellationFlag)
Definition: ExecutorService.cpp:56
std::shared_ptr< ObservableReaderStateService > initStateService() override
Definition: StubReaderImpl.cpp:280
static const int EF_TYPE_BINARY
Definition: CalypsoPoUtils.h:104
Definition: PluginFactory.h:23
const std::shared_ptr< DirectoryHeader > getDirectoryHeader() const
Definition: CalypsoPo.cpp:329
Definition: ObservableReader.h:47
AbstractOpenSessionCmdBuild(PoRevision revision)
Definition: AbstractOpenSessionCmdBuild.h:75
void stop() override
Definition: SmartRemovalMonitoringJob.cpp:76
Definition: ProxyElement.h:28
static const std::vector< uint8_t > & getPoChallenge()
Definition: CalypsoPoUtils.cpp:635
const std::map< std::shared_ptr< SeProtocol >, std::string > & getProtocolsMap() const
Definition: AbstractLocalReader.cpp:703
KeyplePluginInstantiationException(const std::string &msg, const std::exception &cause)
Definition: KeyplePluginInstantiationException.h:43
SvPrepareDebitCmdBuild(const SamRevision &revision, const std::vector< uint8_t > &svGetHeader, const std::vector< uint8_t > &svGetData, const std::vector< uint8_t > &svDebitCmdBuildData)
Definition: SvPrepareDebitCmdBuild.cpp:35
FileData()
Definition: FileData.cpp:36
int getNewValue()
Definition: IncreaseRespPars.cpp:119
const std::map< int, std::shared_ptr< StatusProperties > > & getStatusTable() const override
Definition: UnlockRespPars.cpp:66
PoSelector(PoSelectorBuilder *builder)
Definition: PoSelector.cpp:33
void processPoCommands()
Definition: PoTransaction.cpp:617
std::shared_ptr< ReaderPlugin > getPlugin() const override
Definition: PcscPluginFactory.cpp:38
const std::map< int, int > getAllCountersValue() const
Definition: FileData.cpp:109
std::shared_ptr< AbstractDefaultSelectionsRequest > getSelectionOperation()
Definition: SeSelection.cpp:157
IncreaseCmdBuild(const PoClass poClass, const uint8_t sfi, const uint8_t counterNumber, const int incValue)
Definition: IncreaseCmdBuild.cpp:38
WaitForSeProcessing(AbstractObservableLocalReader *reader)
Definition: WaitForSeProcessing.cpp:21
int countObservers() const final
Definition: AbstractObservableLocalReader.cpp:287
virtual ~SelectionStatus()
Definition: SelectionStatus.h:52
Definition: CalypsoPoSecurityDataException.h:31
static std::map< std::shared_ptr< SeCommonProtocol >, std::string > PCSC_PROTOCOL_SETTING
Definition: PcscProtocolSetting.h:62
Definition: ReaderEvent.h:48
Definition: SelectDiversifierRespPars.h:41
const std::vector< uint8_t > getLoadTimeBytes() const
Definition: SvLoadLogRecord.cpp:48
const std::vector< uint8_t > getCipheredPinData(const std::vector< uint8_t > &poChallenge, const std::vector< uint8_t > ¤tPin, const std::vector< uint8_t > &newPin)
Definition: SamCommandProcessor.cpp:428
CalypsoSamRevokedException(const std::string &message)
Definition: CalypsoSamRevokedException.h:33
std::shared_ptr< SvUndebitRespPars > createResponseParser(std::shared_ptr< ApduResponse > apduResponse) override
Definition: SvUndebitCmdBuild.cpp:109
std::shared_ptr< CloseSessionRespPars > createResponseParser(std::shared_ptr< ApduResponse > apduResponse) override
Definition: CloseSessionCmdBuild.cpp:85
const std::string mSamReaderFilter
Definition: SamResourceManagerDefault.h:95
const std::map< int, std::shared_ptr< StatusProperties > > & getStatusTable() const override
Definition: SamReadCeilingsRespPars.cpp:72
static const int MASK_2_BYTES
Definition: CalypsoPoUtils.h:61
static const CalypsoSamCommand SV_PREPARE_LOAD
Definition: CalypsoSamCommand.h:118
Definition: InvalidateCmdBuild.h:41
static std::vector< uint8_t > copyOfRange(const std::vector< uint8_t > &original, int from, int to)
Definition: Arrays.h:89
CalypsoSamIOException(const std::string &message)
Definition: CalypsoSamIOException.h:33
std::shared_ptr< SeResponse > getSeResponse() const
Definition: KeypleReaderIOException.h:77
SecureSession(const std::vector< uint8_t > &challengeTransactionCounter, const std::vector< uint8_t > &challengeRandomNumber, const bool previousSessionRatified, const bool manageSecureSessionAuthorized, const uint8_t kif, const uint8_t kvc, const std::vector< uint8_t > &originalData, const std::vector< uint8_t > &secureSessionData)
Definition: AbstractOpenSessionRespPars.cpp:228
bool isPinFeatureAvailable() const
Definition: CalypsoPo.cpp:274
Definition: CalypsoSamSecurityDataException.h:34
CalypsoSamSecurityDataException(const std::string &message, const std::shared_ptr< CalypsoSamCommand > command, const int statusCode)
Definition: CalypsoSamSecurityDataException.h:41
DecreaseRespPars(std::shared_ptr< ApduResponse > response, DecreaseCmdBuild *builder)
Definition: DecreaseRespPars.cpp:109
Definition: AbstractMonitoringJob.h:42
virtual void addObserver(const std::shared_ptr< ReaderObserver > observer)=0
SvCheckRespPars(const std::shared_ptr< ApduResponse > response, SvCheckCmdBuild *builder)
Definition: SvCheckRespPars.cpp:60
~StubReaderImpl()
Definition: StubReaderImpl.cpp:66
PollingMode
Definition: ObservableReader.h:237
PoSelectorBuilder & invalidatedPo(const InvalidatedPo invalidatedPo)
Definition: PoSelector.cpp:53
virtual void setParameters(const std::map< const std::string, const std::string > ¶meters) final
Definition: PcscReaderImpl.h:135
std::shared_ptr< DigestInitRespPars > createResponseParser(const std::shared_ptr< ApduResponse > apduResponse) override
Definition: DigestInitCmdBuild.cpp:82
std::ostream & operator<<(std::ostream &os, const InternalEvent &ie)
Definition: AbstractObservableLocalReader.cpp:303
virtual const std::shared_ptr< SeCommand > getCommandRef() const
Definition: AbstractApduResponseParser.cpp:120
Definition: SamSelectionRequest.h:49
StubPluginImpl(const std::string &pluginName)
Definition: StubPluginImpl.cpp:29
IllegalAccessException(const std::string &message)
Definition: IllegalAccessException.h:27
std::shared_ptr< AtrFilter > mAtrFilter
Definition: SeSelector.h:474
Definition: KeypleReaderIOException.h:27
static std::string uint32ToHexString(const uint32_t v)
Definition: stringhelper.h:136
std::string getName()
Definition: Thread.h:239
static const CalypsoSamCommand DIGEST_UPDATE
Definition: CalypsoSamCommand.h:48
bool isMonitoring()
Definition: AbstractThreadedObservablePlugin.cpp:92
RatificationMode getRatificationMode() const
Definition: PoSecuritySettings.cpp:66
bool isPhysicalChannelOpen() override
Definition: PcscReaderImpl.cpp:424
bool isSerialNumberExpiring() const
Definition: CalypsoPo.cpp:218
Definition: DefaultSelectionsRequest.h:35
WriteRecordRespPars(std::shared_ptr< ApduResponse > response, WriteRecordCmdBuild *builder)
Definition: WriteRecordRespPars.cpp:95
DefaultSelectionsResponse(const std::vector< std::shared_ptr< SeResponse >> &selectionSeResponseSet)
Definition: DefaultSelectionsResponse.cpp:24
std::future< void > startMonitoring(AbstractObservableState *state, std::atomic< bool > &cancellationFlag) override
Definition: SmartInsertionMonitoringJob.cpp:68
const KeypleSeCommandException buildCommandException(const std::type_info &exceptionClass, const std::string &message, const std::shared_ptr< SeCommand > commandRef, const int statusCode) const override
Definition: AbstractPoResponseParser.cpp:58
static const std::string PLUGIN_NAME
Definition: PcscPlugin.h:32
std::string toString()
Definition: ObservableReader.cpp:98
uint8_t getSoftwareRevision() const
Definition: CalypsoSam.cpp:141
static std::shared_ptr< SeSelectorBuilder > builder()
Definition: SeSelector.cpp:297
int getSamTNum() const
Definition: SvDebitLogRecord.cpp:101
virtual std::shared_ptr< SeResource< CalypsoSam > > allocateSamResource(const AllocationMode allocationMode, const std::shared_ptr< SamIdentifier > samIdentifier)=0
AbstractSamCommandBuilder(const std::shared_ptr< SeCommand > reference, const std::shared_ptr< ApduRequest > request)
Definition: AbstractSamCommandBuilder.h:53
SourceRef
Definition: SamReadKeyParametersCmdBuild.h:49
virtual int countObservers() const =0
Pattern(const std::string &pattern, const int flags)
Definition: Pattern.cpp:19
const std::shared_ptr< SelectionStatus > getSelectionStatus() const
Definition: SeResponse.cpp:47
SamResourceManagerDefault(std::shared_ptr< ReaderPlugin > readerPlugin, const std::string &samReaderFilter, const int maxBlockingTime, const int sleepTime)
Definition: SamResourceManagerDefault.cpp:53
std::ostream & operator<<(std::ostream &os, const PoRevision &pr)
Definition: PoRevision.cpp:23
SamResourceManager::ManagedSamResource ManagedSamResource
Definition: SamResourceManager.cpp:34
CalypsoSvAuthenticationException(const std::string &message)
Definition: CalypsoSvAuthenticationException.h:35
const std::map< int, std::shared_ptr< StatusProperties > > & getStatusTable() const override
Definition: ChangeKeyRespPars.cpp:98
NoSuchElementException(const std::string &message)
Definition: NoSuchElementException.h:27
static const int MASK_3_BITS
Definition: CalypsoPoUtils.h:56
static const std::shared_ptr< SeCommonProtocol > PROTOCOL_ISO7816_3
Definition: SeCommonProtocols.h:106
static const int EF_TYPE_LINEAR
Definition: CalypsoPoUtils.h:105
InterruptedException(const std::string &name, const std::exception &cause)
Definition: InterruptedException.h:32
uint8_t getSfi() const
Definition: ElementaryFile.cpp:33
SamReadEventCounterRespPars(const std::shared_ptr< ApduResponse > response, SamReadEventCounterCmdBuild *builder)
Definition: SamReadEventCounterRespPars.cpp:63
Definition: SmartInsertionMonitoringJob.h:41
bool isSessionBufferUsed() const override
Definition: DecreaseCmdBuild.cpp:79
const std::vector< uint8_t > & getFciBytes() const
Definition: AbstractMatchingSe.cpp:68
std::shared_ptr< SamReadKeyParametersRespPars > createResponseParser(std::shared_ptr< ApduResponse > apduResponse) override
Definition: SamReadKeyParametersCmdBuild.cpp:147
Definition: SmartSelectionReader.h:31
static const int CNT_VALUE_MIN
Definition: CalypsoPoUtils.h:85
Definition: UnlockRespPars.h:36
const std::shared_ptr< AbstractDefaultSelectionsResponse > getDefaultSelectionsResponse() const
Definition: ReaderEvent.cpp:143
virtual ~SeReader()
Definition: SeReader.h:47
CalypsoSamUnknownStatusException(const std::string &message, const std::shared_ptr< CalypsoSamCommand > command, const int statusCode)
Definition: CalypsoSamUnknownStatusException.h:39
static const std::vector< std::string > & listTerminals()
Definition: PcscTerminal.cpp:54
bool isPublicAuthenticationSupported() const
Definition: CalypsoPo.cpp:279
const std::string & getName() const
Definition: PcscTerminal.cpp:49
SeSelector::AidSelector::AidSelectorBuilder AidSelectorBuilder
Definition: SeSelector.cpp:34
const std::shared_ptr< SeSelector > getSeSelector() const
Definition: SeRequest.cpp:42
static const CalypsoPoCommand & getOpenSessionForRev(PoRevision rev)
Definition: CalypsoPoCommand.cpp:68
static const CalypsoSamCommand WRITE_KEY
Definition: CalypsoSamCommand.h:88
StubPoolPluginImpl(const std::string &pluginName)
Definition: StubPoolPluginImpl.cpp:37
Definition: CalypsoPoCommand.h:34
std::string toString()
Definition: Integer.h:95
Definition: DigestCloseRespPars.h:43
bool isSvFeatureAvailable() const
Definition: CalypsoPo.cpp:269
void setFileHeader(const uint8_t sfi, const std::shared_ptr< FileHeader > header)
Definition: CalypsoPo.cpp:373
const std::map< int, std::shared_ptr< StatusProperties > > & getStatusTable() const override
Definition: CardGenerateKeyRespPars.cpp:83
virtual ~ObservablePlugin()=default
static const int MASK_5_BITS
Definition: CalypsoPoUtils.h:58
const std::vector< std::shared_ptr< SeResponse > > & getSeResponses() const
Definition: KeypleReaderIOException.h:60
static const int SEL_AC_LENGTH
Definition: CalypsoPoUtils.h:119
static const CalypsoPoCommand REHABILITATE
Definition: CalypsoPoCommand.h:103
void insertSe(std::shared_ptr< StubSecureElement > _se) override
Definition: StubReaderImpl.cpp:190
void prepareAppendRecord(const uint8_t sfi, const std::vector< uint8_t > &recordData)
Definition: PoTransaction.cpp:1092
std::shared_ptr< std::set< int > > getSuccessfulStatusCodes()
Definition: ApduRequest.cpp:69
Definition: SelectFileCmdBuild.h:46
std::shared_ptr< std::set< std::string > > nativeReadersNames
Definition: AbstractThreadedObservablePlugin.cpp:37
PcscTerminalException(const std::string &msg)
Definition: PcscTerminalException.h:29
StringBuilder * remove(std::size_t start, std::size_t end)
Definition: stringbuilder.h:91
UnlockCmdBuild(const SamRevision &revision, const std::vector< uint8_t > &unlockData)
Definition: UnlockCmdBuild.cpp:33
int parseLength()
Definition: BerDecoder.h:81
const std::shared_ptr< SvDebitLogRecord > getSvDebitLogLastRecord()
Definition: CalypsoPo.cpp:523
virtual void update(const std::shared_ptr< PluginEvent > event)=0
virtual uint8_t getSelectedKvc() const
Definition: AbstractOpenSessionRespPars.cpp:216
SamIdentifierBuilder & samRevision(const SamRevision &samRevision)
Definition: SamIdentifier.cpp:82
const KeypleAssert & isInRange(const int number, const int minValue, const int maxValue, const std::string &name) const
Definition: KeypleAssert.cpp:94
static const PoClass ISO
Definition: PoClass.h:38
const std::vector< uint8_t > getChallenge() const
Definition: SamGetChallengeRespPars.cpp:63
void addStoredValueCommand(std::shared_ptr< AbstractPoCommandBuilder< AbstractPoResponseParser >> commandBuilder, const Operation &svOperation)
Definition: PoCommandManager.cpp:40
CalypsoPo(std::shared_ptr< SeResponse > selectionResponse, const TransmissionMode &transmissionMode)
Definition: CalypsoPo.cpp:73
static const CalypsoPoCommand DECREASE
Definition: CalypsoPoCommand.h:73
OpenSession10CmdBuild(const uint8_t keyIndex, const std::vector< uint8_t > &samChallenge, const uint8_t sfi, const uint8_t recordNumber)
Definition: OpenSession10CmdBuild.cpp:41
virtual const std::vector< uint8_t > & getRecordDataRead() const
Definition: AbstractOpenSessionRespPars.cpp:221
virtual void setParameters(const std::map< const std::string, const std::string > ¶meters)
Definition: ProxyElement.h:68
static const FileOccurrence LAST
Definition: SeSelector.h:75
bool isCase4() const
Definition: ApduRequest.cpp:59
AbstractObservablePlugin(const std::string &name)
Definition: AbstractObservablePlugin.cpp:23
Object(const Object &o)
Definition: Object.h:31
const std::string & getPluginName() const
Definition: PluginEvent.cpp:89
friend SeSelector
Definition: SeSelector.h:423
virtual bool isSePresent()=0
void setSamResourceStatus(const SamResourceStatus &samResourceStatus)
Definition: SamResourceManager.cpp:92
GetDataTraceRespPars(std::shared_ptr< ApduResponse > response, GetDataTraceCmdBuild *builder)
Definition: GetDataTraceRespPars.cpp:57
virtual const std::map< const std::string, const std::string > & getParameters() const =0
int getRemainingAttemptCounter() const
Definition: VerifyPinRespPars.cpp:94
const TransmissionMode & getTransmissionMode() const override
Definition: SeCommonProtocols.cpp:118
Exception(const std::string &message)
Definition: Exception.h:34
const std::shared_ptr< SeCommand > getCommand() const
Definition: KeypleSeCommandException.h:42
IllegalAccessException(const std::string &message, const std::exception cause)
Definition: IllegalAccessException.h:32
friend KEYPLECORE_API std::ostream & operator<<(std::ostream &os, const AidSelector &a)
void finalize() override
Definition: Byte.h:196
static const std::shared_ptr< SeCommonProtocol > PROTOCOL_ISO14443_4
Definition: SeCommonProtocols.h:87
bool isSessionBufferUsed() const override
Definition: SvGetCmdBuild.cpp:68
StubReaderImpl(const std::string &pluginName, const std::string &readerName)
Definition: StubReaderImpl.cpp:63
GiveRandomCmdBuild(const SamRevision &revision, const std::vector< uint8_t > &random)
Definition: GiveRandomCmdBuild.cpp:32
Definition: CalypsoPoTerminatedException.h:31
int mAlive
Definition: Thread.h:255
Definition: CalypsoPo.h:64
Definition: VerifyPinCmdBuild.h:37
virtual bool wasRatified() const
Definition: AbstractOpenSessionRespPars.cpp:201
GiveRandomRespPars(const std::shared_ptr< ApduResponse > response, GiveRandomCmdBuild *builder)
Definition: GiveRandomRespPars.cpp:49
virtual void plugStubReader(const std::string &name, bool synchronous)=0
Definition: AssertionError.h:22
const std::vector< uint8_t > getApplicationSerialNumberBytes() const
Definition: CalypsoPo.cpp:199
CalypsoSamCommandException(const std::string &message, const std::shared_ptr< CalypsoSamCommand > command, const int statusCode)
Definition: CalypsoSamCommandException.h:42
bool isSessionBufferUsed() const override
Definition: SvUndebitCmdBuild.cpp:115
const std::vector< uint8_t > & getATR() override
Definition: PcscReaderImpl.cpp:419
void onEvent(const InternalEvent event) override
Definition: WaitForSeInsertion.cpp:37
CalypsoInconsistencyDataException(const std::string &message)
Definition: CalypsoInconsistencyDataException.h:36
Definition: AbstractOpenSessionRespPars.h:57
static std::unique_ptr< AidSelectorBuilder > builder()
Definition: SeSelector.cpp:262
static std::shared_ptr< SecureSession > createSecureSession(const std::vector< uint8_t > &apduResponseData)
Definition: OpenSession10RespPars.cpp:57
FileOccurrence(const uint8_t isoBitMask)
Definition: SeSelector.cpp:48
UpdateRecordRespPars(std::shared_ptr< ApduResponse > response, UpdateRecordCmdBuild *builder)
Definition: UpdateRecordRespPars.cpp:96
InstantiationException(const std::string &message)
Definition: InstantiationException.h:27
static const EventType & valueOf(const std::string &name)
Definition: PluginEvent.cpp:52
bool operator==(const SelectionStatus &o) const
Definition: SelectionStatus.cpp:49
AbstractApduResponseParser::StatusProperties StatusProperties
Definition: CardCipherPinRespPars.cpp:39
Definition: AnswerToReset.h:39
CalypsoPoAccessForbiddenException(const std::string &message, const std::shared_ptr< CalypsoPoCommand > command, const int statusCode)
Definition: CalypsoPoAccessForbiddenException.h:38
virtual ~Object()=default
static NotificationMode ALWAYS
Definition: ObservableReader.h:71
Definition: GiveRandomCmdBuild.h:44
virtual void stopWaitForCardRemoval()
Definition: SmartRemovalReader.h:61
KeypleException(const std::string &msg, const std::exception &cause)
Definition: KeypleException.h:39
const std::map< int, std::shared_ptr< StatusProperties > > & getStatusTable() const override
Definition: SvDebitRespPars.cpp:91
static std::shared_ptr< SamSelectorBuilder > builder()
Definition: SamSelector.cpp:85
bool operator==(const AnswerToReset &o) const
Definition: AnswerToReset.cpp:36
Definition: CalypsoSamIOException.h:28
static const int MAX_CEILING_REC_NUMB
Definition: SamReadCeilingsCmdBuild.h:51
bool waitForCardPresent() override
Definition: StubReaderImpl.cpp:223
static Boolean valueOf(bool b)
Definition: Boolean.h:57
WaitForStartDetect(AbstractObservableLocalReader *reader)
Definition: WaitForStartDetect.cpp:21
Definition: WaitForSeProcessing.h:43
ClassNotFoundException(const std::string &message)
Definition: ClassNotFoundException.h:27
static const std::map< std::shared_ptr< SeCommonProtocol >, std::string > getSpecificSettings(const std::set< std::shared_ptr< SeCommonProtocol >> &specificProtocols)
Definition: StubProtocolSetting.cpp:49
void update(const std::shared_ptr< ReaderEvent > event) override
Definition: SamResourceManagerDefault.cpp:364
bool operator==(const PoClass &o) const
Definition: PoClass.cpp:48
virtual ~AbstractSamCommandBuilder()=default
virtual std::shared_ptr< SeSelector > build()
Definition: SeSelector.cpp:290
Definition: AbstractObservablePlugin.h:37
virtual std::set< std::string > getReaderGroupReferences()=0
Definition: SvCheckRespPars.h:40
static const std::string SETTING_DISCONNECT_RESET
Definition: PcscReader.h:47
virtual std::string getSeProcotol()=0
static const FileOccurrence FIRST
Definition: SeSelector.h:74
SamSelectorBuilder & unlockData(const std::vector< uint8_t > &unlockData)
Definition: SamSelector.cpp:119
bool hasActiveSelection() const
Definition: SelectionsResult.cpp:78
std::shared_ptr< SecureSession > toSecureSession(const std::vector< uint8_t > &apduResponseData)
Definition: OpenSession24RespPars.cpp:50
virtual void addObserver(const std::shared_ptr< ObservablePlugin::PluginObserver > observer) override
Definition: AbstractObservablePlugin.cpp:26
static const int PIN_LENGTH
Definition: CalypsoPoUtils.h:128
const std::shared_ptr< ReaderPlugin > getPlugin() const
Definition: ReaderEvent.cpp:112
Definition: VerifyPinRespPars.h:35
int getCounterNumber() const
Definition: DecreaseCmdBuild.cpp:89
std::shared_ptr< SvPrepareOperationRespPars > createResponseParser(const std::shared_ptr< ApduResponse > apduResponse) override
Definition: SvPrepareLoadCmdBuild.cpp:53
const std::vector< uint8_t > getSvDebitData() const
Definition: SvDebitCmdBuild.cpp:90
KeypleReaderIOException(const std::string &msg)
Definition: KeypleReaderIOException.h:46
static std::mutex mtx
Definition: LoggerFactory.h:34
const std::map< int, std::shared_ptr< StatusProperties > > & getStatusTable() const override
Definition: SvUndebitRespPars.cpp:95
SeSelector::SeSelectorBuilder SeSelectorBuilder
Definition: SeSelector.cpp:39
Definition: WaitForSeInsertion.h:41
SamSelectionRequest(std::shared_ptr< SamSelector > samSelector)
Definition: SamSelectionRequest.cpp:37
void processVerifyPin(const std::vector< uint8_t > &pin)
Definition: PoTransaction.cpp:817
const std::string & getPluginName() const override
Definition: StubPoolPluginFactory.cpp:35
const std::shared_ptr< SeReader > getReader(const std::string &name) final
Definition: AbstractPlugin.cpp:63
static const int MASK_1_BYTE
Definition: CalypsoPoUtils.h:60
static const EventType READER_CONNECTED
Definition: PluginEvent.h:52
Definition: OpenSession31RespPars.h:37
PinTransmissionMode getPinTransmissionMode() const
Definition: PoSecuritySettings.cpp:71
PoRevision getRevision() const
Definition: CalypsoPo.cpp:179
SvGetCmdBuild(const PoClass &poClass, const PoRevision &poRevision, const Operation svOperation)
Definition: SvGetCmdBuild.cpp:33
std::shared_ptr< IncreaseRespPars > createResponseParser(std::shared_ptr< ApduResponse > apduResponse) override
Definition: IncreaseCmdBuild.cpp:74
Definition: CalypsoPoAccessForbiddenException.h:31
const std::vector< uint8_t > getSignatureLo() const
Definition: SvDebitRespPars.cpp:86
virtual const std::vector< uint8_t > & getPoChallenge() const
Definition: AbstractOpenSessionRespPars.cpp:191
const std::map< int, std::shared_ptr< StatusProperties > > & getStatusTable() const override
Definition: SamReadEventCounterRespPars.cpp:72
static const std::shared_ptr< SeCommonProtocol > PROTOCOL_B_PRIME
Definition: SeCommonProtocols.h:102
uint8_t getSfi() const
Definition: WriteRecordCmdBuild.cpp:70
Definition: AbstractSeSelectionRequest.h:57
FileNotFoundException(const std::string &message, const std::exception cause)
Definition: FileNotFoundException.h:32
std::map< K, V >::size_type size_type
Definition: ConcurrentMap.h:51
void clearObservers() final
Definition: AbstractThreadedObservablePlugin.cpp:82
std::shared_ptr< UpdateRecordRespPars > createResponseParser(std::shared_ptr< ApduResponse > apduResponse) override
Definition: UpdateRecordCmdBuild.cpp:61
static const int MASK_4_BITS
Definition: CalypsoPoUtils.h:57
StringBuilder * append(const T &toAppend)
Definition: stringbuilder.h:47
static const CalypsoPoCommand UPDATE_RECORD
Definition: CalypsoPoCommand.h:58
std::shared_ptr< SeResource< CalypsoSam > > allocateSamResource(const AllocationMode allocationMode, const std::shared_ptr< SamIdentifier > samIdentifier) override
Definition: SamResourceManagerDefault.cpp:120
static const CalypsoPoCommand OPEN_SESSION_31
Definition: CalypsoPoCommand.h:46
uint8_t getPayloadCapacity() const
Definition: CalypsoPo.cpp:228
virtual bool isSessionBufferUsed() const =0
virtual void finalizeSeProcessing()=0
IndexOutOfBoundsException(const std::string &message)
Definition: IndexOutOfBoundsException.h:27
ReadRecordsCmdBuild(const PoClass &poClass, const uint8_t sfi, const uint8_t firstRecordNumber, const ReadMode readMode, const uint8_t expectedLength)
Definition: ReadRecordsCmdBuild.cpp:38
static const SamRevision S1E
Definition: SamRevision.h:43
virtual uint8_t getSfi() const override
Definition: OpenSession31CmdBuild.cpp:74
virtual int countObservers() const =0
virtual ~AtrFilter()
Definition: SeSelector.h:372
DigestAuthenticateRespPars(const std::shared_ptr< ApduResponse > response, DigestAuthenticateCmdBuild *builder)
Definition: DigestAuthenticateRespPars.cpp:62
const std::string & getApplicationTypeMask() const
Definition: SamRevision.cpp:46
static const int FILE_TYPE_DF
Definition: CalypsoPoUtils.h:97
virtual void clearObservers()=0
virtual uint8_t getRecordNumber() const override
Definition: OpenSession32CmdBuild.cpp:88
std::shared_ptr< GetDataFciRespPars > createResponseParser(std::shared_ptr< ApduResponse > apduResponse) override
Definition: GetDataFciCmdBuild.cpp:40
Definition: PcscTerminalException.h:24
Definition: CalypsoAuthenticationNotVerifiedException.h:31
Definition: SamReadCeilingsCmdBuild.h:41
GetDataTraceCmdBuild(const PoClass poClass)
Definition: GetDataTraceCmdBuild.cpp:28
Definition: NameNotFoundException.h:22
Definition: RehabilitateCmdBuild.h:42
virtual const TransmissionMode & getTransmissionMode() const
Definition: AbstractMatchingSe.cpp:84
bool isSessionBufferUsed() const override
Definition: SelectFileCmdBuild.cpp:101
virtual AbstractApduCommandBuilder * getBuilder() const
Definition: AbstractApduResponseParser.cpp:125
Definition: ByteArrayUtil.h:37
virtual const std::shared_ptr< T > getMatchingSe() const
Definition: SeResource.h:67
~ExecutorService()
Definition: ExecutorService.cpp:30
static const std::shared_ptr< SeCommonProtocol > PROTOCOL_ISO14443_3B
Definition: SeCommonProtocols.h:92
void setSeResponses(const std::vector< std::shared_ptr< SeResponse >> &seResponses)
Definition: KeypleReaderIOException.h:68
virtual void startSeDetection(const PollingMode pollingMode)=0
Definition: SamIdentifier.h:44
const std::map< int, std::shared_ptr< StatusProperties > > & getStatusTable() const override
Definition: SvGetRespPars.cpp:165
void closeAndDisconnect(bool reset)
Definition: PcscTerminal.cpp:240
Definition: UnlockCmdBuild.h:42
SamSelectorBuilder & atrFilter(const std::shared_ptr< AtrFilter > atrFilter) override
Definition: SamSelector.cpp:136
Definition: SamGetChallengeRespPars.h:41
GetDataFciRespPars(std::shared_ptr< ApduResponse > response, GetDataFciCmdBuild *builder)
Definition: GetDataFciRespPars.cpp:95
SelectDiversifierRespPars(const std::shared_ptr< ApduResponse > response, SelectDiversifierCmdBuild *builder)
Definition: SelectDiversifierRespPars.cpp:55
SeSelector(const SeSelector &o)=default
Definition: LoggerFactory.h:29
CalypsoNoSamResourceAvailableException(const std::string &message)
Definition: CalypsoNoSamResourceAvailableException.h:37
virtual ~ProxyReader()
Definition: ProxyReader.h:51
virtual uint8_t getSfi() const override
Definition: OpenSession32CmdBuild.cpp:83
LogRead mSvGetLogReadMode
Definition: PoSecuritySettings.h:95
AbstractSamCommandBuilder< AbstractSamResponseParser > AbstractSamCommandResponse
Definition: SamCommandProcessor.cpp:64
WaitForSeInsertion(AbstractObservableLocalReader *reader)
Definition: WaitForSeInsertion.cpp:25
virtual int countObservers() const final
Definition: AbstractObservablePlugin.cpp:57
Definition: OpenSession32CmdBuild.h:41
bool isSessionBufferUsed() const override
Definition: UpdateRecordCmdBuild.cpp:67
SeRequest(const std::shared_ptr< SeSelector > seSelector, const std::vector< std::shared_ptr< ApduRequest >> &apduRequests)
Definition: SeRequest.cpp:29
void beginExclusive()
Definition: PcscTerminal.cpp:357
const std::vector< uint8_t > getValue()
Definition: TLV.cpp:83
static const std::string SETTING_PROTOCOL_T1
Definition: PcscReader.h:40
const std::string toString() const
Definition: SvLoadLogRecord.cpp:136
static const std::shared_ptr< SeCommonProtocol > PROTOCOL_MIFARE_CLASSIC
Definition: SeCommonProtocols.h:98
Definition: KeyReference.h:27
void prepareReleaseSeChannel()
Definition: SeSelection.cpp:57
const std::set< std::string > & fetchNativeReadersNames() override
Definition: StubPluginImpl.cpp:160
static const std::shared_ptr< SeCommonProtocol > PROTOCOL_NFC_BARCODE
Definition: SeCommonProtocols.h:96
virtual std::shared_ptr< SeSelector > getSeSelector()
Definition: AbstractSeSelectionRequest.h:102
static const int SFI_MAX
Definition: CalypsoPoUtils.h:68
virtual ~SeCommand()=default
void switchState(MonitoringState stateId)
Definition: AbstractObservableState.cpp:50
PoSecuritySettingsBuilder & svNegativeBalance(const NegativeBalance svNegativeBalance)
Definition: PoSecuritySettings.cpp:207
static const CalypsoSamCommand CARD_GENERATE_KEY
Definition: CalypsoSamCommand.h:73
bool hasMatched() const
Definition: SelectionStatus.cpp:44
StringBuilder * insert(std::size_t position, const std::string &toInsert)
Definition: stringbuilder.h:53
const std::vector< uint8_t > getSvTNumBytes() const
Definition: SvLoadLogRecord.cpp:114
virtual bool protocolFlagMatches(const std::shared_ptr< SeProtocol > protocolFlag)=0
SeSelector::AtrFilter AtrFilter
Definition: SeSelector.cpp:38
CalypsoPoIOException(const std::string &message)
Definition: CalypsoPoIOException.h:31
static const int LE_MAX
Definition: CalypsoPoUtils.h:91
virtual void plugStubReaders(const std::set< std::string > &names, bool synchronous)=0
Definition: DigestAuthenticateCmdBuild.h:43
uint8_t getSoftwareIssuer() const
Definition: CalypsoSam.cpp:131
const std::string & getName() const
Definition: PluginEvent.cpp:37
friend std::ostream & operator<<(std::ostream &os, const Byte &b)
Definition: Byte.h:211
Definition: DigestAuthenticateRespPars.h:44
CalypsoDesynchronizedExchangesException(const std::string &message)
Definition: CalypsoDesynchronizedExchangesException.h:33
void freeSamResource(const SeResource< CalypsoSam > &samResource) override
Definition: SamResourceManagerPool.cpp:133
SamReadEventCounterCmdBuild(const SamRevision &revision, const SamEventCounterOperationType operationType, const uint8_t index)
Definition: SamReadEventCounterCmdBuild.cpp:33
void setDefaultSelectionRequest(std::shared_ptr< AbstractDefaultSelectionsRequest > defaultSelectionsRequest, const ObservableReader::NotificationMode ¬ificationMode) final
Definition: AbstractObservableLocalReader.cpp:64
virtual void removeHexCommand(const std::string &command)
Definition: StubSecureElement.cpp:57
IllegalStateException(const std::string &message)
Definition: IllegalStateException.h:27
void pushPoExchangeDataList(const std::vector< std::shared_ptr< ApduRequest >> &requests, const std::vector< std::shared_ptr< ApduResponse >> &responses, const int startIndex)
Definition: SamCommandProcessor.cpp:248
const std::string & getSerialNumber() const
Definition: SamIdentifier.cpp:45
Definition: DigestUpdateCmdBuild.h:45
virtual uint8_t getSfi() const override
Definition: OpenSession10CmdBuild.cpp:85
const std::vector< uint8_t > getCounterData() const
Definition: SamReadEventCounterRespPars.cpp:77
virtual void setDefaultSelectionRequest(std::shared_ptr< AbstractDefaultSelectionsRequest >defaultSelectionsRequest, const NotificationMode ¬ificationMode, const PollingMode pollingMode)=0
const std::string group() const
Definition: Matcher.cpp:99
CardGenerateKeyRespPars(const std::shared_ptr< ApduResponse > response, CardGenerateKeyCmdBuild *builder)
Definition: CardGenerateKeyRespPars.cpp:74
static const AccessLevel SESSION_LVL_NONE
Definition: PoTransaction.h:189
static const std::vector< uint8_t > getSvOperationSignature()
Definition: CalypsoPoUtils.cpp:655
const std::string & getReaderName() const
Definition: ReaderEvent.cpp:102
bool operator!=(const NotificationMode &other)
Definition: ObservableReader.cpp:73
std::string name
Definition: ObservableReader.h:168
Definition: Character.h:20
StringBuilder * replace(std::size_t start, std::size_t end, const std::string &newString)
Definition: stringbuilder.h:97
const std::vector< uint8_t > & getSerialNumber() const
Definition: CalypsoSam.cpp:111
int peekByte()
Definition: BerDecoder.h:70
bool operator!=(const EventType &other) const
bool isCardPresent(bool release)
Definition: PcscTerminal.cpp:133
DigestCloseRespPars(const std::shared_ptr< ApduResponse > response, DigestCloseCmdBuild *builder)
Definition: DigestCloseRespPars.cpp:49
virtual AbstractPoCommandBuilder< AbstractPoResponseParser > * getBuilder() const override
Definition: AbstractPoResponseParser.cpp:52
std::atomic< bool > mRunning
Definition: AbstractMonitoringJob.h:82
std::shared_ptr< SecureSession > mSecureSession
Definition: AbstractOpenSessionRespPars.h:224
KeyplePluginException(const std::string &msg, const std::exception &cause)
Definition: KeyplePluginException.h:40
static std::shared_ptr< PoSelectorBuilder > builder()
Definition: PoSelector.cpp:40
std::shared_ptr< ApduResponse > mResponse
Definition: AbstractApduResponseParser.h:159
const std::vector< uint8_t > & getDiscretionaryData() const
Definition: GetDataFciRespPars.cpp:193
CeilingsOperationType
Definition: SamReadCeilingsCmdBuild.h:56
void setDaemon(bool on)
Definition: Thread.h:156
static std::shared_ptr< SamResourceManager > instantiate(const std::shared_ptr< ReaderPlugin > readerPlugin, const std::string &samReaderFilter, const int maxBlockingTime, const int sleepTime)
Definition: SamResourceManagerFactory.cpp:24
static const int SEL_DF_STATUS_OFFSET
Definition: CalypsoPoUtils.h:122
static int parseInt(const std::string &str, const int radix)
Definition: Integer.h:116
const std::vector< uint8_t > getFreeByteBytes() const
Definition: SvLoadLogRecord.cpp:82
AidSelectorBuilder & fileControlInformation(const FileControlInformation &fileControlInformation)
Definition: SeSelector.cpp:248
const std::map< int, std::shared_ptr< StatusProperties > > & getStatusTable() const override
Definition: DigestAuthenticateRespPars.cpp:71
static std::shared_ptr< AbstractPoResponseParser > updateCalypsoPo(std::shared_ptr< CalypsoPo > calypsoPo, std::shared_ptr< AbstractPoCommandBuilder< AbstractPoResponseParser >> commandBuilder, const std::shared_ptr< ApduResponse > apduResponse)
Definition: CalypsoPoUtils.cpp:487
bool waitForCardAbsentNative() override
Definition: StubReaderImpl.cpp:252
std::shared_ptr< ReaderPlugin > getPlugin(const std::string &name)
Definition: SeProxyService.cpp:81
Definition: CalypsoPo.cpp:36
DigestUpdateMultipleCmdBuild(const SamRevision revision, const bool encryptedSession, const std::vector< uint8_t > &digestData)
Definition: DigestUpdateMultipleCmdBuild.cpp:32
CalypsoSamDataAccessException(const std::string &message, const std::shared_ptr< CalypsoSamCommand > command, const int statusCode)
Definition: CalypsoSamDataAccessException.h:40
Definition: KeypleAllocationNoReaderException.h:28
bool isSessionBufferUsed() const override
Definition: GetDataFciCmdBuild.cpp:46
void prepareInvalidate()
Definition: PoTransaction.cpp:1360
friend PoSecuritySettings
Definition: PoSecuritySettings.h:69
const std::string & getExtraInfo() const
uint8_t getSessionDefaultKif(const AccessLevel &sessionAccessLevel) const
Definition: PoSecuritySettings.cpp:76
NegativeBalance mSvNegativeBalance
Definition: PoSecuritySettings.h:100
const std::map< int, std::vector< uint8_t > > & getAllRecordsContent() const
Definition: FileData.cpp:40
Definition: CalypsoPoAnomalyException.h:31
friend KEYPLECORE_API std::ostream & operator<<(std::ostream &os, const PluginEvent &pe)
Definition: PluginEvent.cpp:104
virtual std::shared_ptr< SeReader > fetchNativeReader(const std::string &name)=0
const std::vector< uint8_t > getSignatureLo() const
Definition: SvReloadRespPars.cpp:100
virtual SeSelectorBuilder & aidSelector(const std::shared_ptr< AidSelector > aidSelector)
Definition: SeSelector.cpp:283
uint8_t getApplicationSubType() const
Definition: CalypsoSam.cpp:126
CardCipherPinRespPars(const std::shared_ptr< ApduResponse > response, CardCipherPinCmdBuild *builder)
Definition: CardCipherPinRespPars.cpp:73
Definition: SeCommonProtocols.h:35
std::mutex m_mutex
Definition: CountDownLatch.h:63
SamRevision mDefaultRevision
Definition: AbstractSamCommandBuilder.h:98
std::map< const std::string, const std::string > mAllocatedReader
Definition: StubPoolPluginImpl.h:56
virtual uint8_t getRecordNumber() const override
Definition: OpenSession24CmdBuild.cpp:91
KeypleReaderException(const std::string &msg, const std::exception &cause)
Definition: KeypleReaderException.h:50
Definition: CalypsoPoUnknownStatusException.h:30
Definition: AbstractThreadedObservablePlugin.h:44
const std::string & getName() const
Definition: SamRevision.cpp:41
static NotificationMode MATCHED_ONLY
Definition: ObservableReader.h:78
Definition: SelectionsResult.h:40
int getTagNumber() const
Definition: Tag.cpp:66
const MonitoringState & getCurrentMonitoringState() const
Definition: ObservableReaderStateService.cpp:69
const std::map< int, std::shared_ptr< StatusProperties > > & getStatusTable() const override
Definition: IncreaseRespPars.cpp:114
AnswerToReset(const std::vector< uint8_t > &atrBytes)
Definition: AnswerToReset.cpp:26
const std::map< int, std::shared_ptr< StatusProperties > > & getStatusTable() const override
Definition: GetDataTraceRespPars.cpp:65
StringBuilder()
Definition: stringbuilder.h:27
virtual void addSubName(const std::string &subName)
Definition: AbstractApduCommandBuilder.cpp:45
PoSecuritySettingsBuilder(std::shared_ptr< SeResource< CalypsoSam >> samResource)
Definition: PoSecuritySettings.cpp:133
Definition: CalypsoUnauthorizedKvcException.h:29
void onEvent(const InternalEvent event) override
Definition: WaitForStartDetect.cpp:33
void removeObserver(const std::shared_ptr< ObservablePlugin::PluginObserver > observer) final
Definition: AbstractThreadedObservablePlugin.cpp:69
bool equals(std::shared_ptr< void > o)
Definition: ApduRequest.cpp:84
SeResource(std::shared_ptr< SeReader > seReader, std::shared_ptr< T > matchingSe)
Definition: SeResource.h:43
Definition: SamResourceManagerFactory.h:35
std::shared_ptr< ExecutorService > mExecutorService
Definition: StubReaderImpl.h:157
ExecutorService()
Definition: ExecutorService.cpp:25
Definition: KeypleException.h:29
Properties()
Definition: Properties.cpp:25
SvUndebitCmdBuild(const PoClass &poClass, const PoRevision &poRevision, const int amount, const uint8_t kvc, const std::vector< uint8_t > &date, const std::vector< uint8_t > &time)
Definition: SvUndebitCmdBuild.cpp:33
void plugStubReaders(const std::set< std::string > &readerNames, const bool synchronous) override
Definition: StubPluginImpl.cpp:78
CloseSessionCmdBuild(const PoClass &poClass, const bool ratificationAsked, const std::vector< uint8_t > &terminalSessionSignature)
Definition: CloseSessionCmdBuild.cpp:37
KeypleException(const std::string &msg)
Definition: KeypleException.h:34
iterator erase(const_iterator position)
Definition: ConcurrentMap.h:125
uint8_t getKvc() const
Definition: SvLoadLogRecord.cpp:91
bool isPinBlocked() const
Definition: CalypsoPo.cpp:551
Definition: SvDebitCmdBuild.h:42
const KeypleAssert & notEmpty(const std::string &obj, const std::string &name) const
Definition: KeypleAssert.cpp:43
virtual bool isManageSecureSessionAuthorized() const
Definition: AbstractOpenSessionRespPars.cpp:295
AbstractPoResponseParser(std::shared_ptr< ApduResponse > response, AbstractPoCommandBuilder< AbstractPoResponseParser > *builder)
Definition: AbstractPoResponseParser.cpp:46
CloseSessionRespPars(std::shared_ptr< ApduResponse > response, CloseSessionCmdBuild *builder)
Definition: CloseSessionRespPars.cpp:76
InvalidateRespPars(std::shared_ptr< ApduResponse > response, InvalidateCmdBuild *builder)
Definition: InvalidateRespPars.cpp:58
bool isSuccessful() const
Definition: AbstractApduResponseParser.cpp:150
static SeProxyService & getInstance()
Definition: SeProxyService.h:46
static const EventType SE_REMOVED
Definition: ReaderEvent.h:68
KeypleSeCommandException(const std::string &message, const std::shared_ptr< SeCommand > command, const int statusCode)
Definition: KeypleSeCommandException.h:61
ReadMode getReadMode() const
Definition: ReadRecordsCmdBuild.cpp:88
const MonitoringState & getMonitoringState() const
Definition: AbstractObservableState.cpp:45
static std::shared_ptr< SecureSession > createSecureSession(const std::vector< uint8_t > &apduResponse)
Definition: OpenSession32RespPars.cpp:51
static const PinTransmissionMode mDefaultPinTransmissionMode
Definition: PoSecuritySettings.h:59
Error(const std::string &msg)
Definition: Error.h:33
static const PoClass LEGACY
Definition: PoClass.h:33
AbstractObservableState(MonitoringState state, AbstractObservableLocalReader *reader, std::shared_ptr< AbstractMonitoringJob > monitoringJob, std::shared_ptr< ExecutorService > executorService)
Definition: AbstractObservableState.cpp:29
void onEvent(const InternalEvent event)
Definition: ObservableReaderStateService.cpp:31
void setThread(std::thread *t)
Definition: Thread.h:247
const std::map< const std::string, const std::string > & listAllocatedReaders()
Definition: StubPoolPluginImpl.cpp:166
static int fourBytesToInt(const std::vector< uint8_t > &bytes, const int offset)
Definition: ByteArrayUtil.cpp:144
const std::shared_ptr< ApduResponse > getApduResponse() const
Definition: AbstractApduResponseParser.cpp:58
static int hashCode(unsigned char value)
Definition: Byte.h:151
static const uint8_t SV_RELOAD_LOG_FILE_SFI
Definition: CalypsoPoUtils.h:131
const std::shared_ptr< SeCommand > mCommandRef
Definition: AbstractApduCommandBuilder.h:98
FileOccurrence & operator=(const FileOccurrence &o)
Definition: SeSelector.cpp:67
bool checkSePresence() override
Definition: StubReaderImpl.cpp:168
Definition: CalypsoDesynchronizedExchangesException.h:28
Definition: stringhelper.h:28
static const CalypsoSamCommand SV_PREPARE_DEBIT
Definition: CalypsoSamCommand.h:113
const std::vector< uint8_t > getSignature() const
Definition: DigestCloseRespPars.cpp:55
static const CalypsoPoCommand GET_DATA_TRACE
Definition: CalypsoPoCommand.h:85
void initializeDigester(const AccessLevel &accessLevel, const bool sessionEncryption, const bool verificationMode, const uint8_t poKif, const uint8_t poKVC, const std::vector< uint8_t > &digestData)
Definition: SamCommandProcessor.cpp:183
void warn(const std::string &format, Args... args)
Definition: Logger.h:92
Definition: IncreaseRespPars.h:44
PoTransaction::SvSettings SvSettings
Definition: SvGetCmdBuild.h:38
int parseByte()
Definition: BerDecoder.h:58
const std::string & getName() const
Definition: AbstractSeProxyComponent.cpp:23
Definition: OpenSession10RespPars.h:33
size_type size() noexcept
Definition: ConcurrentMap.h:207
bool operator!=(const ApduResponse &o) const
Definition: ApduResponse.cpp:92
CalypsoAuthenticationNotVerifiedException(const std::string &message, const std::exception &cause)
Definition: CalypsoAuthenticationNotVerifiedException.h:45
static const std::vector< uint8_t > & getSvGetHeader()
Definition: CalypsoPoUtils.cpp:645
bool operator!=(const AnswerToReset &o) const
Definition: AnswerToReset.cpp:41
PoSecuritySettingsBuilder & sessionDefaultKif(const AccessLevel &sessionAccessLevel, const uint8_t kif)
Definition: PoSecuritySettings.cpp:163
bool equals(std::shared_ptr< void > o) override
Definition: Byte.h:177
AidSelector(AidSelectorBuilder *builder)
Definition: SeSelector.cpp:130
OpenSession24RespPars(std::shared_ptr< ApduResponse > response, OpenSession24CmdBuild *builder)
Definition: OpenSession24RespPars.cpp:37
Definition: DigestUpdateMultipleCmdBuild.h:45
AbstractDefaultSelectionsRequest(const std::vector< std::shared_ptr< SeRequest >> &selectionSeRequests, const MultiSeRequestProcessing &multiSeRequestProcessing, const ChannelControl &channelControl)
Definition: AbstractDefaultSelectionsRequest.cpp:21
NameNotFoundException(const std::string &message, const std::exception cause)
Definition: NameNotFoundException.h:32
bool operator==(const Tag &o) const
Definition: Tag.cpp:87
const std::map< const std::string, const std::string > & getParameters() const override
Definition: StubReaderImpl.cpp:180
static void arraycopy(const std::vector< uint8_t > &src, int srcPos, std::vector< uint8_t > &dest, int destPos, int length)
Definition: System.h:63
Definition: SeSelector.h:189
const std::vector< uint8_t > & getApplicationSerialNumber() const
Definition: GetDataFciRespPars.cpp:187
virtual std::shared_ptr< SeReader > allocateReader(const std::string &groupReference)=0
Definition: SeResponse.h:43
virtual void onEvent(const InternalEvent event)=0
Definition: DecreaseCmdBuild.h:47
virtual const std::vector< std::shared_ptr< SeResponse > > & getSelectionSeResponses() const
Definition: AbstractDefaultSelectionsResponse.cpp:27
SamSelectorBuilder & seProtocol(const std::shared_ptr< SeProtocol > seProtocol) override
Definition: SamSelector.cpp:128
std::ostream & operator<<(std::ostream &os, const FileOccurrence &fc)
Definition: SeSelector.cpp:73
NoSuchElementException(const std::string &message, const std::exception cause)
Definition: NoSuchElementException.h:32
bool isSamResourceFree() const
Definition: SamResourceManager.cpp:77
CalypsoAtomicTransactionException(const std::string &message)
Definition: CalypsoAtomicTransactionException.h:35
Definition: CardGenerateKeyRespPars.h:39
Definition: SeSelector.h:69
static const CalypsoSamCommand DIGEST_UPDATE_MULTIPLE
Definition: CalypsoSamCommand.h:53
virtual std::shared_ptr< T > createResponseParser(std::shared_ptr< ApduResponse > apduResponse)=0
const std::vector< std::shared_ptr< SvDebitLogRecord > > getSvDebitLogAllRecords() const
Definition: CalypsoPo.cpp:535
const std::map< int, std::shared_ptr< StatusProperties > > & getStatusTable() const override
Definition: DigestUpdateRespPars.cpp:77
uint8_t getKvc() const
Definition: SvDebitLogRecord.cpp:70
virtual const ChannelControl & getChannelControl() const final
Definition: AbstractDefaultSelectionsRequest.cpp:41
void setApduResponse(const std::shared_ptr< ApduResponse > &response)
Definition: AbstractApduResponseParser.cpp:53
const std::vector< uint8_t > & getChallengeOut() const
Definition: SvGetRespPars.cpp:145
AidSelectorBuilder & fileOccurrence(const FileOccurrence &fileOccurrence)
Definition: SeSelector.cpp:240
virtual int getTransactionCounterValue() const
Definition: AbstractOpenSessionRespPars.cpp:196
static const CalypsoSamCommand GET_CHALLENGE
Definition: CalypsoSamCommand.h:38
virtual ~SamResourceManagerDefault()=default
const std::string toString() const
Definition: SvReloadRespPars.cpp:105
void removeObserver(const std::shared_ptr< ObservableReader::ReaderObserver > observer) final
Definition: AbstractObservableLocalReader.cpp:256
std::vector< uint8_t > getDataOut() const
Definition: ApduResponse.cpp:78
Definition: stringbuilder.h:22
AbstractApduResponseParser::StatusProperties StatusProperties
Definition: AbstractApduResponseParser.cpp:31
int getModificationsCounter() const
Definition: CalypsoPo.cpp:244
friend KEYPLECORE_API std::ostream & operator<<(std::ostream &os, const SeSelector &ss)
Definition: SeSelector.cpp:327
virtual bool equals(std::shared_ptr< void > o)=0
PoSecuritySettingsBuilder & pinTransmissionMode(const PinTransmissionMode pinTransmissionMode)
Definition: PoSecuritySettings.cpp:156
SeSelector::AidSelector::FileOccurrence FileOccurrence
Definition: SeSelector.cpp:35
virtual ReaderPlugin & getPluginInstance()=0
Definition: SvPrepareOperationRespPars.h:33
static std::string replace(std::string source, const std::string &find, const std::string &replace)
Definition: stringhelper.h:45
virtual ~Byte()
Definition: Byte.h:91
bool checkSePresence() override
Definition: PcscReaderImpl.cpp:142
const std::shared_ptr< SeReader > getReader() const
Definition: ReaderEvent.cpp:117
Definition: PcscReader.h:30
static const CalypsoPoCommand SELECT_FILE
Definition: CalypsoPoCommand.h:76
Definition: PoSecuritySettings.h:64
std::shared_ptr< ObservableReaderStateService > mStateService
Definition: AbstractObservableLocalReader.h:381
static const std::string SETTING_PROTOCOL_T_CL
Definition: PcscReader.h:41
Definition: AbstractApduCommandBuilder.cpp:22
Definition: KeyplePluginInstantiationException.h:30
virtual std::shared_ptr< StubSecureElement > getSe()=0
Definition: CalypsoPoPinException.h:30
KeypleAllocationReaderException(const std::string &msg, const std::exception &cause)
Definition: KeypleAllocationReaderException.h:40
virtual ~SeSelectorBuilder()=default
CalypsoPoSessionBufferOverflowException(const std::string &message, const std::shared_ptr< CalypsoPoCommand > command, const int statusCode)
Definition: CalypsoPoSessionBufferOverflowException.h:38
bool operator!=(const SeResponse &o) const
Definition: SeResponse.cpp:106
DigestInitCmdBuild(const SamRevision &revision, const bool verificationMode, const bool confidentialSessionMode, const uint8_t workKeyRecordNumber, const uint8_t workKeyKif, const uint8_t workKeyKVC, const std::vector< uint8_t > &digestData)
Definition: DigestInitCmdBuild.cpp:33
const std::vector< std::shared_ptr< AbstractPoCommandBuilder< AbstractPoResponseParser > > > getPoCommandBuilders()
Definition: PoCommandManager.cpp:84
Definition: DigestCloseCmdBuild.h:42
virtual const std::shared_ptr< SeCommand > getCommandRef() const override
Definition: AbstractPoCommandBuilder.h:84
const std::shared_ptr< AbstractMatchingSe > getActiveMatchingSe()
Definition: SelectionsResult.cpp:43
void endExclusive()
Definition: PcscTerminal.cpp:361
virtual bool operator==(const SeReader &o) const
Definition: SeReader.h:100
bool find()
Definition: Matcher.cpp:59
PinTransmissionMode
Definition: PoTransaction.h:89
SeSelector::AidSelector::FileControlInformation FileControlInformation
Definition: SeSelector.cpp:36
NoSuchMethodException(const std::string &message)
Definition: NoSuchMethodException.h:27
std::shared_ptr< SvGetRespPars > createResponseParser(std::shared_ptr< ApduResponse > apduResponse) override
Definition: SvGetCmdBuild.cpp:62
const std::string & getName() const
Definition: PoTransaction.cpp:1390
std::vector< uint8_t > transmitApdu(const std::vector< uint8_t > &apduIn) override
Definition: PcscReaderImpl.cpp:231
Definition: SmartInsertionReader.h:26
PcscReaderImpl(const std::string &pluginName, const PcscTerminal &terminal)
Definition: PcscReaderImpl.cpp:52
PoTransaction::SessionSetting::RatificationMode RatificationMode
Definition: PoSecuritySettings.h:33
static const int EF_TYPE_SIMULATED_COUNTERS
Definition: CalypsoPoUtils.h:107
static const uint8_t SV_RELOAD_LOG_FILE_NB_REC
Definition: CalypsoPoUtils.h:132
Definition: KeypleAllocationNoReaderException.h:22
virtual void stopSeDetection()=0
const std::vector< uint8_t > & getBytes() const
Definition: AnswerToReset.cpp:31
const KeypleAssert & isEqual(const int number, const int value, const std::string &name) const
Definition: KeypleAssert.cpp:82
Definition: IncreaseCmdBuild.h:48
Definition: CardPresentMonitoringJob.h:38
static int threeBytesToInt(const std::vector< uint8_t > &bytes, const int offset)
Definition: ByteArrayUtil.cpp:115
Definition: CardCipherPinCmdBuild.h:29
const std::vector< uint8_t > & getCalypsoSerialNumber() const
Definition: CalypsoPo.cpp:194
void await(void)
Definition: CountDownLatch.h:25
virtual ~AbstractOpenSessionRespPars()=default
KeypleRuntimeException(const std::string &message, std::exception cause)
Definition: KeypleRuntimeException.h:47
static std::string toString(unsigned char b)
Definition: Byte.h:128
static const int SEL_AC_OFFSET
Definition: CalypsoPoUtils.h:118
void removeSe() override
Definition: StubReaderImpl.cpp:211
bool hasAtr() const
Definition: AbstractMatchingSe.cpp:63
std::shared_ptr< SamReadEventCounterRespPars > createResponseParser(const std::shared_ptr< ApduResponse > apduResponse) override
Definition: SamReadEventCounterCmdBuild.cpp:66
ElementaryFile(const uint8_t sfi)
Definition: ElementaryFile.cpp:26
SvLoadLogRecord(const std::vector< uint8_t > &poResponse, const int offset)
Definition: SvLoadLogRecord.cpp:30
bool isSessionBufferUsed() const override
Definition: IncreaseCmdBuild.cpp:80
ReadMode
Definition: ReadRecordsCmdBuild.h:51
const std::set< std::string > & fetchNativeReadersNames() override
Definition: PcscPluginImpl.cpp:63
std::shared_ptr< DefaultSelectionsRequest > mDefaultSelectionsRequest
Definition: AbstractReader.h:120
static std::vector< char > copyOfRange(const std::vector< char > &original, int from, int to)
Definition: Arrays.h:77
SamGetChallengeCmdBuild(const SamRevision &revision, const uint8_t expectedResponseLength)
Definition: SamGetChallengeCmdBuild.cpp:32
std::future< void > * mMonitoringEvent
Definition: AbstractObservableState.h:101
Definition: AbstractOpenSessionRespPars.h:51
static const std::string SETTING_TRANSMISSION_MODE_CONTACTLESS
Definition: PcscReader.h:37
virtual bool checkSePresence()=0
NameNotFoundException(const std::string &message)
Definition: NameNotFoundException.h:27
iterator insert(const_iterator position, const value_type &val)
Definition: ConcurrentMap.h:83
SvUndebitRespPars(std::shared_ptr< ApduResponse > response, SvUndebitCmdBuild *builder)
Definition: SvUndebitRespPars.cpp:82
static const int MASK_3_BYTES
Definition: CalypsoPoUtils.h:62
virtual bool isLogicalChannelOpen() const final
Definition: AbstractLocalReader.cpp:179
const std::vector< uint8_t > getCipheredData() const
Definition: CardGenerateKeyRespPars.cpp:88
void onActivate()
Definition: AbstractObservableState.cpp:55
virtual void finalize()=0
bool operator!=(const PcscTerminal &o) const
Definition: PcscTerminal.cpp:370
virtual std::vector< std::shared_ptr< SeResponse > > processSeRequests(const std::vector< std::shared_ptr< SeRequest >> &seRequests, const MultiSeRequestProcessing &multiSeRequestProcessing, const ChannelControl &channelControl) override
Definition: AbstractLocalReader.cpp:212
Definition: ReaderPlugin.h:36
virtual bool isManageSecureSessionAuthorized() const
Definition: AbstractOpenSessionRespPars.cpp:206
PoSecuritySettingsBuilder & sessionAuthorizedKvcList(const std::vector< uint8_t > &authorizedKvcList)
Definition: PoSecuritySettings.cpp:186
void setParameter(const std::string &name, const std::string &value) override
Definition: PcscReaderImpl.cpp:287
SamIdentifier::SamIdentifierBuilder SamIdentifierBuilder
Definition: SamIdentifier.cpp:26
Definition: CalypsoPoIllegalParameterException.h:31
const std::vector< uint8_t > getCipheredData() const
Definition: CardCipherPinRespPars.cpp:86
Definition: SamResourceManagerPool.h:37
const std::vector< uint8_t > getDebitDateBytes() const
Definition: SvDebitLogRecord.cpp:61
virtual void closePhysicalChannel()=0
int getSvBalance() const
Definition: CalypsoPo.cpp:494
std::shared_ptr< FileData > getData() const
Definition: ElementaryFile.cpp:50
CalypsoAuthenticationNotVerifiedException(const std::string &message)
Definition: CalypsoAuthenticationNotVerifiedException.h:36
static std::string trimEnd(std::string source, const std::string &trimChars=" \t\n\r\v\f")
Definition: stringhelper.h:35
AbstractReader(const std::string &pluginName, const std::string &name)
Definition: AbstractReader.cpp:42
KeypleSeCommandUnknownStatusException(const std::string &message, const std::shared_ptr< SeCommand > command, const int statusCode)
Definition: KeypleSeCommandUnknownStatusException.h:36
static std::unique_ptr< SelectFileCmdBuild > prepareSelectFile(const PoClass &poClass, const std::vector< uint8_t > &lid)
Definition: CalypsoPoUtils.cpp:617
const std::map< int, std::shared_ptr< StatusProperties > > & getStatusTable() const override
Definition: InvalidateRespPars.cpp:64
std::shared_ptr< SeResponse > transmitSeRequest(std::shared_ptr< SeRequest > seRequest, const ChannelControl &channelControl) override
Definition: AbstractReader.cpp:107
Definition: SamReadCeilingsRespPars.h:38
std::shared_ptr< SeResource< CalypsoSam > > allocateSamResource(const AllocationMode allocationMode, const std::shared_ptr< SamIdentifier > samIdentifier) override
Definition: SamResourceManagerPool.cpp:57
Definition: InvalidateRespPars.h:35
Definition: CalypsoAtomicTransactionException.h:22
void switchState(const MonitoringState stateId)
Definition: AbstractObservableLocalReader.cpp:226
static const std::string SETTING_KEY_TRANSMISSION_MODE
Definition: PcscReader.h:35
Definition: ClassNotFoundException.h:22
const std::string & getName() const
ApduRequest(const std::vector< uint8_t > &buffer, bool case4, std::shared_ptr< std::set< int >> successfulStatusCodes)
Definition: ApduRequest.cpp:41
int getBalance() const
Definition: SvDebitLogRecord.cpp:37
static const CalypsoPoCommand SV_GET
Definition: CalypsoPoCommand.h:88
PoSecuritySettingsBuilder & ratificationMode(const RatificationMode ratificationMode)
Definition: PoSecuritySettings.cpp:149
size_type count(const K &k) const
Definition: ConcurrentMap.h:198
Definition: SamReadKeyParametersRespPars.h:38
static const CalypsoPoCommand GET_DATA_FCI
Definition: CalypsoPoCommand.h:37
const std::shared_ptr< SeReader > getReader(const std::string &name) override
Definition: StubPoolPluginImpl.cpp:182
InternalEvent
Definition: AbstractObservableLocalReader.h:44
PoSelectorBuilder & aidSelector(const std::shared_ptr< AidSelector > aidSelector) override
Definition: PoSelector.cpp:69
ChangeKeyRespPars(std::shared_ptr< ApduResponse > response, ChangeKeyCmdBuild *builder)
Definition: ChangeKeyRespPars.cpp:90
Definition: CalypsoSamCommand.h:28
void stopWaitForCard() override
Definition: PcscReaderImpl.cpp:189
CardAbsentPingMonitoringJob(AbstractObservableLocalReader *reader)
Definition: CardAbsentPingMonitoringJob.cpp:26
const std::map< int, std::shared_ptr< StatusProperties > > & getStatusTable() const override
Definition: AppendRecordRespPars.cpp:96
SamSelector(SamSelectorBuilder *builder)
Definition: SamSelector.cpp:39
virtual ConcurrentMap< const std::string, std::shared_ptr< SeReader > > & getReaders()=0
const std::string & getName() const override
Definition: StubPoolPluginImpl.cpp:46
virtual std::vector< std::shared_ptr< SeResponse > > transmitSeRequests(const std::vector< std::shared_ptr< SeRequest >> &seRequests, const MultiSeRequestProcessing &multiSeRequestProcessing, const ChannelControl &channelControl)=0
virtual void setDefaultSelectionRequest(std::shared_ptr< AbstractDefaultSelectionsRequest > defaultSelectionsRequest, const NotificationMode ¬ificationMode)=0
void onEvent(const InternalEvent event)
Definition: AbstractObservableLocalReader.cpp:238
void setContent(const uint8_t sfi, const int numRecord, const std::vector< uint8_t > &content)
Definition: CalypsoPo.cpp:380
Definition: AppendRecordRespPars.h:39
DirectoryHeader::DirectoryHeaderBuilder DirectoryHeaderBuilder
Definition: DirectoryHeader.cpp:32
void prepareReadRecordFile(const uint8_t sfi, const uint8_t recordNumber)
Definition: PoTransaction.cpp:1010
Definition: GiveRandomRespPars.h:42
Definition: AbstractPluginFactory.h:23
std::map< MonitoringState, std::shared_ptr< AbstractObservableState > > & getStates()
Definition: ObservableReaderStateService.h:77
virtual std::shared_ptr< ApduResponse > getFci() const
Definition: SelectionStatus.cpp:39
virtual const std::shared_ptr< SeReader > getSeReader() const
Definition: SeResource.h:59
std::shared_ptr< ChangeKeyRespPars > createResponseParser(std::shared_ptr< ApduResponse > apduResponse) override
Definition: ChangeKeyCmdBuild.cpp:55
std::shared_ptr< DigestUpdateMultipleRespPars > createResponseParser(const std::shared_ptr< ApduResponse > apduResponse) override
Definition: DigestUpdateMultipleCmdBuild.cpp:52
RatificationMode
Definition: PoTransaction.h:264
virtual void clearObservers() override
Definition: AbstractObservablePlugin.cpp:52
virtual uint8_t getKIF() const
Definition: AbstractOpenSessionRespPars.cpp:300
Definition: FileData.h:33
Definition: CalypsoInconsistencyDataException.h:31
uint8_t getApplicationType() const
Definition: CalypsoPo.cpp:254
PoClass & operator=(const PoClass &o)
Definition: PoClass.cpp:36
NavControl
Definition: SamReadKeyParametersCmdBuild.h:54
static const CalypsoPoCommand SV_DEBIT
Definition: CalypsoPoCommand.h:91
const std::vector< uint8_t > & getATR()
Definition: PcscTerminal.cpp:249
void clearObservers() final
Definition: AbstractObservableLocalReader.cpp:292
static std::string uint8ToHexString(const uint8_t v)
Definition: stringhelper.h:98
void notifyCommandsProcessed()
Definition: PoCommandManager.cpp:78
CalypsoPoSecurityContextException(const std::string &message, const std::shared_ptr< CalypsoPoCommand > command, const int statusCode)
Definition: CalypsoPoSecurityContextException.h:38
int getTextLength() const
Definition: Matcher.cpp:114
static std::string toString(int i)
Definition: Integer.h:82
friend KEYPLECORE_API std::ostream & operator<<(std::ostream &os, const EventType &et)
bool isSePresent() override
Definition: AbstractObservableLocalReader.cpp:28
Definition: SamResourceManagerDefault.h:85
Definition: SmartRemovalReader.h:27
bool operator==(const FileOccurrence &o) const
Definition: SeSelector.cpp:57
Error()
Definition: Error.h:28
virtual const std::shared_ptr< ApduRequest > getApduRequest() const
Definition: AbstractApduCommandBuilder.cpp:64
FileHeader::FileType FileType
Definition: CalypsoPoUtils.h:46
SmartInsertionMonitoringJob(SmartInsertionReader *reader)
Definition: SmartInsertionMonitoringJob.cpp:32
bool isDfInvalidated() const
Definition: GetDataFciRespPars.cpp:198
static const CalypsoPoCommand GET_CHALLENGE
Definition: CalypsoPoCommand.h:67
static const std::string SETTING_KEY_DISCONNECT
Definition: PcscReader.h:46
static const std::string SETTING_DISCONNECT_UNPOWER
Definition: PcscReader.h:48
void stopSeDetection() final
Definition: AbstractObservableLocalReader.cpp:56
virtual ~AbstractPoResponseParser()=default
static const KeypleAssert & getInstance()
Definition: KeypleAssert.cpp:29
PoSecuritySettings::PoSecuritySettingsBuilder PoSecuritySettingsBuilder
Definition: PoSecuritySettings.cpp:27
std::vector< uint8_t > mAidToSelect
Definition: SeSelector.h:241
Definition: KeypleSeCommandException.h:37
AbstractPoCommandBuilder(std::shared_ptr< CalypsoPoCommand > commandRef, std::shared_ptr< ApduRequest > request)
Definition: AbstractPoCommandBuilder.h:56
bool operator==(const PcscTerminal &o) const
Definition: PcscTerminal.cpp:365
Definition: CalypsoSamAccessForbiddenException.h:32
void unplugStubReader(const std::string &readerName, const bool synchronous) override
Definition: StubPluginImpl.cpp:113
PinTransmissionMode mPinTransmissionMode
Definition: PoSecuritySettings.h:85
virtual void plugStubReader(const std::string &name, TransmissionMode transmissionMode, bool synchronous)=0
virtual ~AbstractApduResponseParser()=default
void addCyclicContent(const uint8_t sfi, const std::vector< uint8_t > &content)
Definition: CalypsoPo.cpp:413
CalypsoSamIOException(const std::string &message, const std::exception &cause)
Definition: CalypsoSamIOException.h:42
PoGetChallengeCmdBuild(PoClass poClass)
Definition: PoGetChallengeCmdBuild.cpp:36
void checkSvStatus(const std::vector< uint8_t > &svOperationResponseData)
Definition: SamCommandProcessor.cpp:608
AbstractApduCommandBuilder * mBuilder
Definition: AbstractApduResponseParser.h:166
ChannelControl
Definition: ChannelControl.h:25
void prepareDecreaseCounter(const uint8_t sfi, const uint8_t counterNumber, const int decValue)
Definition: PoTransaction.cpp:1174
AssertionError(const std::string &msg)
Definition: AssertionError.h:32
DecreaseCmdBuild(const PoClass poClass, const uint8_t sfi, const uint8_t counterNumber, const int decValue)
Definition: DecreaseCmdBuild.cpp:37
Definition: SmartRemovalMonitoringJob.h:46
Definition: ReaderEvent.h:41
virtual uint8_t getRecordNumber() const override
Definition: OpenSession10CmdBuild.cpp:90
virtual bool isSuccessful() const
Definition: AbstractApduResponseParser.cpp:79
void info(const std::string &format, Args... args)
Definition: Logger.h:102
static const AccessLevel SESSION_LVL_LOAD
Definition: PoTransaction.h:199
const std::shared_ptr< SvLoadLogRecord > getSvLoadLogRecord()
Definition: CalypsoPo.cpp:510
virtual std::shared_ptr< AtrFilter > getAtrFilter() const
Definition: SeSelector.cpp:317
Definition: AppendRecordCmdBuild.h:45
int getLoadTime() const
Definition: SvLoadLogRecord.cpp:43
std::shared_ptr< SelectFileRespPars > createResponseParser(std::shared_ptr< ApduResponse > apduResponse) override
Definition: SelectFileCmdBuild.cpp:95
PluginObserver(const std::shared_ptr< ReaderObserver > readerObserver, const std::string &samReaderFilter, SamResourceManagerDefault &parent)
Definition: SamResourceManagerDefault.cpp:253
Definition: CardCipherPinCmdBuild.cpp:30
static const int MAX_COUNTER_NUMB
Definition: SamReadEventCounterCmdBuild.h:46
virtual bool isPreviousSessionRatified() const
Definition: AbstractOpenSessionRespPars.cpp:289
virtual ~ProxyElement()=default
std::shared_ptr< SecureSession > toSecureSession(const std::vector< uint8_t > &apduResponseData)
Definition: OpenSession31RespPars.cpp:43
Definition: CalypsoSessionAuthenticationException.h:30
Definition: CalypsoPoTransactionException.h:29
Definition: SvDebitRespPars.h:77
static std::shared_ptr< SecureSession > createSecureSession(const std::vector< uint8_t > &apduResponseData)
Definition: OpenSession24RespPars.cpp:56
@ WORK_KEY
Definition: SamReadKeyParametersCmdBuild.h:49
virtual bool isSessionBufferUsed() const override
Definition: RehabilitateCmdBuild.cpp:45
uint8_t getInstructionByte() const
Definition: CalypsoSamCommand.cpp:49
virtual ~SamResourceManager()=default
const ObservableReader::PollingMode & getPollingMode() const
Definition: AbstractObservableLocalReader.cpp:221
std::string getStatusInformation() const
Definition: AbstractApduResponseParser.cpp:86
CountDownLatch(const unsigned int count)
Definition: CountDownLatch.h:22
const std::string getAtr() const
Definition: CalypsoPo.cpp:234
SamResourceStatus
Definition: SamResourceManager.h:60
Definition: SvGetRespPars.h:42
Definition: CalypsoPoUtils.h:51
Definition: SeReader.h:42
void setParameters(const std::map< const std::string, const std::string > ¶meters) override
Definition: StubPoolPluginImpl.cpp:200
Definition: SvPrepareUndebitCmdBuild.h:34
Definition: KeypleAllocationReaderException.h:27
virtual uint8_t getRecordNumber() const =0
int getDebitDate() const
Definition: SvDebitLogRecord.cpp:56
std::shared_ptr< AbstractOpenSessionRespPars > createResponseParser(std::shared_ptr< ApduResponse > apduResponse) override
Definition: OpenSession10CmdBuild.cpp:74
virtual void setSeProtocolSetting(const std::map< std::shared_ptr< SeProtocol >, std::string > &protocolSetting) override
Definition: AbstractLocalReader.cpp:203
Definition: InvocationTargetException.h:22
bool operator==(const CalypsoPoCommand &other) const
Definition: CalypsoPoCommand.cpp:85
static const FileOccurrence PREVIOUS
Definition: SeSelector.h:77
std::shared_ptr< SeReader > plugStubPoolReader(const std::string &groupReference, const std::string &readerName, std::shared_ptr< StubSecureElement > se) override
Definition: StubPoolPluginImpl.cpp:62
bool isValidCalypsoFCI() const
Definition: GetDataFciRespPars.cpp:177
IncreaseRespPars(std::shared_ptr< ApduResponse > response, IncreaseCmdBuild *builder)
Definition: IncreaseRespPars.cpp:106
void setSeResponse(const std::shared_ptr< SeResponse > seResponse)
Definition: KeypleReaderIOException.h:85
void setParameter(const std::string &name, const std::string &value) override
Definition: StubReaderImpl.cpp:175
Definition: SelectionStatus.h:40
Definition: PoGetChallengeCmdBuild.h:44
virtual const std::vector< uint8_t > & getChallengeRandomNumber() const
Definition: AbstractOpenSessionRespPars.cpp:284
SamSelectorBuilder & serialNumber(const std::string &serialNumber)
Definition: SamSelector.cpp:105
SamRevision & operator=(const SamRevision &o)
Definition: SamRevision.cpp:68
void setName(const std::string &name)
Definition: ApduRequest.cpp:64
const std::map< const std::string, const std::string > & getParameters() const override
Definition: StubPluginImpl.cpp:41
void removeResource(const std::shared_ptr< SeReader > samReader)
Definition: SamResourceManagerDefault.cpp:104
StubPluginFactory(const std::string &pluginName)
Definition: StubPluginFactory.cpp:26
Definition: StubSecureElement.h:33
Definition: AbstractPoCommandBuilder.h:36
std::size_t capacity()
Definition: stringbuilder.h:81
static int hashCode(const std::vector< char > a)
Definition: Arrays.h:57
Definition: PluginEvent.h:42
static std::thread::id currentThreadId()
Definition: Thread.h:231
static int threeBytesSignedToInt(const std::vector< uint8_t > &bytes, const int offset)
Definition: ByteArrayUtil.cpp:125
CalypsoPoAnomalyException(const std::string &message, const std::exception &cause)
Definition: CalypsoPoAnomalyException.h:40
int getSvTNum() const
Definition: SvDebitLogRecord.cpp:87
void finalizeBuilder(const std::vector< uint8_t > &undebitComplementaryData)
Definition: SvUndebitCmdBuild.cpp:76
static void runThread(void *arg)
Definition: Thread.h:94
SamWriteKeyRespPars(const std::shared_ptr< ApduResponse > response, SamWriteKeyCmdBuild *builder)
Definition: SamWriteKeyRespPars.cpp:90
const std::shared_ptr< ReaderObserver > mReaderObserver
Definition: SamResourceManagerDefault.h:90
int getTagSize() const
Definition: Tag.cpp:81
virtual const MultiSeRequestProcessing & getMultiSeRequestProcessing() const final
Definition: AbstractDefaultSelectionsRequest.cpp:36
const std::string & getPluginName() const
Definition: ReaderEvent.cpp:97
static const SamRevision S1D
Definition: SamRevision.h:48
@ WAIT_FOR_START_DETECTION
void notifyObservers(const std::shared_ptr< ReaderEvent > event) final
Definition: AbstractObservableLocalReader.cpp:268
virtual ~AbstractObservableLocalReader()=default
Definition: Exception.h:24
bool operator!=(const SelectionStatus &o) const
Definition: SelectionStatus.cpp:60
SeCommand(const SeCommand &sc)=default
void prepareSvDebit(const int amount, const std::vector< uint8_t > &date, const std::vector< uint8_t > &time)
Definition: PoTransaction.cpp:1328
bool operator==(const AccessLevel &o) const
Definition: PoTransaction.cpp:1400
Definition: OpenSession31CmdBuild.h:40
const MonitoringState & getCurrentMonitoringState() const
Definition: AbstractObservableLocalReader.cpp:233
static const std::string SETTING_PROTOCOL_TX
Definition: PcscReader.h:42
const std::string & getMessage() const
Definition: Exception.h:45
Definition: AbstractObservableState.h:53
static const std::string SETTING_TRANSMISSION_MODE_CONTACTS
Definition: PcscReader.h:36
std::shared_ptr< GiveRandomRespPars > createResponseParser(const std::shared_ptr< ApduResponse > apduResponse) override
Definition: GiveRandomCmdBuild.cpp:51
Definition: KeypleStd.h:24
std::unordered_map< std::string, std::string > mHexCommands
Definition: StubSecureElement.h:43
SeSelection()
Definition: SeSelection.cpp:43
static const std::string SETTING_DISCONNECT_LEAVE
Definition: PcscReader.h:49
Definition: PoTransaction.h:67
static const CalypsoPoCommand INCREASE
Definition: CalypsoPoCommand.h:70
static std::string toHex(const std::vector< char > &byteArray)
Definition: ByteArrayUtil.cpp:70
PoSelector::PoSelectorBuilder PoSelectorBuilder
Definition: PoSelector.cpp:28
static const std::vector< std::shared_ptr< SeCommonProtocol > > values
Definition: SeCommonProtocols.h:114
void openPhysicalChannel() override
Definition: StubReaderImpl.cpp:95
Definition: CalypsoSamUnknownStatusException.h:32
Definition: AbstractDefaultSelectionsRequest.h:47
bool equals(Object *obj)
Definition: Byte.h:165
const std::vector< uint8_t > getSvReloadComplementaryData(std::shared_ptr< SvReloadCmdBuild > svReloadCmdBuild, const std::vector< uint8_t > &svGetHeader, const std::vector< uint8_t > &svGetData)
Definition: SamCommandProcessor.cpp:560
virtual ~ApduRequest()
Definition: ApduRequest.h:92
const EventType & getEventType() const
Definition: ReaderEvent.cpp:107
void setDfRatified(const bool dfRatified)
Definition: CalypsoPo.cpp:319
Byte & operator=(Byte other)
Definition: Byte.h:98
int getTransactionNumber() const
Definition: SvGetRespPars.cpp:135
SamIdentifierBuilder & groupReference(const std::string &groupReference)
Definition: SamIdentifier.cpp:96
static const int SEL_REC_SIZE_OFFSET
Definition: CalypsoPoUtils.h:116
const std::vector< std::shared_ptr< AbstractPoCommandBuilder< AbstractPoResponseParser > > > getCommandBuilders() const
Definition: AbstractSeSelectionRequest.h:152
CalypsoPoSecurityDataException(const std::string &message, const std::shared_ptr< CalypsoPoCommand > command, const int statusCode)
Definition: CalypsoPoSecurityDataException.h:38
#define KEYPLECORE_API
Definition: KeypleCoreExport.h:23
Definition: CardAbsentPingMonitoringJob.h:45
Definition: SecurityException.h:22
static const std::map< std::shared_ptr< SeCommonProtocol >, std::string > & getAllSettings()
Definition: PcscProtocolSetting.cpp:59
static char digit(char ch, int radix)
Definition: Character.h:22
const std::string & getName() const
Definition: CalypsoSamCommand.cpp:44
const std::string & getInformation() const
Definition: AbstractApduResponseParser.cpp:155
std::shared_ptr< SecureSession > toSecureSession(const std::vector< uint8_t > &apduResponseData)
Definition: OpenSession32RespPars.cpp:44
uint8_t getRecordNumber() const
Definition: UpdateRecordCmdBuild.cpp:77
Definition: PoSelectionRequest.h:62
Definition: ChangeKeyCmdBuild.h:40
PoTransaction::SessionSetting::AccessLevel AccessLevel
Definition: DirectoryHeader.h:28
AbstractApduCommandBuilder * getBuilder() const override
Definition: AbstractSamResponseParser.cpp:68
SeSelectorBuilder()
Definition: SeSelector.h:468
const std::vector< uint8_t > & getATR() override
Definition: StubReaderImpl.cpp:79
std::shared_ptr< AbstractOpenSessionRespPars > create(std::shared_ptr< ApduResponse > response, const PoRevision revision)
Definition: AbstractOpenSessionRespPars.cpp:164
const std::shared_ptr< KeyReference > getDefaultPinCipheringKey() const
Definition: PoSecuritySettings.cpp:116
virtual void unplugStubReaders(const std::set< std::string > &names, bool synchronous)=0
static const CalypsoPoCommand OPEN_SESSION_32
Definition: CalypsoPoCommand.h:49
bool isDfInvalidated() const
Definition: CalypsoPo.cpp:309
ApduResponse(const std::vector< uint8_t > &buffer, std::shared_ptr< std::set< int >> successfulStatusCodes)
Definition: ApduResponse.cpp:31
AppendRecordRespPars(std::shared_ptr< ApduResponse > response, AppendRecordCmdBuild *builder)
Definition: AppendRecordRespPars.cpp:88
virtual bool atrMatches(const std::vector< uint8_t > &atr)
Definition: SeSelector.cpp:195
ExecutorService(const ExecutorService &o)=delete
CardCipherPinCmdBuild(const SamRevision &revision, const std::shared_ptr< KeyReference > cipheringKey, const std::vector< uint8_t > ¤tPin, const std::vector< uint8_t > &newPin)
Definition: CardCipherPinCmdBuild.cpp:37
virtual bool isSessionBufferUsed() const override
Definition: PoGetChallengeCmdBuild.cpp:54
bool waitForCardAbsentNative() override
Definition: PcscReaderImpl.cpp:194
virtual ~PluginObserver()=default
static const uint8_t SV_DEBIT_LOG_FILE_SFI
Definition: CalypsoPoUtils.h:133
bool protocolFlagMatches(const std::shared_ptr< SeProtocol > protocolFlag) override
Definition: StubReaderImpl.cpp:124
uint16_t getStatusCode() const
Definition: ApduResponse.cpp:60
Definition: AbstractSamCommandBuilder.h:48
static const CalypsoPoCommand APPEND_RECORD
Definition: CalypsoPoCommand.h:64
void processCancel()
Definition: PoTransaction.cpp:791
static NotificationMode get(const std::string &name)
Definition: ObservableReader.cpp:60
std::shared_ptr< DigestUpdateRespPars > createResponseParser(const std::shared_ptr< ApduResponse > apduResponse) override
Definition: DigestUpdateCmdBuild.cpp:53
const std::shared_ptr< SeCommand > getCommandRef() const override
Definition: AbstractSamCommandBuilder.h:83
AbstractApduResponseParser::StatusProperties StatusProperties
Definition: AbstractSamResponseParser.cpp:40
friend std::ostream & operator<<(std::ostream &os, const ConcurrentMap< K, V > &cm)
Definition: ConcurrentMap.h:216
static const int SEL_LID_OFFSET
Definition: CalypsoPoUtils.h:126
const TransmissionMode & getTransmissionMode() const override
Definition: StubReaderImpl.cpp:185
static const AccessLevel SESSION_LVL_PERSO
Definition: PoTransaction.h:194
bool unregisterPlugin(const std::string &pluginName)
Definition: SeProxyService.cpp:55
virtual uint8_t getRecordNumber() const override
Definition: OpenSession31CmdBuild.cpp:79
uint8_t getPlatform() const
Definition: CalypsoSam.cpp:116
~PcscReaderImpl()
Definition: PcscReaderImpl.cpp:82
const std::string toString() const
Definition: SvDebitRespPars.cpp:96
virtual bool waitForCardAbsentNative()=0
static int twoBytesSignedToInt(const std::vector< uint8_t > &bytes, const int offset)
Definition: ByteArrayUtil.cpp:102
RehabilitateCmdBuild(const PoClass &poClass)
Definition: RehabilitateCmdBuild.cpp:28
std::shared_ptr< AbstractOpenSessionRespPars > createResponseParser(std::shared_ptr< ApduResponse > apduResponse) override
Definition: OpenSession31CmdBuild.cpp:63
CardPresentMonitoringJob(SeReader *reader, long waitTimeout, bool monitorInsertion)
Definition: CardPresentMonitoringJob.cpp:27
static const CalypsoPoCommand SV_UNDEBIT
Definition: CalypsoPoCommand.h:97
void finalizeSeProcessing() override
Definition: AbstractObservableLocalReader.cpp:297
const EventType & getEventType() const
Definition: PluginEvent.cpp:99
Definition: AbstractOpenSessionCmdBuild.h:66
std::shared_ptr< PoSecuritySettings > build()
Definition: PoSecuritySettings.cpp:214
const std::map< int, std::shared_ptr< StatusProperties > > & getStatusTable() const override
Definition: RehabilitateRespPars.cpp:64
Definition: RehabilitateRespPars.h:35
void setParameter(const std::string &key, const std::string &value) override
Definition: StubPluginImpl.cpp:46
uint8_t getSfi() const
Definition: ReadRecordsCmdBuild.cpp:78
Definition: ApduRequest.h:39
std::shared_ptr< PoGetChallengeRespPars > createResponseParser(std::shared_ptr< ApduResponse > apduResponse) override
Definition: PoGetChallengeCmdBuild.cpp:48
void setPinAttemptRemaining(const int pinAttemptCounter)
Definition: CalypsoPo.cpp:564
virtual bool waitForCardPresent()=0
StringBuilder(const std::string &initialString)
Definition: stringbuilder.h:29
Definition: OpenSession10CmdBuild.h:40
Definition: AbstractDefaultSelectionsRequest.cpp:18
CalypsoPo * setDirectoryHeader(const std::shared_ptr< DirectoryHeader > directoryHeader)
Definition: CalypsoPo.cpp:334
std::map< const std::string, std::shared_ptr< StubReaderImpl > > mReaderPool
Definition: StubPoolPluginImpl.h:51
InvocationTargetException(const std::string &message)
Definition: InvocationTargetException.h:27
SamSelectorBuilder & aidSelector(const std::shared_ptr< AidSelector > aidSelector) override
Definition: SamSelector.cpp:144
int getStatusCode() const
Definition: KeypleSeCommandException.h:50
SamWriteKeyCmdBuild(const SamRevision &revision, const uint8_t writingMode, const uint8_t keyReference, const std::vector< uint8_t > &keyData)
Definition: SamWriteKeyCmdBuild.cpp:33
Definition: PcscPlugin.h:27
virtual void setForceGetDataFlag(bool forceGetDataFlag)
Definition: AbstractLocalReader.cpp:76
std::ostream & operator<<(std::ostream &os, const SamRevision &sr)
Definition: SamRevision.cpp:92
Definition: KeypleReaderException.h:37
Definition: PoCommandManager.h:44
Definition: AbstractPoResponseParser.h:33
Definition: SvGetCmdBuild.h:45
Definition: CloseSessionCmdBuild.h:45
virtual void openPhysicalChannel()=0
friend std::ostream & operator<<(std::ostream &os, const std::shared_ptr< SeReader > sr)
Definition: SeReader.h:108
static const CalypsoPoCommand CLOSE_SESSION
Definition: CalypsoPoCommand.h:52
std::size_t length()
Definition: stringbuilder.h:71
virtual std::shared_ptr< SeResponse > transmitSeRequest(std::shared_ptr< SeRequest > seRequest, const ChannelControl &channelControl)=0
SecurityException(const std::string &message, const std::exception cause)
Definition: SecurityException.h:32
CalypsoPoIllegalParameterException(const std::string &message, const std::shared_ptr< CalypsoPoCommand > command, const int statusCode)
Definition: CalypsoPoIllegalParameterException.h:38
virtual const std::string & getName() const final
Definition: PcscPluginImpl.h:76
std::vector< std::shared_ptr< ApduResponse > > & getApduResponses()
Definition: SeResponse.cpp:52
CalypsoSessionAuthenticationException(const std::string &message)
Definition: CalypsoSessionAuthenticationException.h:35
Definition: AbstractPlugin.h:41
K key_type
Definition: ConcurrentMap.h:31
PluginEvent::EventType EventType
Definition: AbstractThreadedObservablePlugin.cpp:34
static std::shared_ptr< ApduRequest > getApduRequest(const PoClass &poClass)
Definition: RatificationCmdBuild.cpp:25
TagType getTagType() const
Definition: Tag.cpp:76
PoSelectorBuilder & atrFilter(const std::shared_ptr< AtrFilter > atrFilter) override
Definition: PoSelector.cpp:64
AbstractDefaultSelectionsResponse(const std::vector< std::shared_ptr< SeResponse >> &selectionSeResponses)
Definition: AbstractDefaultSelectionsResponse.cpp:22
static bool equals(const std::vector< uint8_t > &a1, const std::vector< uint8_t > &a2)
Definition: Arrays.h:42
Definition: CalypsoAtomicTransactionException.h:30
Definition: ObservableReader.h:64
AbstractOpenSessionRespPars(std::shared_ptr< ApduResponse > response, AbstractOpenSessionCmdBuild< AbstractOpenSessionRespPars > *builder, const PoRevision revision)
Definition: AbstractOpenSessionRespPars.cpp:134
virtual void terminateSeCommunication()=0
virtual const std::vector< uint8_t > & getChallengeTransactionCounter() const
Definition: AbstractOpenSessionRespPars.cpp:279
const_iterator find(const key_type &k)
Definition: ConcurrentMap.h:155
bool operator!=(const SamRevision &o) const
Definition: SamRevision.cpp:63
const std::string & getName() const
Definition: AbstractSeProxyComponent.cpp:23
virtual ~AbstractPoCommandBuilder()=default
Definition: AppendRecordCmdBuild.cpp:30
Definition: IllegalAccessException.h:22
Boolean(bool value)
Definition: Boolean.h:40
uint8_t getPlatform() const
Definition: CalypsoPo.cpp:249
static std::shared_ptr< Logger > getLogger(const std::type_info &type)
Definition: LoggerFactory.cpp:21
void processClosing()
Definition: PoTransaction.cpp:701
std::ostream & operator<<(std::ostream &os, const DirectoryHeader &dh)
Definition: DirectoryHeader.cpp:144
const std::map< const std::string, const std::string > & getParameters() const override
Definition: PcscPluginImpl.cpp:52
Definition: WriteRecordCmdBuild.h:43
CalypsoPoDataOutOfBoundsException(const std::string &message, const std::shared_ptr< CalypsoPoCommand > command, const int statusCode)
Definition: CalypsoPoDataOutOfBoundsException.h:40
PoSecuritySettingsBuilder & pinCipheringKey(const uint8_t kif, const uint8_t kvc)
Definition: PoSecuritySettings.cpp:193
bool waitForCardPresent() override
Definition: PcscReaderImpl.cpp:152
Definition: PcscPluginImpl.h:48
virtual const std::vector< std::shared_ptr< SeRequest > > & getSelectionSeRequests() const final
Definition: AbstractDefaultSelectionsRequest.cpp:30
static const std::string SETTING_MODE_SHARED
Definition: PcscReader.h:45
SamReadCeilingsRespPars(const std::shared_ptr< ApduResponse > response, SamReadCeilingsCmdBuild *builder)
Definition: SamReadCeilingsRespPars.cpp:63
iterator insert(const_iterator position, P &&val)
Definition: ConcurrentMap.h:93
const std::map< int, std::shared_ptr< StatusProperties > > & getStatusTable() const override
Definition: DigestInitRespPars.cpp:80
static void arraycopy(const std::vector< uint8_t > &src, int srcPos, std::vector< char > &dest, int destPos, int length)
Definition: System.h:55
Definition: CalypsoSamCounterOverflowException.h:32
Definition: AbstractObservableLocalReader.h:114
SamEventCounterOperationType
Definition: SamReadEventCounterCmdBuild.h:56
const std::string & getName() const override
Definition: StubPluginImpl.h:114
ModificationMode mSessionModificationMode
Definition: PoSecuritySettings.h:74
std::shared_ptr< SeSelector > build() override
Definition: PoSelector.cpp:74
friend AidSelectorBuilder
Definition: SeSelector.h:264
Definition: CalypsoSamDataAccessException.h:33
void setLength(std::size_t newLength)
Definition: stringbuilder.h:76
std::shared_ptr< UnlockRespPars > createResponseParser(std::shared_ptr< ApduResponse > apduResponse) override
Definition: UnlockCmdBuild.cpp:54
SelectDiversifierCmdBuild(const SamRevision &revision, const std::vector< uint8_t > &diversifier)
Definition: SelectDiversifierCmdBuild.cpp:33
std::shared_ptr< SelectionsResult > processDefaultSelection(std::shared_ptr< AbstractDefaultSelectionsResponse > defaultSelectionsResponse)
Definition: SeSelection.cpp:108
CalypsoPoCommand(const std::string &name, const uint8_t instructionByte)
Definition: CalypsoPoCommand.cpp:55
Definition: KeyplePluginNotFoundException.h:32
SessionState
Definition: PoTransaction.h:73
KeyplePluginNotFoundException(const std::string &pluginName)
Definition: KeyplePluginNotFoundException.h:37
const std::vector< uint8_t > getLoadDateBytes() const
Definition: SvLoadLogRecord.cpp:62
virtual const std::string & getPluginName() const =0
static const int SEL_KVCS_OFFSET
Definition: CalypsoPoUtils.h:123
CalypsoPoCloseSecureSessionException(const std::string &message, const std::exception &cause)
Definition: CalypsoPoCloseSecureSessionException.h:46
Definition: AssertionError.h:20
static std::string toString(const T &subject)
Definition: stringhelper.h:90
Definition: CalypsoNoSamResourceAvailableException.h:24
virtual bool isSessionBufferUsed() const override
Definition: OpenSession32CmdBuild.cpp:78
virtual std::future< void > startMonitoring(AbstractObservableState *state, std::atomic< bool > &cancellationFlag)=0
const std::vector< uint8_t > getSvDebitComplementaryData(std::shared_ptr< SvDebitCmdBuild > svDebitCmdBuild, const std::vector< uint8_t > &svGetHeader, const std::vector< uint8_t > &svGetData)
Definition: SamCommandProcessor.cpp:576
void finalizeBuilder(const std::vector< uint8_t > &debitComplementaryData)
Definition: SvDebitCmdBuild.cpp:73
bool isSessionBufferUsed() const override
Definition: ReadRecordsCmdBuild.cpp:73
Definition: SamGetChallengeCmdBuild.h:42
SamGetChallengeRespPars(const std::shared_ptr< ApduResponse > response, SamGetChallengeCmdBuild *builder)
Definition: SamGetChallengeRespPars.cpp:49
bool isSessionBufferUsed() const override
Definition: GetDataTraceCmdBuild.cpp:43
Definition: SamSelector.h:41
CalypsoPoTransactionException(const std::string &message, const std::exception &cause)
Definition: CalypsoPoTransactionException.h:42
const std::map< const std::string, std::shared_ptr< ReaderPlugin > > & getPlugins() const
Definition: SeProxyService.cpp:76
static bool isWhitespace(int codePoint)
Definition: Character.h:51
virtual const std::string & getName() const =0
virtual ~AbstractApduCommandBuilder()=default
SelectFileControl
Definition: SelectFileControl.h:25
CalypsoSessionAuthenticationException(const std::string &message, const std::exception &cause)
Definition: CalypsoSessionAuthenticationException.h:44
void monitoringJob(AbstractObservableState *state, std::atomic< bool > &cancellationFlag)
Definition: SmartInsertionMonitoringJob.cpp:35
virtual ~NotificationMode()
Definition: ObservableReader.h:114
Definition: AbstractSeProxyComponent.h:31
PoSelectionRequest(std::shared_ptr< PoSelector > poSelector)
Definition: PoSelectionRequest.cpp:53
SeResponse(const bool logicalChannelIsOpen, const bool channelPreviouslyOpen, std::shared_ptr< SelectionStatus > selectionStatus, const std::vector< std::shared_ptr< ApduResponse >> &apduResponses)
Definition: SeResponse.cpp:27
std::shared_ptr< VerifyPinRespPars > createResponseParser(std::shared_ptr< ApduResponse > apduResponse) override
Definition: VerifyPinCmdBuild.cpp:68
const TransmissionMode & getTransmissionMode() const override
Definition: PcscReaderImpl.cpp:453
virtual void notifyObservers(const std::shared_ptr< ReaderEvent > event)=0
const KeypleSeCommandException buildCommandException(const std::type_info &exceptionClass, const std::string &message, const std::shared_ptr< SeCommand > commandRef, const int statusCode) const override
Definition: AbstractSamResponseParser.cpp:73
const std::shared_ptr< ElementaryFile > getFileBySfi(const uint8_t sfi) const
Definition: CalypsoPo.cpp:342
Definition: ObservableReaderStateService.h:35
virtual void freeSamResource(const SeResource< CalypsoSam > &samResource)=0
const KeypleAssert & notNull(void *obj, const std::string &name) const
Definition: KeypleAssert.cpp:34
PluginEvent::EventType EventType
Definition: PluginEvent.cpp:28
std::shared_ptr< ApduRequest > mRequest
Definition: AbstractApduCommandBuilder.h:103
ModificationMode
Definition: PoTransaction.h:167
Definition: SamSelector.h:48
void finalizeBuilder(const std::vector< uint8_t > &reloadComplementaryData)
Definition: SvReloadCmdBuild.cpp:76
void onEvent(const InternalEvent event) override
Definition: WaitForSeRemoval.cpp:33
const KeypleAssert & greaterOrEqual(const int number, const int minValue, const std::string &name) const
Definition: KeypleAssert.cpp:70
CalypsoSamCounterOverflowException(const std::string &message, const std::shared_ptr< CalypsoSamCommand > command, const int statusCode)
Definition: CalypsoSamCounterOverflowException.h:39
std::shared_ptr< SvPrepareOperationRespPars > createResponseParser(const std::shared_ptr< ApduResponse > apduResponse) override
Definition: SvPrepareDebitCmdBuild.cpp:55
const std::string toString() const
Definition: SvDebitLogRecord.cpp:114
void ensureCapacity(std::size_t minimumCapacity)
Definition: stringbuilder.h:86
Definition: SeSelector.h:418
Definition: InstantiationException.h:22
Definition: ApduResponse.h:35
Definition: PoSecuritySettings.h:44
static const SamRevision C1
Definition: SamRevision.h:38
virtual const std::set< std::string > getReaderNames() const override
Definition: AbstractPlugin.cpp:53
bool operator==(const SamRevision &o) const
Definition: SamRevision.cpp:56
std::vector< uint8_t > transmitApdu(const std::vector< uint8_t > &apduIn) override
Definition: StubReaderImpl.cpp:114
Definition: DigestInitRespPars.h:43
virtual const TransmissionMode & getTransmissionMode() const =0
const std::vector< uint8_t > & getPostponedData() const
Definition: CloseSessionRespPars.cpp:106
virtual void notifyObservers(const std::shared_ptr< PluginEvent > event)=0
virtual const std::map< int, std::shared_ptr< StatusProperties > > & getStatusTable() const
Definition: AbstractApduResponseParser.cpp:43
const std::shared_ptr< SvDebitLogRecord > getDebitLog() const
Definition: SvGetRespPars.cpp:160
virtual std::shared_ptr< ReaderPlugin > getPlugin() const =0
static const CalypsoSamCommand DIGEST_AUTHENTICATE
Definition: CalypsoSamCommand.h:63
static void setLoggerLevel(Level level)
Definition: Logger.cpp:31
IllegalStateException(const std::string &message, const std::exception cause)
Definition: IllegalStateException.h:32
ConcurrentMap< const std::string, std::shared_ptr< SeReader > > mNativeReaders
Definition: AbstractPlugin.h:116
void fillContent(const uint8_t sfi, const int numRecord, std::vector< uint8_t > &content)
Definition: CalypsoPo.cpp:405
Definition: CalypsoSvAuthenticationException.h:30
virtual ~SmartRemovalReader()
Definition: SmartRemovalReader.h:32
void backupFiles()
Definition: CalypsoPo.cpp:419
Definition: CalypsoPoRevokedException.h:28
static const int NB_CNT_MIN
Definition: CalypsoPoUtils.h:79
void addObserver(const std::shared_ptr< ObservablePlugin::PluginObserver > observer) final
Definition: AbstractThreadedObservablePlugin.cpp:54
const std::vector< uint8_t > & getBytes() const
Definition: ApduResponse.cpp:73
uint8_t getApplicationType() const
Definition: CalypsoSam.cpp:121
ReaderObserver(SamResourceManagerDefault &parent)
Definition: SamResourceManagerDefault.cpp:361
InvocationTargetException(const std::string &message, const std::exception cause)
Definition: InvocationTargetException.h:32
KeypleReaderNotFoundException(const std::string &readerName)
Definition: KeypleReaderNotFoundException.h:36
const std::vector< uint8_t > getSvTNumBytes() const
Definition: SvDebitLogRecord.cpp:92
IllegalArgumentException(const std::string &message, const std::exception cause)
Definition: IllegalArgumentException.h:32
VerifyPinCmdBuild(const PoClass &poClass, const PinTransmissionMode &pinTransmissionMode, const std::vector< uint8_t > &pin)
Definition: VerifyPinCmdBuild.cpp:32
const std::map< int, std::shared_ptr< StatusProperties > > & getStatusTable() const override
Definition: SamWriteKeyRespPars.cpp:98
Definition: StubPlugin.h:49
std::shared_ptr< ReaderPlugin > getPlugin() const override
Definition: StubPluginFactory.cpp:35
virtual ~AbstractReader()=default
const SamRevision getTargetSamRevision() const
Definition: SamSelector.cpp:75
std::shared_ptr< SvReloadRespPars > createResponseParser(std::shared_ptr< ApduResponse > apduResponse) override
Definition: SvReloadCmdBuild.cpp:108
bool operator!=(const EventType &o) const
Definition: PluginEvent.cpp:47
virtual bool isSessionBufferUsed() const override
Definition: InvalidateCmdBuild.cpp:45
virtual uint8_t getKVC() const
Definition: AbstractOpenSessionRespPars.cpp:304
std::shared_ptr< AppendRecordRespPars > createResponseParser(std::shared_ptr< ApduResponse > apduResponse) override
Definition: AppendRecordCmdBuild.cpp:57
LogRead getSvGetLogReadMode() const
Definition: PoSecuritySettings.cpp:121
Definition: PoSelector.h:34
ModificationMode getSessionModificationMode() const
Definition: PoSecuritySettings.cpp:61
static const std::map< std::shared_ptr< SeCommonProtocol >, std::string > & getAllSettings()
Definition: StubProtocolSetting.cpp:64
const std::map< int, std::shared_ptr< StatusProperties > > & getStatusTable() const override
Definition: SelectFileRespPars.cpp:82
OpenSession24CmdBuild(uint8_t keyIndex, const std::vector< uint8_t > &samChallenge, uint8_t sfi, uint8_t recordNumber)
Definition: OpenSession24CmdBuild.cpp:41
WaitForSeRemoval(AbstractObservableLocalReader *reader)
Definition: WaitForSeRemoval.cpp:21
uint8_t getSoftwareIssuer() const
Definition: CalypsoPo.cpp:289
std::shared_ptr< SamIdentifier > build()
Definition: SamIdentifier.cpp:103
static const CalypsoSamCommand READ_EVENT_COUNTER
Definition: CalypsoSamCommand.h:98
std::shared_ptr< RehabilitateRespPars > createResponseParser(std::shared_ptr< ApduResponse > apduResponse) override
Definition: RehabilitateCmdBuild.cpp:39
std::string getFreeByte() const
Definition: SvLoadLogRecord.cpp:71
Definition: CalypsoPoIOException.h:26
friend SamIdentifier
Definition: SamIdentifier.h:49
std::shared_ptr< SelectionsResult > processExplicitSelection(std::shared_ptr< SeReader > seReader)
Definition: SeSelection.cpp:125
const std::vector< uint8_t > getTerminalSignature()
Definition: SamCommandProcessor.cpp:327
uint8_t getSessionKey() const
Definition: PoTransaction.cpp:1395
SvPrepareUndebitCmdBuild(const SamRevision &samRevision, const std::vector< uint8_t > &svGetHeader, const std::vector< uint8_t > &svGetData, const std::vector< uint8_t > &svUndebitCmdBuildDebitCmdBuildData)
Definition: SvPrepareUndebitCmdBuild.cpp:32
Definition: AbstractApduCommandBuilder.cpp:21
const std::map< int, std::shared_ptr< StatusProperties > > & getStatusTable() const override
Definition: DigestUpdateMultipleRespPars.cpp:75
static std::map< std::shared_ptr< SeCommonProtocol >, std::string > STUB_PROTOCOL_SETTING
Definition: StubProtocolSetting.h:61
static const int EF_TYPE_DF
Definition: CalypsoPoUtils.h:103
const std::vector< uint8_t > & getProprietaryInformation()
Definition: SelectFileRespPars.cpp:87
OpenSession32CmdBuild(const uint8_t keyIndex, const std::vector< uint8_t > &samChallenge, const uint8_t sfi, const uint8_t recordNumber)
Definition: OpenSession32CmdBuild.cpp:37
static const FileOccurrence NEXT
Definition: SeSelector.h:76
void startSeDetection(const ObservableReader::PollingMode pollingMode) final
Definition: AbstractObservableLocalReader.cpp:45
SamSelectorBuilder & samRevision(const SamRevision samRevision)
Definition: SamSelector.cpp:99
uint8_t getApplicationSubtype() const
Definition: CalypsoPo.cpp:284
Byte(unsigned char value)
Definition: Byte.h:75
const_iterator end() const noexcept
Definition: ConcurrentMap.h:190
static const CalypsoPoCommand CHANGE_KEY
Definition: CalypsoPoCommand.h:79
std::future< void > startMonitoring(AbstractObservableState *state, std::atomic< bool > &cancellationFlag) override
Definition: SmartRemovalMonitoringJob.cpp:66
bool hasCommands() const
Definition: PoCommandManager.cpp:89
Definition: SeCommonProtocols.cpp:21
Thread(const std::string &name)
Definition: Thread.h:47
PoSecuritySettingsBuilder & sessionModificationMode(ModificationMode sessionModificationMode)
Definition: PoSecuritySettings.cpp:142
PoCommandManager()
Definition: PoCommandManager.cpp:32
unsigned int getCount(void)
Definition: CountDownLatch.h:56
const std::map< int, std::shared_ptr< StatusProperties > > & getStatusTable() const override
Definition: AbstractSamResponseParser.cpp:62
PluginEvent(const std::string &pluginName, const std::string &readerName, const EventType &eventType)
Definition: PluginEvent.cpp:73
OpenSession31RespPars(std::shared_ptr< ApduResponse > response, OpenSession31CmdBuild *builder)
Definition: OpenSession31RespPars.cpp:30
static const int SEL_NKEY_OFFSET
Definition: CalypsoPoUtils.h:120
std::string getProperty(const std::string &key) const
Definition: Properties.cpp:189
CalypsoSamAccessForbiddenException(const std::string &message, const std::shared_ptr< CalypsoSamCommand > command, const int statusCode)
Definition: CalypsoSamAccessForbiddenException.h:39
virtual ~ReaderObserver()=default
virtual ~KeyReference()=default
const std::string & getPluginName() const override
Definition: StubPluginFactory.cpp:30
const std::shared_ptr< Logger > logger
Definition: GetDataFciRespPars.h:114
virtual bool isSessionBufferUsed() const override
Definition: CloseSessionCmdBuild.cpp:91
PoTransaction(std::shared_ptr< SeResource< CalypsoPo >> poResource, std::shared_ptr< PoSecuritySettings > poSecuritySettings)
Definition: PoTransaction.cpp:128
Definition: StubPoolPluginFactory.h:32
virtual ~StubSecureElement()
Definition: StubSecureElement.h:48
static const int FILE_TYPE_MF
Definition: CalypsoPoUtils.h:96
static const int NB_REC_MAX
Definition: CalypsoPoUtils.h:74
Definition: GetDataTraceRespPars.h:33
const std::set< std::string > & getReaderNames() const
Definition: PluginEvent.cpp:94
virtual bool isSessionBufferUsed() const override
Definition: ChangeKeyCmdBuild.cpp:61
static bool isWhitespace(char c)
Definition: Character.h:39
static unsigned long long nanoTime()
Definition: System.h:30
const std::map< int, std::shared_ptr< StatusProperties > > & getStatusTable() const override
Definition: ReadRecordsRespPars.cpp:103
Definition: PcscReaderImpl.h:43
static std::unique_ptr< ReadRecordsCmdBuild > prepareReadRecordFile(const PoClass &poClass, const uint8_t sfi, const uint8_t recordNumber)
Definition: CalypsoPoUtils.cpp:599
void prepareReadRecordFile(const uint8_t sfi, const uint8_t recordNumber)
Definition: PoSelectionRequest.cpp:58
AidSelectorBuilder & aidToSelect(const std::vector< uint8_t > &aid)
Definition: SeSelector.cpp:221
static const std::string SETTING_KEY_MODE
Definition: PcscReader.h:43
KeypleReaderIOException(const std::string &msg, const std::exception &cause)
Definition: KeypleReaderIOException.h:54
static const int SEL_KIFS_OFFSET
Definition: CalypsoPoUtils.h:124
const std::vector< uint8_t > getSvReloadData() const
Definition: SvReloadCmdBuild.cpp:93
std::shared_ptr< SeReader > allocateReader(const std::string &groupReference) override
Definition: StubPoolPluginImpl.cpp:112
void stopWaitForCard() override
Definition: StubReaderImpl.cpp:246
virtual void unplugStubReader(const std::string &name, bool synchronous)=0
Definition: ExecutorService.h:37
static const CalypsoPoCommand OPEN_SESSION_24
Definition: CalypsoPoCommand.h:43
InterruptedException(const std::string &name)
Definition: InterruptedException.h:27
KeypleReaderException(const std::string &msg)
Definition: KeypleReaderException.h:42
virtual ~CountDownLatch()=default
const std::vector< uint8_t > & getPath() const
Definition: SelectFileCmdBuild.cpp:106
SvPrepareLoadCmdBuild(const SamRevision &samRevision, const std::vector< uint8_t > &svGetHeader, const std::vector< uint8_t > &svGetData, const std::vector< uint8_t > &svReloadCmdBuildData)
Definition: SvPrepareLoadCmdBuild.cpp:32
Definition: AbstractPoCommandBuilder.h:48
static NotificationMode valueOf(const std::string &name)
Definition: ObservableReader.cpp:103
uint8_t getSfi() const
Definition: IncreaseCmdBuild.cpp:85
static int hashCode(const std::vector< uint8_t > a)
Definition: Arrays.h:67
uint8_t getInstructionByte() const
Definition: CalypsoPoCommand.cpp:63
void closeLogicalChannel()
Definition: AbstractLocalReader.cpp:184
Definition: CalypsoPoDataAccessException.h:31
std::future< void > startMonitoring(AbstractObservableState *state, std::atomic< bool > &cancellationFlag) override
Definition: CardPresentMonitoringJob.cpp:95
NotificationMode & operator=(NotificationMode o)
Definition: ObservableReader.cpp:78
UnlockRespPars(const std::shared_ptr< ApduResponse > response, UnlockCmdBuild *builder)
Definition: UnlockRespPars.cpp:59
static const std::shared_ptr< SeCommonProtocol > PROTOCOL_ISO14443_3A
Definition: SeCommonProtocols.h:91
std::shared_ptr< SelectDiversifierRespPars > createResponseParser(const std::shared_ptr< ApduResponse > apduResponse) override
Definition: SelectDiversifierCmdBuild.cpp:52
SeSelector::AidSelector AidSelector
Definition: SeSelector.cpp:37
#define KEYPLEPLUGINPCSC_API
Definition: KeyplePluginPcscExport.h:24
Tag(int tagNumber, const TagClass tagClass, const TagType tagType, int tagSize)
Definition: Tag.cpp:28
CardGenerateKeyCmdBuild(const SamRevision &revision, const std::shared_ptr< KeyReference > cipheringKey, const std::shared_ptr< KeyReference > sourceKey)
Definition: CardGenerateKeyCmdBuild.cpp:35
uint8_t getIsoBitMask() const
Definition: SeSelector.cpp:52
static int parseInt(const std::string &str, int radix, const bool decode)
Definition: Integer.h:135
SamReadCeilingsCmdBuild(const SamRevision &revision, const CeilingsOperationType operationType, const uint8_t index)
Definition: SamReadCeilingsCmdBuild.cpp:34
std::map< int, std::vector< uint8_t > > getRecords() const
Definition: ReadRecordsRespPars.cpp:108
Definition: ReadRecordsRespPars.h:50
std::shared_ptr< CardGenerateKeyRespPars > createResponseParser(std::shared_ptr< ApduResponse > apduResponse) override
Definition: CardGenerateKeyCmdBuild.cpp:78
virtual SeSelectorBuilder & atrFilter(const std::shared_ptr< AtrFilter > atrFilter)
Definition: SeSelector.cpp:276
uint8_t getSoftwareVersion() const
Definition: CalypsoSam.cpp:136
Definition: StubPluginFactory.h:31
Definition: SvUndebitRespPars.h:79
CalypsoSam(std::shared_ptr< SeResponse > selectionResponse, const TransmissionMode &transmissionMode)
Definition: CalypsoSam.cpp:44
uint8_t getFirstRecordNumber() const
Definition: ReadRecordsCmdBuild.cpp:83
char charAt(std::size_t index)
Definition: stringbuilder.h:36
std::vector< uint8_t > transmitApdu(const std::vector< uint8_t > &apduIn)
Definition: PcscTerminal.cpp:254
const std::map< int, std::shared_ptr< StatusProperties > > & getStatusTable() const override
Definition: SvReloadRespPars.cpp:95
static const int MAX_WORK_KEY_REC_NUMB
Definition: SamReadKeyParametersCmdBuild.h:44
InnerEnum innerEnumValue
Definition: ObservableReader.h:98
bool isSamMatching(const std::shared_ptr< SamIdentifier > samIdentifier) const
Definition: SamResourceManager.cpp:87
const std::vector< uint8_t > getSvUndebitData() const
Definition: SvUndebitCmdBuild.cpp:94
Definition: ObservablePluginNotifier.h:29
static const std::shared_ptr< SeCommonProtocol > PROTOCOL_MEMORY_ST25
Definition: SeCommonProtocols.h:103
virtual void removeObserver(const std::shared_ptr< ObservablePlugin::PluginObserver > observer) override
Definition: AbstractObservablePlugin.cpp:39
int getSvLastTNum() const
Definition: CalypsoPo.cpp:502
virtual uint8_t getKvc() const
Definition: KeyReference.cpp:26
Definition: DigestUpdateMultipleRespPars.h:43
std::shared_ptr< AidSelector > build()
Definition: SeSelector.cpp:256
DigestUpdateMultipleRespPars(const std::shared_ptr< ApduResponse > response, DigestUpdateMultipleCmdBuild *builder)
Definition: DigestUpdateMultipleRespPars.cpp:66
Definition: InterruptedException.h:22
std::ostream & operator<<(std::ostream &os, const SelectFileControl &sfc)
Definition: SelectFileControl.h:35
static std::shared_ptr< To > reinterpret_pointer_cast(std::shared_ptr< From > const &ptr) noexcept
Definition: Cast.h:24
AppendRecordCmdBuild(const PoClass poClass, const uint8_t sfi, const std::vector< uint8_t > &newRecordData)
Definition: AppendRecordCmdBuild.cpp:36
Definition: SvPrepareDebitCmdBuild.h:34
virtual const TransmissionMode & getTransmissionMode() const =0
Definition: CalypsoSamAnomalyException.h:30
virtual const std::vector< uint8_t > & getATR()=0
Definition: SamCommandProcessor.h:52
std::vector< uint8_t > getPoChallenge() const
Definition: PoGetChallengeRespPars.cpp:35
Definition: SvReloadRespPars.h:67
void stop() override
Definition: CardPresentMonitoringJob.cpp:89
Definition: GetDataFciRespPars.h:53
size_type eraseFirstElement()
Definition: ConcurrentMap.h:134
virtual void addObserver(const std::shared_ptr< PluginObserver > observer)=0
virtual std::shared_ptr< ApduRequest > setApduRequest(const uint8_t cla, const SeCommand &command, const uint8_t p1, const uint8_t p2, const std::vector< uint8_t > &dataIn)
Definition: AbstractIso7816CommandBuilder.cpp:41
Definition: SamResourceManagerDefault.h:49
std::string toString()
Definition: Boolean.h:93
CalypsoPoTransactionException(const std::string &message)
Definition: CalypsoPoTransactionException.h:34
bool isPhysicalChannelOpen() override
Definition: StubReaderImpl.cpp:89
const CalypsoSamCommandException & getCause() override
Definition: CalypsoSamAnomalyException.h:47
uint32_t getSamId() const
Definition: SvDebitLogRecord.cpp:75
bool isLogicalChannelOpen() const
Definition: SeResponse.cpp:42
Logger(const std::string &className, std::mutex *mtx)
Definition: Logger.cpp:23
Definition: SvDebitCmdBuild.h:23
void stopWaitForCardRemoval() override
Definition: StubReaderImpl.cpp:275
bool operator==(const NotificationMode &other)
Definition: ObservableReader.cpp:68
FileOccurrence getFileOccurrence() const
Definition: SeSelector.cpp:141
static const int EF_TYPE_COUNTERS
Definition: CalypsoPoUtils.h:108
const std::vector< uint8_t > & getSerialNumberExpirationBytes() const
Definition: CalypsoPo.cpp:223
Definition: AbstractDefaultSelectionsResponse.h:38
Definition: AbstractSamCommandBuilder.h:30
void monitoringJob(AbstractObservableState *state, std::atomic< bool > &cancellationFlag)
Definition: SmartRemovalMonitoringJob.cpp:34
Definition: OpenSession24CmdBuild.h:40
virtual void update(const std::shared_ptr< ReaderEvent > event)=0
AbstractObservableLocalReader(const std::string &pluginName, const std::string &readerName)
Definition: AbstractObservableLocalReader.cpp:24
static void arraycopy(const std::vector< char > &src, int srcPos, std::vector< char > &dest, int destPos, int length)
Definition: System.h:47
Definition: SamWriteKeyCmdBuild.h:40
virtual const std::string & getName() const final
Definition: PcscReaderImpl.h:127
void debug(const std::string &format, Args... args)
Definition: Logger.h:82
Definition: SamResourceManager.h:55
SamIdentifier(const SamIdentifierBuilder *builder)
Definition: SamIdentifier.cpp:30
uint8_t getCounterNumber() const
Definition: IncreaseCmdBuild.cpp:90
bool protocolFlagMatches(const std::shared_ptr< SeProtocol > protocolFlag) override
Definition: PcscReaderImpl.cpp:249
const SamRevision & getSamRevision() const
Definition: CalypsoSam.cpp:106
Definition: AbstractPoCommandBuilder.h:35
uint8_t getClassByte() const
Definition: SamRevision.cpp:51
MonitoringState mState
Definition: AbstractObservableState.h:91
IllegalArgumentException(const std::string &message)
Definition: IllegalArgumentException.h:27
Definition: SamReadKeyParametersCmdBuild.h:39
static const CalypsoPoCommand SV_RELOAD
Definition: CalypsoPoCommand.h:94
virtual void removeObserver(const std::shared_ptr< ReaderObserver > observer)=0
static const std::map< int, std::shared_ptr< StatusProperties > > STATUS_TABLE
Definition: AbstractSamResponseParser.h:75
static std::string toString(int i, int radix)
Definition: Integer.h:64
CalypsoSamAnomalyException(const std::string &message, const std::exception &cause)
Definition: CalypsoSamAnomalyException.h:39
DigestUpdateRespPars(const std::shared_ptr< ApduResponse > response, DigestUpdateCmdBuild *builder)
Definition: DigestUpdateRespPars.cpp:69
bool operator<(const AccessLevel &lhs, const AccessLevel &rhs)
Definition: PoTransaction.cpp:1434
Definition: SeRequest.h:48
Definition: NoSuchMethodException.h:22
int getBalance() const
Definition: SvGetRespPars.cpp:150
Definition: AppendRecordCmdBuild.h:28
Definition: ElementaryFile.h:33
const std::vector< uint8_t > getCeilingsData() const
Definition: SamReadCeilingsRespPars.cpp:77
CalypsoUnauthorizedKvcException(const std::string &message)
Definition: CalypsoUnauthorizedKvcException.h:34
AbstractApduResponseParser(const std::shared_ptr< ApduResponse > response, AbstractApduCommandBuilder *builder)
Definition: AbstractApduResponseParser.cpp:49
void prepareReadCounterFile(const uint8_t sfi, const uint8_t countersNumber)
Definition: PoTransaction.cpp:1086
SmartRemovalMonitoringJob(SmartRemovalReader *reader)
Definition: SmartRemovalMonitoringJob.cpp:31
virtual void clearObservers()=0
const std::regex mPattern
Definition: Pattern.h:29
Definition: UpdateRecordCmdBuild.h:46