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

Unified Diff: src/trusted/reverse_service/reverse_service_c.c

Issue 15039022: Enable meta-based validation for shared libraries. (Closed) Base URL: svn://svn.chromium.org/native_client/trunk/src/native_client
Patch Set: Style Created 7 years, 7 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 side-by-side diff with in-line comments
Download patch
« no previous file with comments | « src/trusted/reverse_service/reverse_service_c.h ('k') | src/trusted/sel_universal/reverse_emulate.cc » ('j') | no next file with comments »
Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
Index: src/trusted/reverse_service/reverse_service_c.c
diff --git a/src/trusted/reverse_service/reverse_service_c.c b/src/trusted/reverse_service/reverse_service_c.c
index f3ef9944d998da798404a298c68d86ef30d28891..8b32a650ae7ea0084ef343952452d0a07202602e 100644
--- a/src/trusted/reverse_service/reverse_service_c.c
+++ b/src/trusted/reverse_service/reverse_service_c.c
@@ -25,6 +25,7 @@
#include "native_client/src/trusted/desc/nacl_desc_io.h"
#include "native_client/src/trusted/reverse_service/manifest_rpc.h"
+#include "native_client/src/trusted/reverse_service/nacl_file_info.h"
#include "native_client/src/trusted/reverse_service/reverse_control_rpc.h"
#include "native_client/src/trusted/service_runtime/include/sys/errno.h"
@@ -355,34 +356,41 @@ static void NaClReverseServiceManifestLookupRpc(
(struct NaClReverseService *) rpc->channel->server_instance_data;
char *url_key = in_args[0]->arrays.str;
int flags = in_args[0]->u.ival;
- int32_t desc = -1;
+ struct NaClFileInfo info;
struct NaClHostDesc *host_desc;
struct NaClDescIoDesc *io_desc = NULL;
+ struct NaClDesc *nacl_desc = NULL;
+
+ memset(&info, 0, sizeof(info));
NaClLog(4, "Entered ManifestLookupRpc: 0x%08"NACL_PRIxPTR", %s, %d\n",
(uintptr_t) nrsp, url_key, flags);
NaClLog(4, "ManifestLookupRpc: invoking OpenManifestEntry\n");
if (!(*NACL_VTBL(NaClReverseInterface, nrsp->iface)->
- OpenManifestEntry)(nrsp->iface, url_key, &desc)
- || -1 == desc) {
+ OpenManifestEntry)(nrsp->iface, url_key, &info)
+ || -1 == info.desc) {
NaClLog(1, "ManifestLookupRpc: OpenManifestEntry failed.\n");
out_args[0]->u.ival = NACL_ABI_ENOENT; /* failed */
out_args[1]->u.hval = (struct NaClDesc *) NaClDescInvalidMake();
- out_args[2]->u.count = 0;
+ out_args[2]->u.lval = 0;
+ out_args[3]->u.count = 0;
goto done;
}
NaClLog(4, "ManifestLookupRpc: OpenManifestEntry returned desc %d.\n",
- desc);
+ info.desc);
host_desc = (struct NaClHostDesc *) malloc(sizeof *host_desc);
CHECK(host_desc != NULL);
- CHECK(NaClHostDescPosixTake(host_desc, desc, NACL_ABI_O_RDONLY) == 0);
+ CHECK(NaClHostDescPosixTake(host_desc, info.desc, NACL_ABI_O_RDONLY) == 0);
io_desc = NaClDescIoDescMake(host_desc);
CHECK(io_desc != NULL);
+ nacl_desc = (struct NaClDesc *) io_desc;
+
out_args[0]->u.ival = 0; /* OK */
- out_args[1]->u.hval = (struct NaClDesc *) io_desc;
- out_args[2]->u.count = 10;
- strncpy(out_args[2]->arrays.carr, "123456789", 10);
+ out_args[1]->u.hval = nacl_desc;
+ out_args[2]->u.lval = (int64_t) info.nonce;
+ out_args[3]->u.count = 10;
+ strncpy(out_args[3]->arrays.carr, "123456789", 10);
/*
* TODO(phosek): the array should be an object reference (issue 3035).
*/
@@ -733,11 +741,11 @@ size_t NaClReverseInterfaceEnumerateManifestKeys(
int NaClReverseInterfaceOpenManifestEntry(
struct NaClReverseInterface *self,
char const *url_key,
- int32_t *out_desc) {
+ struct NaClFileInfo *info) {
NaClLog(3,
("NaClReverseInterfaceOpenManifestEntry(0x%08"NACL_PRIxPTR", %s"
", 0x%08"NACL_PRIxPTR")\n"),
- (uintptr_t) self, url_key, (uintptr_t) out_desc);
+ (uintptr_t) self, url_key, (uintptr_t) info);
return 0;
}
« no previous file with comments | « src/trusted/reverse_service/reverse_service_c.h ('k') | src/trusted/sel_universal/reverse_emulate.cc » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698