NPAPI:DocumentOrigin: Difference between revisions

From MozillaWiki
Jump to navigation Jump to search
Line 19: Line 19:
   NPNVdocumentOrigin = TBA
   NPNVdocumentOrigin = TBA


The value for this variable will be an NFKC-encoded (normalized) UTF-8 origin. Memory for this string must be freed by the plugin via <code>NPN_MemFree</code>.
The value for this variable will be the [http://www.whatwg.org/specs/web-apps/current-work/multipage/origin-0.html#unicode-serialization-of-an-origin Unicode serialization] of the origin converted to NFKC-encoded (normalized) UTF-8. Memory for this string must be freed by the plugin via <code>NPN_MemFree</code>.


   char *docOrigin = NULL;
   char *docOrigin = NULL;

Revision as of 16:36, 8 August 2011

Status

Under Consideration

Contributors

  • Last modified: August 8, 2011
  • Authors: Josh Aas (Mozilla Corporation)
  • Contributors:

Problem Summary

Plugins frequently need to make security decisions based on document origins. This is usually done using NPRuntime to access window.location in the DOM. We should provide a secure and convenient way to access an instance's document origin.

Current Proposal

The following NPAPI variable will be added:

 NPNVdocumentOrigin = TBA

The value for this variable will be the Unicode serialization of the origin converted to NFKC-encoded (normalized) UTF-8. Memory for this string must be freed by the plugin via NPN_MemFree.

 char *docOrigin = NULL;
 NPError error = NPN_GetValue(instance, NPNVdocumentOrigin, &docOrigin);
 /* ... use URL ... */
 NPN_MemFree(docOrigin);

Open Issues

  • None