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

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

Issue 891603002: Removes the name service from the service runtime (Closed) Base URL: https://chromium.googlesource.com/native_client/src/native_client.git@master
Patch Set: Fixes code review comments Created 5 years, 10 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 /* 7 /*
8 * NaCl service run-time, non-platform specific system call helper routines. 8 * NaCl service run-time, non-platform specific system call helper routines.
9 */ 9 */
10 #include <sys/types.h> 10 #include <sys/types.h>
(...skipping 126 matching lines...) Expand 10 before | Expand all | Expand 10 after
137 &zero, sizeof zero)) { 137 &zero, sizeof zero)) {
138 NaClLog(4, "NaClSysThreadExit: ignoring invalid stack_flag_addr\n"); 138 NaClLog(4, "NaClSysThreadExit: ignoring invalid stack_flag_addr\n");
139 } 139 }
140 } 140 }
141 141
142 NaClAppThreadTeardown(natp); 142 NaClAppThreadTeardown(natp);
143 /* NOTREACHED */ 143 /* NOTREACHED */
144 return -NACL_ABI_EINVAL; 144 return -NACL_ABI_EINVAL;
145 } 145 }
146 146
147 int32_t NaClSysNameService(struct NaClAppThread *natp,
148 uint32_t desc_addr) {
149 struct NaClApp *nap = natp->nap;
150 int32_t retval = -NACL_ABI_EINVAL;
151 int32_t desc;
152
153 NaClLog(3,
154 ("NaClSysNameService(0x%08"NACL_PRIxPTR","
155 " 0x%08"NACL_PRIx32")\n"),
156 (uintptr_t) natp,
157 desc_addr);
158
159 if (!NaClCopyInFromUser(nap, &desc, desc_addr, sizeof desc)) {
160 NaClLog(LOG_ERROR,
161 "Invalid address argument to NaClSysNameService\n");
162 retval = -NACL_ABI_EFAULT;
163 goto done;
164 }
165
166 if (-1 == desc) {
167 /* read */
168 desc = NaClAppSetDescAvail(nap, NaClDescRef(nap->name_service_conn_cap));
169 if (NaClCopyOutToUser(nap, desc_addr, &desc, sizeof desc)) {
170 retval = 0;
171 } else {
172 retval = -NACL_ABI_EFAULT;
173 }
174 } else {
175 struct NaClDesc *desc_obj_ptr = NaClAppGetDesc(nap, desc);
176
177 if (NULL == desc_obj_ptr) {
178 retval = -NACL_ABI_EBADF;
179 goto done;
180 }
181 if (NACL_DESC_CONN_CAP != NACL_VTBL(NaClDesc, desc_obj_ptr)->typeTag &&
182 NACL_DESC_CONN_CAP_FD != NACL_VTBL(NaClDesc, desc_obj_ptr)->typeTag) {
183 retval = -NACL_ABI_EINVAL;
184 goto done;
185 }
186 /* write */
187 NaClXMutexLock(&nap->mu);
188 NaClDescUnref(nap->name_service_conn_cap);
189 nap->name_service_conn_cap = desc_obj_ptr;
190 NaClXMutexUnlock(&nap->mu);
191 retval = 0;
192 }
193
194 done:
195 return retval;
196 }
197
198 int32_t NaClSysTlsInit(struct NaClAppThread *natp, 147 int32_t NaClSysTlsInit(struct NaClAppThread *natp,
199 uint32_t thread_ptr) { 148 uint32_t thread_ptr) {
200 int32_t retval = -NACL_ABI_EINVAL; 149 int32_t retval = -NACL_ABI_EINVAL;
201 uintptr_t sys_tls; 150 uintptr_t sys_tls;
202 151
203 NaClLog(3, 152 NaClLog(3,
204 ("Entered NaClSysTlsInit(0x%08"NACL_PRIxPTR 153 ("Entered NaClSysTlsInit(0x%08"NACL_PRIxPTR
205 ", 0x%08"NACL_PRIxPTR")\n"), 154 ", 0x%08"NACL_PRIxPTR")\n"),
206 (uintptr_t) natp, (uintptr_t) thread_ptr); 155 (uintptr_t) natp, (uintptr_t) thread_ptr);
207 156
(...skipping 832 matching lines...) Expand 10 before | Expand all | Expand 10 after
1040 return NaClSysClockGetCommon(natp, clk_id, (uintptr_t) tsp, 989 return NaClSysClockGetCommon(natp, clk_id, (uintptr_t) tsp,
1041 NaClClockGetRes, 1); 990 NaClClockGetRes, 1);
1042 } 991 }
1043 992
1044 int32_t NaClSysClockGetTime(struct NaClAppThread *natp, 993 int32_t NaClSysClockGetTime(struct NaClAppThread *natp,
1045 int clk_id, 994 int clk_id,
1046 uint32_t tsp) { 995 uint32_t tsp) {
1047 return NaClSysClockGetCommon(natp, clk_id, (uintptr_t) tsp, 996 return NaClSysClockGetCommon(natp, clk_id, (uintptr_t) tsp,
1048 NaClClockGetTime, 0); 997 NaClClockGetTime, 0);
1049 } 998 }
OLDNEW
« no previous file with comments | « src/trusted/service_runtime/nacl_syscall_common.h ('k') | src/trusted/service_runtime/nacl_syscall_list.c » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698