Home | History | Annotate | Download | only in bad
      1 // 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 <cstdio>
      6 #include <cstdlib>
      7 #include <cstring>
      8 
      9 #include "native_client/src/shared/platform/nacl_check.h"
     10 
     11 #include "ppapi/c/pp_errors.h"
     12 #include "ppapi/c/pp_instance.h"
     13 #include "ppapi/c/pp_module.h"
     14 #include "ppapi/c/pp_var.h"
     15 #include "ppapi/c/ppb.h"
     16 #include "ppapi/c/ppb_instance.h"
     17 #include "ppapi/c/ppp.h"
     18 #include "ppapi/c/ppp_instance.h"
     19 
     20 #include "ppapi/native_client/tests/ppapi_test_lib/test_interface.h"
     21 
     22 PP_EXPORT int32_t PPP_InitializeModule(PP_Module module_id,
     23                                        PPB_GetInterface get_browser_interface) {
     24   printf("PPP_InitializeModule\n");
     25   return PP_OK;
     26 }
     27 
     28 PP_EXPORT void PPP_ShutdownModule() {
     29   printf("PPP_ShutdownModule\n");
     30   fflush(stdout);
     31 }
     32 
     33 namespace {
     34 
     35 PP_Bool DidCreate(PP_Instance /*instance*/,
     36                   uint32_t /*argc*/,
     37                   const char* /*argn*/[],
     38                   const char* /*argv*/[]) {
     39   CRASH;
     40   return PP_FALSE;
     41 }
     42 
     43 const PPP_Instance instance_interface = {
     44   DidCreate,
     45   // Normally one is not alowed to register NULLs for functions, but
     46   // since DidCreate is going to crash, these will never be called.
     47   NULL,
     48   NULL,
     49   NULL,
     50   NULL
     51 };
     52 
     53 }  // namespace
     54 
     55 PP_EXPORT const void* PPP_GetInterface(const char* interface_name) {
     56   printf("PPP_GetInterface(%s)\n", interface_name);
     57   if (0 == std::strcmp(interface_name, PPP_INSTANCE_INTERFACE))  // Required.
     58     return reinterpret_cast<const void*>(&instance_interface);
     59   return NULL;
     60 }
     61