#if defined(__clang__)
#pragma clang diagnostic push
#pragma clang diagnostic ignored "-Wunused-private-field"
#endif
#include "ipc/ipc.mojom.h"
#include <math.h>
#include <stdint.h>
#include <utility>
#include "base/debug/alias.h"
#include "base/hash/md5_constexpr.h"
#include "base/run_loop.h"
#include "base/strings/string_number_conversions.h"
#include "base/task/thread_pool/thread_pool_instance.h"
#include "base/trace_event/trace_event.h"
#include "base/trace_event/typed_macros.h"
#include "mojo/public/cpp/bindings/features.h"
#include "mojo/public/cpp/bindings/lib/default_construct_tag_internal.h"
#include "mojo/public/cpp/bindings/lib/generated_code_util.h"
#include "mojo/public/cpp/bindings/lib/message_internal.h"
#include "mojo/public/cpp/bindings/lib/proxy_to_responder.h"
#include "mojo/public/cpp/bindings/lib/send_message_helper.h"
#include "mojo/public/cpp/bindings/lib/serialization_util.h"
#include "mojo/public/cpp/bindings/lib/unserialized_message_context.h"
#include "mojo/public/cpp/bindings/lib/validate_params.h"
#include "mojo/public/cpp/bindings/lib/validation_errors.h"
#include "mojo/public/cpp/bindings/mojo_buildflags.h"
#include "mojo/public/cpp/bindings/urgent_message_scope.h"
#include "mojo/public/interfaces/bindings/interface_control_messages.mojom.h"
#include "third_party/perfetto/include/perfetto/tracing/traced_value.h"
#include "ipc/ipc.mojom-params-data.h"
#include "ipc/ipc.mojom-shared-message-ids.h"
#include "ipc/ipc.mojom-import-headers.h"
#include "ipc/ipc.mojom-test-utils.h"
namespace IPC::mojom {
Message::Message()
: … { … }
Message::Message(
std::vector<uint8_t> bytes_in,
std::optional<std::vector<::mojo::native::SerializedHandlePtr>> handles_in)
: … { … }
Message::~Message() = default;
void Message::WriteIntoTrace(
perfetto::TracedValue traced_context) const { … }
bool Message::Validate(
const void* data,
mojo::internal::ValidationContext* validation_context) { … }
const char Channel::Name_[] = …;
Channel::IPCStableHashFunction Channel::MessageToMethodInfo_(mojo::Message& message) { … }
const char* Channel::MessageToMethodName_(mojo::Message& message) { … }
#if !BUILDFLAG(IS_FUCHSIA)
uint32_t Channel::SetPeerPid_Sym::IPCStableHash() { … }
uint32_t Channel::Receive_Sym::IPCStableHash() { … }
uint32_t Channel::GetAssociatedInterface_Sym::IPCStableHash() { … }
# endif
ChannelProxy::ChannelProxy(mojo::MessageReceiverWithResponder* receiver)
: … { … }
void ChannelProxy::SetPeerPid(
int32_t in_pid) { … }
void ChannelProxy::Receive(
::IPC::MessageView in_message) { … }
void ChannelProxy::GetAssociatedInterface(
::mojo::GenericPendingAssociatedReceiver in_receiver) { … }
bool ChannelStubDispatch::Accept(
Channel* impl,
mojo::Message* message) { … }
bool ChannelStubDispatch::AcceptWithResponder(
Channel* impl,
mojo::Message* message,
std::unique_ptr<mojo::MessageReceiverWithStatus> responder) { … }
namespace {
}
static const mojo::internal::GenericValidationInfo kChannelValidationInfo[] = …;
bool ChannelRequestValidator::Accept(mojo::Message* message) { … }
const char ChannelBootstrap::Name_[] = …;
ChannelBootstrap::IPCStableHashFunction ChannelBootstrap::MessageToMethodInfo_(mojo::Message& message) { … }
const char* ChannelBootstrap::MessageToMethodName_(mojo::Message& message) { … }
#if !BUILDFLAG(IS_FUCHSIA)
# endif
ChannelBootstrapProxy::ChannelBootstrapProxy(mojo::MessageReceiverWithResponder* receiver)
: … { … }
bool ChannelBootstrapStubDispatch::Accept(
ChannelBootstrap* impl,
mojo::Message* message) { … }
bool ChannelBootstrapStubDispatch::AcceptWithResponder(
ChannelBootstrap* impl,
mojo::Message* message,
std::unique_ptr<mojo::MessageReceiverWithStatus> responder) { … }
namespace {
}
bool ChannelBootstrapRequestValidator::Accept(mojo::Message* message) { … }
}
namespace mojo {
bool StructTraits<::IPC::mojom::Message::DataView, ::IPC::mojom::MessagePtr>::Read(
::IPC::mojom::Message::DataView input,
::IPC::mojom::MessagePtr* output) { … }
}
namespace IPC::mojom {
void ChannelInterceptorForTesting::SetPeerPid(int32_t pid) { … }
void ChannelInterceptorForTesting::Receive(::IPC::MessageView message) { … }
void ChannelInterceptorForTesting::GetAssociatedInterface(::mojo::GenericPendingAssociatedReceiver receiver) { … }
ChannelAsyncWaiter::ChannelAsyncWaiter(
Channel* proxy) : … { … }
ChannelAsyncWaiter::~ChannelAsyncWaiter() = default;
ChannelBootstrapAsyncWaiter::ChannelBootstrapAsyncWaiter(
ChannelBootstrap* proxy) : … { … }
ChannelBootstrapAsyncWaiter::~ChannelBootstrapAsyncWaiter() = default;
}
#if defined(__clang__)
#pragma clang diagnostic pop
#endif