AusweisApp2
CommandApdu.h
gehe zur Dokumentation dieser Datei
1 
5 #pragma once
6 
7 #include "Apdu.h"
8 
9 #include <QByteArray>
10 
11 namespace governikus
12 {
13 
14 class CommandApdu final
15  : public Apdu
16 {
17  private:
18  [[nodiscard]] inline bool isExtendedLength() const;
19 
20  public:
21  static const int NO_LE = 0;
22  static const int SHORT_MAX_LC = 0xff;
23  static const int SHORT_MAX_LE = 0x0100;
24  static const int EXTENDED_MAX_LC = 0x00ffff;
25  static const int EXTENDED_MAX_LE = 0x010000;
26  static const char CLA = 0x00;
27  static const char CLA_COMMAND_CHAINING = 0x10;
28  static const char CLA_SECURE_MESSAGING = 0x0c;
29 
30  explicit CommandApdu(const QByteArray& pBuffer);
31  explicit CommandApdu(const QByteArray& pHeader, const QByteArray& pData, int pLe);
32  explicit CommandApdu(char pCla, char pIns, char pP1, char pP2, const QByteArray& pData = QByteArray(), int pLe = NO_LE);
33 
34  [[nodiscard]] char getCLA() const;
35  [[nodiscard]] char getINS() const;
36  [[nodiscard]] char getP1() const;
37  [[nodiscard]] char getP2() const;
38  [[nodiscard]] int getLc() const;
39  [[nodiscard]] int getLe() const;
40  [[nodiscard]] QByteArray getData() const;
41 
42  static bool isExtendedLength(const QByteArray& pData, int pLe);
43  static bool isSecureMessaging(const QByteArray& pCommandBuffer);
44 };
45 
46 } // namespace governikus
Definition: Apdu.h:13
Definition: CommandApdu.h:16
static const int SHORT_MAX_LE
Definition: CommandApdu.h:23
static bool isSecureMessaging(const QByteArray &pCommandBuffer)
Definition: CommandApdu.cpp:36
char getP2() const
Definition: CommandApdu.cpp:119
int getLe() const
Definition: CommandApdu.cpp:153
static const int SHORT_MAX_LC
Definition: CommandApdu.h:22
static const char CLA_COMMAND_CHAINING
Definition: CommandApdu.h:27
int getLc() const
Definition: CommandApdu.cpp:132
static const char CLA_SECURE_MESSAGING
Definition: CommandApdu.h:28
static const int NO_LE
Definition: CommandApdu.h:21
char getP1() const
Definition: CommandApdu.cpp:113
char getCLA() const
Definition: CommandApdu.cpp:101
CommandApdu(const QByteArray &pBuffer)
Definition: CommandApdu.cpp:14
QByteArray getData() const
Definition: CommandApdu.cpp:180
static const int EXTENDED_MAX_LC
Definition: CommandApdu.h:24
char getINS() const
Definition: CommandApdu.cpp:107
static const int EXTENDED_MAX_LE
Definition: CommandApdu.h:25
static const char CLA
Definition: CommandApdu.h:26
Implementation of ActivationContext for Intent based activation on Android systems.
Definition: ActivationContext.h:15