aboutsummaryrefslogtreecommitdiff
path: root/ssh-agent-filter.C
diff options
context:
space:
mode:
Diffstat (limited to 'ssh-agent-filter.C')
-rw-r--r--ssh-agent-filter.C14
1 files changed, 7 insertions, 7 deletions
diff --git a/ssh-agent-filter.C b/ssh-agent-filter.C
index 639e55c..c658b62 100644
--- a/ssh-agent-filter.C
+++ b/ssh-agent-filter.C
@@ -347,14 +347,14 @@ std::optional<string> dissect_auth_data_ssh_cert (rfc4251::string const & data)
rfc4251::string nonce{datastream};
std::ostringstream key_to_be_signed{};
if (keytype_str == "ssh-rsa") {
- rfc4251::string e{datastream};
- rfc4251::string n{datastream};
+ rfc4251::mpint e{datastream};
+ rfc4251::mpint n{datastream};
key_to_be_signed << rfc4251::string{keytype_str} << e << n;
} else if (keytype_str == "ssh-dss") {
- rfc4251::string p{datastream};
- rfc4251::string q{datastream};
- rfc4251::string g{datastream};
- rfc4251::string y{datastream};
+ rfc4251::mpint p{datastream};
+ rfc4251::mpint q{datastream};
+ rfc4251::mpint g{datastream};
+ rfc4251::mpint y{datastream};
key_to_be_signed << rfc4251::string{keytype_str} << p << q << g << y;
} else if (keytype_str == "ecdsa-sha2-nistp256"
|| keytype_str == "ecdsa-sha2-nistp384"
@@ -474,7 +474,7 @@ string describe_sign_request (rfc4251::string const & data_to_be_signed) {
rfc4251::string handle_request (rfc4251::string const & r) {
io::stream<io::array_source> request{r.data(), r.size()};
rfc4251::string ret;
- io::stream<io::back_insert_device<vector<char>>> answer{ret.value};
+ io::stream<io::back_insert_device<vector<char>>> answer{ret.buf};
arm(request);
arm(answer);
rfc4251::byte request_code{request};