| Standard full URI with authority component and concept of relative
URIs (http, ftp, ...)
|
| PRUint32 |
nsIProtocolHandler.URI_STD |
= 0 |
| No concept of relative URIs (about, javascript, finger, ...)
|
| PRUint32 |
nsIProtocolHandler.URI_NORELATIVE |
= 1 |
| No authority component (file, ...)
|
| PRUint32 |
nsIProtocolHandler.URI_NOAUTH |
= 2 |
| The URIs for this protocol have no inherent security context, so
documents loaded via this protocol should inherit the security context
from the document that loads them.
|
| PRUint32 |
nsIProtocolHandler.URI_INHERITS_SECURITY_CONTEXT |
= 16 |
| "Automatic" loads that would replace the document (e.g. refresh,
certain types of XLinks, possibly other loads that the application
decides are not user triggered) are not allowed if the originating (NOT
the target) URI has this protocol flag. Note that the decision as to
what constitutes an "automatic" load is made externally, by the caller
of nsIScriptSecurityManager::CheckLoadURI. See documentation for that
method for more information.
A typical protocol that might want to set this flag is a protocol that
shows highly untrusted content in a viewing area that the user expects
to have a lot of control over, such as an e-mail reader.
|
| PRUint32 |
nsIProtocolHandler.URI_FORBIDS_AUTOMATIC_DOCUMENT_REPLACEMENT |
= 32 |
| The URIs for this protocol can be loaded by anyone. For example, any
website should be allowed to trigger a load of a URI for this protocol.
Web-safe protocols like "http" should set this flag.
|
| PRUint32 |
nsIProtocolHandler.URI_LOADABLE_BY_ANYONE |
= 64 |
| The URIs for this protocol are UNSAFE if loaded by untrusted (web)
content and may only be loaded by privileged code (for example, code
which has the system principal). Various internal protocols should set
this flag.
|
| PRUint32 |
nsIProtocolHandler.URI_DANGEROUS_TO_LOAD |
= 128 |
| The URIs for this protocol point to resources that are part of the
application's user interface. There are cases when such resources may
be made accessible to untrusted content such as web pages, so this is
less restrictive than URI_DANGEROUS_TO_LOAD but more restrictive than
URI_LOADABLE_BY_ANYONE. See the documentation for
nsIScriptSecurityManager::CheckLoadURI.
|
| PRUint32 |
nsIProtocolHandler.URI_IS_UI_RESOURCE |
= 256 |
| Loading of URIs for this protocol from other origins should only be
allowed if those origins should have access to the local filesystem.
It's up to the application to decide what origins should have such
access. Protocols like "file" that point to local data should set this
flag.
|
| PRUint32 |
nsIProtocolHandler.URI_IS_LOCAL_FILE |
= 512 |
| Loading channels from this protocol has side-effects that make
it unsuitable for saving to a local file.
|
| PRUint32 |
nsIProtocolHandler.URI_NON_PERSISTABLE |
= 1024 |
| Channels using this protocol never call OnDataAvailable
on the listener passed to AsyncOpen and they therefore
do not return any data that we can use.
|
| PRUint32 |
nsIProtocolHandler.URI_DOES_NOT_RETURN_DATA |
= 2048 |
| This protocol handler can be proxied via a proxy (socks or http)
(e.g., irc, smtp, http, etc.). If the protocol supports transparent
proxying, the handler should implement nsIProxiedProtocolHandler.
If it supports only HTTP proxying, then it need not support
nsIProxiedProtocolHandler, but should instead set the ALLOWS_PROXY_HTTP
flag (see below).
|
| PRUint32 |
nsIProtocolHandler.ALLOWS_PROXY |
= 4 |
| This protocol handler can be proxied using a http proxy (e.g., http,
ftp, etc.). nsIIOService::newChannelFromURI will feed URIs from this
protocol handler to the HTTP protocol handler instead. This flag is
ignored if ALLOWS_PROXY is not set.
|
| PRUint32 |
nsIProtocolHandler.ALLOWS_PROXY_HTTP |
= 8 |