isc_throw(InvalidRdataLength, "SSHFP record too short");
}
- try {
- algorithm_ = buffer.readUint8();
- fingerprint_type_ = buffer.readUint8();
+ algorithm_ = buffer.readUint8();
+ fingerprint_type_ = buffer.readUint8();
- rdata_len -= 2;
- if (rdata_len > 0) {
- fingerprint_.resize(rdata_len);
- buffer.readData(&fingerprint_[0], rdata_len);
- }
- } catch (const isc::util::InvalidBufferPosition& e) {
- isc_throw(InvalidRdataLength,
- "SSHFP record shorter than RDATA len: " << e.what());
+ rdata_len -= 2;
+ if (rdata_len > 0) {
+ fingerprint_.resize(rdata_len);
+ buffer.readData(&fingerprint_[0], rdata_len);
}
}
// fingerprint is shorter than rdata len
EXPECT_THROW(rdataFactoryFromFile(RRType("SSHFP"), RRClass("IN"),
"rdata_sshfp_fromWire9"),
- InvalidRdataLength);
+ InvalidBufferPosition);
// fingerprint is missing
EXPECT_THROW(rdataFactoryFromFile(RRType("SSHFP"), RRClass("IN"),
"rdata_sshfp_fromWire10"),
- InvalidRdataLength);
+ InvalidBufferPosition);
// all rdata is missing
EXPECT_THROW(rdataFactoryFromFile(RRType("SSHFP"), RRClass("IN"),
"rdata_sshfp_fromWire11"),
- InvalidRdataLength);
+ InvalidBufferPosition);
}
TEST_F(Rdata_SSHFP_Test, toText) {