diff options
author | rsesek@chromium.org <rsesek@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98> | 2013-05-25 16:29:45 +0000 |
---|---|---|
committer | rsesek@chromium.org <rsesek@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98> | 2013-05-25 16:29:45 +0000 |
commit | 32a93e0c1ac080239558a2ff6a499857d144571f (patch) | |
tree | d0239ad9a566322c79163a03d91351b3bf1cf127 /ppapi/c | |
parent | fa13583bee02fb9e2b02c7d761bfb291e9035abc (diff) | |
download | chromium_src-32a93e0c1ac080239558a2ff6a499857d144571f.zip chromium_src-32a93e0c1ac080239558a2ff6a499857d144571f.tar.gz chromium_src-32a93e0c1ac080239558a2ff6a499857d144571f.tar.bz2 |
Revert 202278 "NaCl: enable meta-based validation for shared lib..."
Regressed Linux sizes for nacl_helper
http://build.chromium.org/p/chromium/buildstatus?builder=Linux&number=39450
> NaCl: enable meta-based validation for shared libraries.
>
> This is the Chrome-side half of a CL to allow mmaping and skipping validation
> for chrome-extension: files we have seen before and know are safe. To do this
> we need to know the path of the file on disk, but we don't entirely trust the
> renderer not to tamper with it. To work around this, a nonce is passed along
> with the file handle. This nonce can be used by the NaCl process to acquire the
> file handle directly from the browser process, as well as a fresh copy of the
> file handle.
>
> This change significantly revises the OpenNaClExecutable method of the
> PPB_NaCl_Private interface. The method was added anticipation of this CL, but
> the overall design shifted after the method was added.
>
> BUG=https://code.google.com/p/chromium/issues/detail?id=224434
>
> Review URL: https://chromiumcodereview.appspot.com/14750007
TBR=ncbray@chromium.org
Review URL: https://codereview.chromium.org/15820005
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@202304 0039d316-1c4b-4281-b951-d872f2087c98
Diffstat (limited to 'ppapi/c')
-rw-r--r-- | ppapi/c/private/ppb_nacl_private.h | 24 |
1 files changed, 19 insertions, 5 deletions
diff --git a/ppapi/c/private/ppb_nacl_private.h b/ppapi/c/private/ppb_nacl_private.h index 72b62e9..8e40fd8 100644 --- a/ppapi/c/private/ppb_nacl_private.h +++ b/ppapi/c/private/ppb_nacl_private.h @@ -3,7 +3,7 @@ * found in the LICENSE file. */ -/* From private/ppb_nacl_private.idl modified Fri May 17 13:21:13 2013. */ +/* From private/ppb_nacl_private.idl modified Mon Apr 22 22:25:20 2013. */ #ifndef PPAPI_C_PRIVATE_PPB_NACL_PRIVATE_H_ #define PPAPI_C_PRIVATE_PPB_NACL_PRIVATE_H_ @@ -12,6 +12,7 @@ #include "ppapi/c/pp_instance.h" #include "ppapi/c/pp_macros.h" #include "ppapi/c/pp_stdint.h" +#include "ppapi/c/pp_var.h" #define PPB_NACL_PRIVATE_INTERFACE_1_0 "PPB_NaCl_Private;1.0" #define PPB_NACL_PRIVATE_INTERFACE PPB_NACL_PRIVATE_INTERFACE_1_0 @@ -56,6 +57,19 @@ typedef enum { */ /** + * @addtogroup Structs + * @{ + */ +struct PP_NaClExecutableMetadata { + /** File path of NaCl executable. This is created by the OpenNaClExecutableFd + * function. It is the caller's responsiblity to release it. */ + struct PP_Var file_path; +}; +/** + * @} + */ + +/** * @addtogroup Interfaces * @{ */ @@ -135,10 +149,10 @@ struct PPB_NaCl_Private_1_0 { * corresponding to the file URL and returns a file descriptor, or an invalid * handle on failure. |metadata| is left unchanged on failure. */ - PP_FileHandle (*OpenNaClExecutable)(PP_Instance instance, - const char* file_url, - uint64_t* file_token_lo, - uint64_t* file_token_hi); + PP_FileHandle (*OpenNaClExecutable)( + PP_Instance instance, + const char* file_url, + struct PP_NaClExecutableMetadata* metadata); }; typedef struct PPB_NaCl_Private_1_0 PPB_NaCl_Private; |