blob: 8ed49d6f17cb1a9500749abece2b8031efedb710 [file] [log] [blame]
[email protected]de2895262012-04-04 17:15:481// Copyright (c) 2012 The Chromium Authors. All rights reserved.
2// Use of this source code is governed by a BSD-style license that can be
3// found in the LICENSE file.
4
5#include "ppapi/proxy/ppb_x509_certificate_private_proxy.h"
6
avie029c4132015-12-23 06:45:227#include "base/macros.h"
[email protected]de2895262012-04-04 17:15:488#include "ppapi/c/private/ppb_x509_certificate_private.h"
9#include "ppapi/proxy/plugin_globals.h"
[email protected]de2895262012-04-04 17:15:4810#include "ppapi/proxy/ppapi_messages.h"
11#include "ppapi/shared_impl/private/ppb_x509_certificate_private_shared.h"
12
13namespace ppapi {
14namespace proxy {
15
16namespace {
17
18class X509CertificatePrivate : public PPB_X509Certificate_Private_Shared {
19 public:
20 X509CertificatePrivate(PP_Instance instance);
nicke4784432015-04-23 14:01:4821 ~X509CertificatePrivate() override;
[email protected]de2895262012-04-04 17:15:4822
nicke4784432015-04-23 14:01:4823 bool ParseDER(const std::vector<char>& der,
24 PPB_X509Certificate_Fields* result) override;
[email protected]de2895262012-04-04 17:15:4825
26 private:
27 void SendToBrowser(IPC::Message* msg);
28
29 DISALLOW_COPY_AND_ASSIGN(X509CertificatePrivate);
30};
31
32X509CertificatePrivate::X509CertificatePrivate(PP_Instance instance)
33 : PPB_X509Certificate_Private_Shared(OBJECT_IS_PROXY, instance) {
34}
35
36X509CertificatePrivate::~X509CertificatePrivate() {
37}
38
39bool X509CertificatePrivate::ParseDER(const std::vector<char>& der,
40 PPB_X509Certificate_Fields* result) {
41 bool succeeded = false;
42 SendToBrowser(
43 new PpapiHostMsg_PPBX509Certificate_ParseDER(der, &succeeded, result));
44 return succeeded;
45}
46
47void X509CertificatePrivate::SendToBrowser(IPC::Message* msg) {
[email protected]e34e8092012-11-27 23:01:2648 PluginGlobals::Get()->GetBrowserSender()->Send(msg);
[email protected]de2895262012-04-04 17:15:4849}
50
51} // namespace
52
53//------------------------------------------------------------------------------
54
55PPB_X509Certificate_Private_Proxy::PPB_X509Certificate_Private_Proxy(
56 Dispatcher* dispatcher)
57 : InterfaceProxy(dispatcher) {
58}
59
60PPB_X509Certificate_Private_Proxy::~PPB_X509Certificate_Private_Proxy() {
61}
62
63// static
64PP_Resource PPB_X509Certificate_Private_Proxy::CreateProxyResource(
65 PP_Instance instance) {
66 return (new X509CertificatePrivate(instance))->GetReference();
67}
68
69bool PPB_X509Certificate_Private_Proxy::OnMessageReceived(
70 const IPC::Message& msg) {
71 return false;
72}
73
74} // namespace proxy
75} // namespace ppapi