30std::vector<CryptoAttribute>
31SdesNegotiator::parse(
const std::vector<std::string>&
attributes)
43 static const std::regex
tagPattern {
"^([0-9]{1,9})"};
46 "AES_CM_128_HMAC_SHA1_32|"
47 "F8_128_HMAC_SHA1_80|"
51 "([A-Za-z0-9\x2B\x2F\x3D]+)"
52 "((\\|2\\^)([0-9]+)\\|"
54 "([0-9]{1,3})\\;?)?"};
74 throw ParseError(
"Missing components in SDES line");
87 throw ParseError(
"No Matching Found in Tag Attribute");
100 throw ParseError(
"No Matching Found in CryptoSuite Attribute");
121 throw ParseError(
"No Matching Found in Key-params Attribute");
General exception object that is thrown when an error occurred with a regular expression operation.
static CryptoAttribute negotiate(const std::vector< std::string > &attributes)
void emitSignal(Args... args)
static std::vector< CryptoSuiteDefinition > CryptoSuites
List of accepted Crypto-Suites as defined in RFC4568 (6.2)
bool regex_search(string_view sv, svmatch &m, const regex &e, regex_constants::match_flag_type flags=regex_constants::match_default)