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

Side by Side Diff: src/trusted/service_runtime/name_service/default_name_service.c

Issue 7108031: this patch adds the manifest proxy server to sel_ldr and the manifest (Closed) Base URL: svn://svn.chromium.org/native_client/trunk/src/native_client/
Patch Set: '' Created 9 years, 6 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
OLDNEW
1 /* 1 /*
2 * Copyright (c) 2011 The Native Client Authors. All rights reserved. 2 * Copyright (c) 2011 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 "native_client/src/trusted/service_runtime/name_service/default_name_se rvice.h" 7 #include "native_client/src/trusted/service_runtime/name_service/default_name_se rvice.h"
8 8
9 #include "native_client/src/shared/platform/nacl_log.h"
10 #include "native_client/src/trusted/desc/nacl_desc_rng.h"
11 #include "native_client/src/trusted/manifest_name_service_proxy/manifest_proxy.h "
9 #include "native_client/src/trusted/service_runtime/include/sys/fcntl.h" 12 #include "native_client/src/trusted/service_runtime/include/sys/fcntl.h"
10 #include "native_client/src/trusted/desc/nacl_desc_rng.h" 13 #include "native_client/src/trusted/service_runtime/sel_ldr_thread_interface.h"
11 14
12 int NaClDefaultNameServiceInit(struct NaClNameService *ns) { 15 int NaClDefaultNameServiceInit(struct NaClNameService *ns) {
13 /* 16 /*
14 * Create an CSPRNG and enter it into the name server. 17 * Create an CSPRNG and enter it into the name server.
15 */ 18 */
16 struct NaClDescRng *rng = NULL; 19 struct NaClDescRng *rng = NULL;
17 20
18 rng = (struct NaClDescRng *) malloc(sizeof *rng); 21 rng = (struct NaClDescRng *) malloc(sizeof *rng);
19 if (NULL == rng) { 22 if (NULL == rng) {
20 goto malloc_failed; 23 goto malloc_failed;
21 } 24 }
22 if (!NaClDescRngCtor(rng)) { 25 if (!NaClDescRngCtor(rng)) {
23 goto rng_ctor_failed; 26 goto rng_ctor_failed;
24 } 27 }
25 28
26 /* 29 /*
27 * It may appear desirable to insert a factory for rng, so there can 30 * It may appear desirable to insert a factory for rng, so there can
28 * be per-thread secure rng access. However, note that the only way 31 * be per-thread secure rng access. However, note that the only way
29 * we "transfer" a RNG is to create a new (but indistinguishable) 32 * we "transfer" a RNG is to create a new (but indistinguishable)
30 * RNG at the recipient, so each lookup results in a new generator 33 * RNG at the recipient, so each lookup results in a new generator
31 * anyway. 34 * anyway.
32 */ 35 */
33 (*NACL_VTBL(NaClNameService, ns)-> 36 (*NACL_VTBL(NaClNameService, ns)->
34 CreateDescEntry)(ns, 37 CreateDescEntry)(ns,
35 "SecureRandom", NACL_ABI_O_RDWR, 38 "SecureRandom", NACL_ABI_O_RDWR,
36 (struct NaClDesc *) rng); 39 (struct NaClDesc *) rng);
37 NaClDescUnref((struct NaClDesc *) rng); 40 rng = NULL;
38 41
39 return 1; 42 return 1;
40 43
41 rng_ctor_failed: 44 rng_ctor_failed:
42 free(rng); 45 free(rng);
43 malloc_failed: 46 malloc_failed:
44 return 0; 47 return 0;
45 } 48 }
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698