diff options
author | Szczepan Zalega <szczepan@nitrokey.com> | 2017-01-31 18:17:58 +0100 |
---|---|---|
committer | Szczepan Zalega <szczepan@nitrokey.com> | 2017-03-11 15:41:41 +0100 |
commit | 9bc6b85e12d73a43b8d85ba109acff8778f4c08a (patch) | |
tree | 48295a08b01988a8aa12674162385681dd937824 /include | |
parent | 03f444905d3a7af3091c2401280e83146f08443a (diff) | |
download | libnitrokey-9bc6b85e12d73a43b8d85ba109acff8778f4c08a.tar.gz libnitrokey-9bc6b85e12d73a43b8d85ba109acff8778f4c08a.tar.bz2 |
Throw before communicating with device if it is not initialized
Signed-off-by: Szczepan Zalega <szczepan@nitrokey.com>
Diffstat (limited to 'include')
-rw-r--r-- | include/LibraryException.h | 2 | ||||
-rw-r--r-- | include/device_proto.h | 7 |
2 files changed, 6 insertions, 3 deletions
diff --git a/include/LibraryException.h b/include/LibraryException.h index 3c3fab4..e62788d 100644 --- a/include/LibraryException.h +++ b/include/LibraryException.h @@ -11,8 +11,6 @@ public: virtual uint8_t exception_id()= 0; }; - - class TargetBufferSmallerThanSource: public LibraryException { public: virtual uint8_t exception_id() override { diff --git a/include/device_proto.h b/include/device_proto.h index ba314f4..9401428 100644 --- a/include/device_proto.h +++ b/include/device_proto.h @@ -33,6 +33,7 @@ #define PWS_SEND_CR 3 #include <mutex> +#include "DeviceCommunicationExceptions.h" namespace nitrokey { namespace proto { @@ -217,6 +218,10 @@ namespace nitrokey { Log::instance()(__PRETTY_FUNCTION__, Loglevel::DEBUG_L2); + if (dev == nullptr){ + throw DeviceNotConnected("Device not initialized"); + } + int status; OutgoingPacket outp; ResponsePacket resp; @@ -320,7 +325,7 @@ namespace nitrokey { clear_packet(outp); if (status <= 0) - throw std::runtime_error( //FIXME replace with CriticalErrorException + throw DeviceReceivingFailure( //FIXME replace with CriticalErrorException std::string("Device error while executing command ") + std::to_string(status)); |