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

Side by Side Diff: src/trusted/service_runtime/linux/nacl_bootstrap_args.c

Issue 10832040: Support 64-bit reserved_at_zero value nacl-side (Closed) Base URL: http://git.chromium.org/native_client/src/native_client.git@master
Patch Set: inline template digits Created 8 years, 4 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
OLDNEW
1 /* 1 /*
2 * Copyright (c) 2012 The Native Client Authors. All rights reserved. 2 * Copyright (c) 2012 The Native Client Authors. All rights reserved.
3 * Use of this source code is governed by a BSD-style license that can be 3 * Use of this source code is governed by a BSD-style license that can be
4 * found in the LICENSE file. 4 * found in the LICENSE file.
5 */ 5 */
6 6
7 #include <string.h> 7 #include <string.h>
8 8
9 #include "native_client/src/trusted/service_runtime/sel_ldr.h" 9 #include "native_client/src/trusted/service_runtime/sel_ldr.h"
10 10
11 /* 11 /*
12 * This function handles the nacl_helper_bootstrap arguments r_debug 12 * This function handles the nacl_helper_bootstrap arguments r_debug
13 * and reserved_at_zero and updates argc and argv to act as though 13 * and reserved_at_zero and updates argc and argv to act as though
14 * these arguments were not passed. For example, the command 14 * these arguments were not passed. For example, the command
15 * 15 *
16 * nacl_helper_bootstrap program \ 16 * nacl_helper_bootstrap program --r_debug=0xXXXXXXXXXXXXXXXX \
17 * --r_debug=0xXXXXXXXXXXXXXXXX --reserved_at_zero=0xXXXXXXXX program_arg 17 * --reserved_at_zero=0xXXXXXXXXXXXXXXXX program_arg
18 * 18 *
19 * will result in the following argc and argv structure for program after 19 * will result in the following argc and argv structure for program after
20 * running throughg the bootstrapper: 20 * running throughg the bootstrapper:
21 * 21 *
22 * argc: 4 22 * argc: 4
23 * argv[0]: program 23 * argv[0]: program
24 * argv[1]: --r_debug=0xXXXXXXXXXXXXXXXX 24 * argv[1]: --r_debug=0xXXXXXXXXXXXXXXXX
25 * argv[2]: --reserved_at_zero=0xXXXXXXXX 25 * argv[2]: --reserved_at_zero=0xXXXXXXXXXXXXXXXX
26 * argv[3]: program_arg 26 * argv[3]: program_arg
27 * 27 *
28 * After program calls NaClHandleBootstrapArgs, the argc and argv structure 28 * After program calls NaClHandleBootstrapArgs, the argc and argv structure
29 * will be: 29 * will be:
30 * 30 *
31 * argc: 2 31 * argc: 2
32 * argv[0]: program 32 * argv[0]: program
33 * argv[1]: program_arg 33 * argv[1]: program_arg
34 * 34 *
35 * argc_p is the pointer to the argc variable passed to main. 35 * argc_p is the pointer to the argc variable passed to main.
(...skipping 21 matching lines...) Expand all
57 0 == strncmp(argv[1], kAtZeroSwitch, sizeof(kAtZeroSwitch) - 1)) { 57 0 == strncmp(argv[1], kAtZeroSwitch, sizeof(kAtZeroSwitch) - 1)) {
58 NaClHandleReservedAtZero(&argv[1][sizeof(kAtZeroSwitch) - 1]); 58 NaClHandleReservedAtZero(&argv[1][sizeof(kAtZeroSwitch) - 1]);
59 --argc; 59 --argc;
60 ++argv; 60 ++argv;
61 } 61 }
62 62
63 *argc_p = argc; 63 *argc_p = argc;
64 *argv_p = argv; 64 *argv_p = argv;
65 (*argv_p)[0] = argv0; 65 (*argv_p)[0] = argv0;
66 } 66 }
OLDNEW
« no previous file with comments | « src/trusted/service_runtime/linux/nacl_bootstrap.c ('k') | src/trusted/service_runtime/linux/reserved_at_zero.c » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698