Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(77)

Side by Side Diff: components/nacl/loader/nacl_listener.cc

Issue 164373010: Split the PNaCl IRT shim into 3 pieces, and include one piece into IRT. (Closed) Base URL: svn://svn.chromium.org/chrome/trunk/src
Patch Set: cleanups and rebase Created 6 years, 9 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View unified diff | Download patch | Annotate | Revision Log
« no previous file with comments | « no previous file | native_client_sdk/src/build_tools/build_sdk.py » ('j') | ppapi/proxy/irt_ppapi.c » ('J')
Toggle Intra-line Diffs ('i') | Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
OLDNEW
1 // Copyright 2013 The Chromium Authors. All rights reserved. 1 // Copyright 2013 The Chromium Authors. All rights reserved.
2 // Use of this source code is governed by a BSD-style license that can be 2 // Use of this source code is governed by a BSD-style license that can be
3 // found in the LICENSE file. 3 // found in the LICENSE file.
4 4
5 #include "components/nacl/loader/nacl_listener.h" 5 #include "components/nacl/loader/nacl_listener.h"
6 6
7 #include <errno.h> 7 #include <errno.h>
8 #include <stdlib.h> 8 #include <stdlib.h>
9 9
10 #if defined(OS_POSIX) 10 #if defined(OS_POSIX)
(...skipping 384 matching lines...) Expand 10 before | Expand all | Expand 10 after
395 args->enable_dyncode_syscalls = params.enable_dyncode_syscalls; 395 args->enable_dyncode_syscalls = params.enable_dyncode_syscalls;
396 if (!params.enable_dyncode_syscalls) { 396 if (!params.enable_dyncode_syscalls) {
397 // Bound the initial nexe's code segment size under PNaCl to 397 // Bound the initial nexe's code segment size under PNaCl to
398 // reduce the chance of a code spraying attack succeeding (see 398 // reduce the chance of a code spraying attack succeeding (see
399 // https://code.google.com/p/nativeclient/issues/detail?id=3572). 399 // https://code.google.com/p/nativeclient/issues/detail?id=3572).
400 // We assume that !params.enable_dyncode_syscalls is synonymous 400 // We assume that !params.enable_dyncode_syscalls is synonymous
401 // with PNaCl. We can't apply this arbitrary limit outside of 401 // with PNaCl. We can't apply this arbitrary limit outside of
402 // PNaCl because it might break existing NaCl apps, and this limit 402 // PNaCl because it might break existing NaCl apps, and this limit
403 // is only useful if the dyncode syscalls are disabled. 403 // is only useful if the dyncode syscalls are disabled.
404 args->initial_nexe_max_code_bytes = 32 << 20; // 32 MB 404 args->initial_nexe_max_code_bytes = 32 << 20; // 32 MB
405
406 // Indicate that this is a PNaCl module.
407 // TODO(jvoung): Plumb through something indicating that this is PNaCl
408 // instead of relying on enable_dyncode_syscalls.
409 args->pnacl_mode = 1;
405 } 410 }
406 #if defined(OS_LINUX) || defined(OS_MACOSX) 411 #if defined(OS_LINUX) || defined(OS_MACOSX)
407 args->debug_stub_server_bound_socket_fd = nacl::ToNativeHandle( 412 args->debug_stub_server_bound_socket_fd = nacl::ToNativeHandle(
408 params.debug_stub_server_bound_socket); 413 params.debug_stub_server_bound_socket);
409 #endif 414 #endif
410 #if defined(OS_WIN) 415 #if defined(OS_WIN)
411 args->broker_duplicate_handle_func = BrokerDuplicateHandle; 416 args->broker_duplicate_handle_func = BrokerDuplicateHandle;
412 args->attach_debug_exception_handler_func = AttachDebugExceptionHandler; 417 args->attach_debug_exception_handler_func = AttachDebugExceptionHandler;
413 #endif 418 #endif
414 #if defined(OS_LINUX) 419 #if defined(OS_LINUX)
415 args->prereserved_sandbox_size = prereserved_sandbox_size_; 420 args->prereserved_sandbox_size = prereserved_sandbox_size_;
416 #endif 421 #endif
417 422
418 #if defined(OS_LINUX) 423 #if defined(OS_LINUX)
419 if (params.enable_nonsfi_mode) { 424 if (params.enable_nonsfi_mode) {
420 nacl::nonsfi::MainStart(args->imc_bootstrap_handle); 425 nacl::nonsfi::MainStart(args->imc_bootstrap_handle);
421 NOTREACHED(); 426 NOTREACHED();
422 return; 427 return;
423 } 428 }
424 #endif 429 #endif
425 NaClChromeMainStartApp(nap, args); 430 NaClChromeMainStartApp(nap, args);
426 NOTREACHED(); 431 NOTREACHED();
427 } 432 }
OLDNEW
« no previous file with comments | « no previous file | native_client_sdk/src/build_tools/build_sdk.py » ('j') | ppapi/proxy/irt_ppapi.c » ('J')

Powered by Google App Engine
This is Rietveld 408576698