LibLogicalAccess  2.5.0
An Open Source RFID Library
Loading...
Searching...
No Matches
Public Member Functions | Protected Member Functions | Private Member Functions | List of all members
logicalaccess::PCSCCardProbe Class Reference

#include <pcsccardprobe.hpp>

Inheritance diagram for logicalaccess::PCSCCardProbe:
logicalaccess::CardProbe logicalaccess::CL1356CardProbe logicalaccess::SpringCardProbe

Public Member Functions

 PCSCCardProbe (ReaderUnit *ru)
 
bool is_desfire (ByteVector *uid=nullptr) override
 
bool is_desfire_ev1 (ByteVector *uid=nullptr) override
 
bool is_desfire_ev2 (ByteVector *uid=nullptr) override
 
bool is_desfire_ev3 (ByteVector *uid=nullptr) override
 
bool is_mifare_ultralight_c () override
 
bool maybe_mifare_classic () override
 
bool has_desfire_random_uid (ByteVector *uid) override
 
- Public Member Functions inherited from logicalaccess::CardProbe
virtual ~CardProbe ()=default
 
 CardProbe (ReaderUnit *ru)
 
 CardProbe (const CardProbe &)=delete
 
virtual std::string guessCardType ()
 
virtual bool is_desfire (ByteVector *uid=nullptr)=0
 
virtual bool is_desfire_ev1 (ByteVector *uid=nullptr)=0
 
virtual bool is_desfire_ev2 (ByteVector *uid=nullptr)=0
 
virtual bool is_desfire_ev3 (ByteVector *uid=nullptr)=0
 
virtual bool is_mifare_ultralight_c ()=0
 
virtual bool maybe_mifare_classic ()=0
 
virtual bool has_desfire_random_uid (ByteVector *uid)=0
 

Protected Member Functions

void reset () const
 

Private Member Functions

int get_desfire_version (ByteVector *uid=nullptr)
 

Additional Inherited Members

- Protected Attributes inherited from logicalaccess::CardProbe
ReaderUnitreader_unit_
 

Constructor & Destructor Documentation

◆ PCSCCardProbe()

PCSCCardProbe::PCSCCardProbe ( ReaderUnit ru)
explicit

Member Function Documentation

◆ get_desfire_version()

int PCSCCardProbe::get_desfire_version ( ByteVector uid = nullptr)
private

◆ has_desfire_random_uid()

bool PCSCCardProbe::has_desfire_random_uid ( ByteVector uid)
overridevirtual

Is random UID enabled for a DESFire card.

Parameters
uidThe UID in case random UID is DISABLED. Otherwise *uid wont be set.

Implements logicalaccess::CardProbe.

◆ is_desfire()

bool PCSCCardProbe::is_desfire ( ByteVector uid = nullptr)
overridevirtual

Test if the card is DESFire by sending the getversion command.

The optional *uid vector will be populate with the uid retrieve from the getversion command, unless the command failed.

Implements logicalaccess::CardProbe.

◆ is_desfire_ev1()

bool PCSCCardProbe::is_desfire_ev1 ( ByteVector uid = nullptr)
overridevirtual

Test if the card is DESFire EV1 by sending the getversion command.

The optional *uid vector will be populate with the uid retrieve from the getversion command, unless the command failed.

Implements logicalaccess::CardProbe.

◆ is_desfire_ev2()

bool PCSCCardProbe::is_desfire_ev2 ( ByteVector uid = nullptr)
overridevirtual

Test if the card is DESFire EV2 by sending the getversion command.

The optional *uid vector will be populate with the uid retrieve from the getversion command, unless the command failed.

Implements logicalaccess::CardProbe.

◆ is_desfire_ev3()

bool PCSCCardProbe::is_desfire_ev3 ( ByteVector uid = nullptr)
overridevirtual

Test if the card is DESFire EV2 by sending the getversion command.

The optional *uid vector will be populate with the uid retrieve from the getversion command, unless the command failed.

Implements logicalaccess::CardProbe.

◆ is_mifare_ultralight_c()

bool PCSCCardProbe::is_mifare_ultralight_c ( )
overridevirtual

Test if the card is Mifare Ultralight C by sending the authenticate command.

Implements logicalaccess::CardProbe.

◆ maybe_mifare_classic()

bool PCSCCardProbe::maybe_mifare_classic ( )
overridevirtual

Could the card be a Mifare Classic ?

This is less precise that the is_desfire*() function.

Implements logicalaccess::CardProbe.

Reimplemented in logicalaccess::SpringCardProbe.

◆ reset()

void PCSCCardProbe::reset ( ) const
protected

The documentation for this class was generated from the following files: