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

Side by Side Diff: src/trusted/service_runtime/sel_ldr.c

Issue 389022: first step in factoring out code dealing with elf into a separate library.... (Closed) Base URL: http://nativeclient.googlecode.com/svn/trunk/src/native_client/
Patch Set: '' Created 11 years, 1 month 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 | « src/trusted/service_runtime/sel_ldr.h ('k') | src/trusted/service_runtime/sel_ldr_standard.c » ('j') | no next file with comments »
Toggle Intra-line Diffs ('i') | Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
OLDNEW
1 /* 1 /*
2 * Copyright 2008, Google Inc. 2 * Copyright 2008, Google Inc.
3 * All rights reserved. 3 * All rights reserved.
4 * 4 *
5 * Redistribution and use in source and binary forms, with or without 5 * Redistribution and use in source and binary forms, with or without
6 * modification, are permitted provided that the following conditions are 6 * modification, are permitted provided that the following conditions are
7 * met: 7 * met:
8 * 8 *
9 * * Redistributions of source code must retain the above copyright 9 * * Redistributions of source code must retain the above copyright
10 * notice, this list of conditions and the following disclaimer. 10 * notice, this list of conditions and the following disclaimer.
(...skipping 58 matching lines...) Expand 10 before | Expand all | Expand 10 after
69 if (!DynArrayCtor(&nap->threads, 2)) { 69 if (!DynArrayCtor(&nap->threads, 2)) {
70 goto cleanup_none; 70 goto cleanup_none;
71 } 71 }
72 if (!DynArrayCtor(&nap->desc_tbl, 2)) { 72 if (!DynArrayCtor(&nap->desc_tbl, 2)) {
73 goto cleanup_threads; 73 goto cleanup_threads;
74 } 74 }
75 if (!NaClVmmapCtor(&nap->mem_map)) { 75 if (!NaClVmmapCtor(&nap->mem_map)) {
76 goto cleanup_desc_tbl; 76 goto cleanup_desc_tbl;
77 } 77 }
78 78
79 nap->phdrs = NULL;
80 nap->service_port = NULL; 79 nap->service_port = NULL;
81 nap->service_address = NULL; 80 nap->service_address = NULL;
82 nap->secure_channel = NULL; 81 nap->secure_channel = NULL;
83 82
84 if (!NaClMutexCtor(&nap->mu)) { 83 if (!NaClMutexCtor(&nap->mu)) {
85 goto cleanup_mem_map; 84 goto cleanup_mem_map;
86 } 85 }
87 if (!NaClCondVarCtor(&nap->cv)) { 86 if (!NaClCondVarCtor(&nap->cv)) {
88 goto cleanup_mu; 87 goto cleanup_mu;
89 } 88 }
(...skipping 715 matching lines...) Expand 10 before | Expand all | Expand 10 after
805 return NACL_SRPC_RESULT_NO_MEMORY; 804 return NACL_SRPC_RESULT_NO_MEMORY;
806 } 805 }
807 UNREFERENCED_PARAMETER(out_args); 806 UNREFERENCED_PARAMETER(out_args);
808 807
809 if (!GioMemoryFileCtor(&gf, map_addr, rounded_size)) { 808 if (!GioMemoryFileCtor(&gf, map_addr, rounded_size)) {
810 return NACL_SRPC_RESULT_NO_MEMORY; 809 return NACL_SRPC_RESULT_NO_MEMORY;
811 } 810 }
812 811
813 errcode = NaClAppLoadFile((struct Gio *) &gf, 812 errcode = NaClAppLoadFile((struct Gio *) &gf,
814 nap, 813 nap,
815 NACL_ABI_MISMATCH_OPTION_ABORT); 814 NACL_ABI_CHECK_OPTION_CHECK);
816 if (LOAD_OK != errcode) { 815 if (LOAD_OK != errcode) {
817 nap->module_load_status = errcode; 816 nap->module_load_status = errcode;
818 return NACL_SRPC_RESULT_APP_ERROR; 817 return NACL_SRPC_RESULT_APP_ERROR;
819 } 818 }
820 819
821 GioMemoryFileDtor((struct Gio *)&gf); 820 GioMemoryFileDtor((struct Gio *)&gf);
822 821
823 /* 822 /*
824 * Finish setting up the NaCl App. This includes dup'ing 823 * Finish setting up the NaCl App. This includes dup'ing
825 * descriptors 0-2 and making them available to the NaCl App. 824 * descriptors 0-2 and making them available to the NaCl App.
(...skipping 268 matching lines...) Expand 10 before | Expand all | Expand 10 after
1094 1093
1095 state.nap = nap; 1094 state.nap = nap;
1096 state.effp = (struct NaClDescEffector *) &eff; 1095 state.effp = (struct NaClDescEffector *) &eff;
1097 state.partial = 0; 1096 state.partial = 0;
1098 state.pbytes = 0; 1097 state.pbytes = 0;
1099 1098
1100 NaClDescEffectorCleanupCtor(&eff); 1099 NaClDescEffectorCleanupCtor(&eff);
1101 NaClVmmapVisit(&nap->mem_map, NaClAppFreeWalker, &state); 1100 NaClVmmapVisit(&nap->mem_map, NaClAppFreeWalker, &state);
1102 (*eff.base.vtbl->Dtor)(&eff.base); 1101 (*eff.base.vtbl->Dtor)(&eff.base);
1103 } 1102 }
OLDNEW
« no previous file with comments | « src/trusted/service_runtime/sel_ldr.h ('k') | src/trusted/service_runtime/sel_ldr_standard.c » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698