From 9d6e045a3143f8eb31c5033c9c4be59cc2f73336 Mon Sep 17 00:00:00 2001 From: Szczepan Zalega Date: Tue, 9 Aug 2016 15:15:17 +0200 Subject: Return error for too long string Signed-off-by: Szczepan Zalega --- include/CommandFailedException.cpp | 5 ----- include/TooLongStringException.h | 32 ++++++++++++++++++++++++++++++++ 2 files changed, 32 insertions(+), 5 deletions(-) delete mode 100644 include/CommandFailedException.cpp create mode 100644 include/TooLongStringException.h (limited to 'include') diff --git a/include/CommandFailedException.cpp b/include/CommandFailedException.cpp deleted file mode 100644 index 5ba4b0b..0000000 --- a/include/CommandFailedException.cpp +++ /dev/null @@ -1,5 +0,0 @@ -// -// Created by sz on 23.07.16. -// - -#include "CommandFailedException.h" diff --git a/include/TooLongStringException.h b/include/TooLongStringException.h new file mode 100644 index 0000000..3a9244b --- /dev/null +++ b/include/TooLongStringException.h @@ -0,0 +1,32 @@ +// +// Created by sz on 09.08.16. +// + +#ifndef LIBNITROKEY_TOOLONGSTRINGEXCEPTION_H +#define LIBNITROKEY_TOOLONGSTRINGEXCEPTION_H + + +#include +#include +#include + +class TooLongStringException : public std::exception { +public: + static const std::uint8_t exception_id = 200; + + std::size_t size_source; + std::size_t size_destination; + std::string message; + + TooLongStringException(size_t size_source, size_t size_destination, const std::string &message = "") : size_source( + size_source), size_destination(size_destination), message(message) {} + + virtual const char *what() const throw() { + //TODO add sizes and message data to final message + return "Too long string has been supplied as an argument"; + } + +}; + + +#endif //LIBNITROKEY_TOOLONGSTRINGEXCEPTION_H -- cgit v1.2.3