1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78
|
// Copyright 2015 The Chromium Authors
// Use of this source code is governed by a BSD-style license that can be
// found in the LICENSE file.
#include "remoting/protocol/rejecting_authenticator.h"
#include "base/check_op.h"
#include "base/functional/callback.h"
#include "base/notreached.h"
#include "remoting/protocol/channel_authenticator.h"
#include "third_party/libjingle_xmpp/xmllite/xmlelement.h"
namespace remoting::protocol {
RejectingAuthenticator::RejectingAuthenticator(
RejectionReason rejection_reason,
std::string_view rejection_message,
const base::Location& rejection_location)
: rejection_reason_(rejection_reason),
rejection_details_{std::string(rejection_message), rejection_location} {}
RejectingAuthenticator::~RejectingAuthenticator() = default;
CredentialsType RejectingAuthenticator::credentials_type() const {
return CredentialsType::UNKNOWN;
}
const Authenticator& RejectingAuthenticator::implementing_authenticator()
const {
return *this;
}
Authenticator::State RejectingAuthenticator::state() const {
return state_;
}
bool RejectingAuthenticator::started() const {
return true;
}
Authenticator::RejectionReason RejectingAuthenticator::rejection_reason()
const {
DCHECK_EQ(state_, REJECTED);
return rejection_reason_;
}
Authenticator::RejectionDetails RejectingAuthenticator::rejection_details()
const {
DCHECK_EQ(state_, REJECTED);
return rejection_details_;
}
void RejectingAuthenticator::ProcessMessage(
const jingle_xmpp::XmlElement* message,
base::OnceClosure resume_callback) {
DCHECK_EQ(state_, WAITING_MESSAGE);
state_ = REJECTED;
std::move(resume_callback).Run();
}
std::unique_ptr<jingle_xmpp::XmlElement>
RejectingAuthenticator::GetNextMessage() {
NOTREACHED();
}
const std::string& RejectingAuthenticator::GetAuthKey() const {
NOTREACHED();
}
const SessionPolicies* RejectingAuthenticator::GetSessionPolicies() const {
NOTREACHED();
}
std::unique_ptr<ChannelAuthenticator>
RejectingAuthenticator::CreateChannelAuthenticator() const {
NOTREACHED();
}
} // namespace remoting::protocol
|