Interface nsIEffectiveTLDServiceType

Hierarchy

Methods

  • Increases the reference count for this interface. The associated instance will not be deleted unless the reference count is returned to zero.

    Returns

    The resulting reference count.

    Returns number

  • Parameters

    • aIID: object
    • Optional aInstancePtr: object

    Returns any

  • A run time mechanism for interface discovery.

    Returns

    NS_OK if the interface is supported by the associated instance, NS_NOINTERFACE if it is not.

    aInstancePtr must not be null.

    Parameters

    • aIID: object

      [in] A requested interface IID

    • aInstancePtr: object

      [out] A pointer to an interface pointer to receive the result.

    Returns void

  • Decreases the reference count for this interface. Generally, if the reference count returns to zero, the associated instance is deleted.

    Returns

    The resulting reference count.

    Returns number

  • Returns the base domain of a URI; that is, the public suffix with a given number of additional domain name parts. For example, the result of this method for "www.bbc.co.uk", depending on the value of aAdditionalParts parameter, will be:

    0 (default) -> bbc.co.uk 1 -> www.bbc.co.uk

    Similarly, the public suffix for "www.developer.mozilla.org" is "org", and the base domain will be:

    0 (default) -> mozilla.org 1 -> developer.mozilla.org 2 -> www.developer.mozilla.org

    The base domain will be returned encoded in ASCII/ACE and will be normalized according to RFC 3454, i.e. the same encoding returned by nsIURI::GetAsciiHost(). If consumers wish to compare the result of this method against the host from another nsIURI, the host should be obtained using nsIURI::GetAsciiHost(). In the case of nested URIs, the innermost URI will be used.

    Returns

    the base domain (public suffix plus the requested number of additional parts)

    Throws

    NS_ERROR_UNEXPECTED or other error returned by nsIIDNService::normalize when the hostname contains characters disallowed in URIs

    Throws

    NS_ERROR_INSUFFICIENT_DOMAIN_LEVELS when there are insufficient subdomain levels in the hostname to satisfy the requested aAdditionalParts value.

    Throws

    NS_ERROR_HOST_IS_IP_ADDRESS if aHost is a numeric IPv4 or IPv6 address (as determined by the success of a call to PR_StringToNetAddr()).

    See

    getPublicSuffix()

    Parameters

    • aURI: nsIURI

      The URI to be analyzed

    • aAdditionalParts: uint32_t

      Number of domain name parts to be returned in addition to the public suffix

    Returns string

  • NOTE: It is strongly recommended to use getBaseDomain() above if a suitable nsIURI is available. Only use this method if this is not the case.

    Returns the base domain of a host string. Otherwise identical to getBaseDomain().

    See

    getBaseDomain()

    Parameters

    • aHost: string

      The host to be analyzed. Any additional parts (e.g. scheme, port, or path) will cause this method to throw. ASCII/ACE and UTF8 encodings are acceptable as input; normalization will be performed as specified in getBaseDomain().

    • aAdditionalParts: uint32_t

    Returns string

  • Similar to getPublicSuffix, but the suffix is validated against the Public Suffix List. If the suffix is unknown this will return an empty string.

    Returns

    the public suffix if known, an empty string otherwise

    See

    getPublicSuffixFromHost()

    Parameters

    • aURI: nsIURI

      The URI to be analyzed

    Returns string

  • Similar to getPublicSuffixFromHost, but the suffix is validated against the Public Suffix List. If the suffix is unknown this will return an empty string.

    Returns

    the public suffix if known, an empty string otherwise

    See

    getPublicSuffixFromHost()

    Parameters

    • aHost: string

      The host to be analyzed.

    Returns string

  • Returns the parent sub-domain of a host string. If the host is a base domain, it will throw NS_ERROR_INSUFFICIENT_DOMAIN_LEVELS.

    For example: "player.bbc.co.uk" would return "bbc.co.uk" and "bbc.co.uk" would throw NS_ERROR_INSUFFICIENT_DOMAIN_LEVELS.

    Parameters

    • aHost: string

      The host to be analyzed. Any additional parts (e.g. scheme, port, or path) will cause this method to throw. ASCII/ACE and UTF8 encodings are acceptable as input; normalization will be performed as specified in getBaseDomain().

    Returns string

  • Returns the public suffix of a URI. A public suffix is the highest-level domain under which individual domains may be registered; it may therefore contain one or more dots. For example, the public suffix for "www.bbc.co.uk" is "co.uk", because the .uk TLD does not allow the registration of domains at the second level ("bbc.uk" is forbidden).

    The public suffix will be returned encoded in ASCII/ACE and will be normalized according to RFC 3454, i.e. the same encoding returned by nsIURI::GetAsciiHost(). If consumers wish to compare the result of this method against the host from another nsIURI, the host should be obtained using nsIURI::GetAsciiHost(). In the case of nested URIs, the innermost URI will be used.

    Returns

    the public suffix

    Throws

    NS_ERROR_UNEXPECTED or other error returned by nsIIDNService::normalize when the hostname contains characters disallowed in URIs

    Throws

    NS_ERROR_HOST_IS_IP_ADDRESS if the host is a numeric IPv4 or IPv6 address (as determined by the success of a call to PR_StringToNetAddr()).

    Parameters

    • aURI: nsIURI

      The URI to be analyzed

    Returns string

  • NOTE: It is strongly recommended to use getPublicSuffix() above if a suitable nsIURI is available. Only use this method if this is not the case.

    Returns the public suffix of a host string. Otherwise identical to getPublicSuffix().

    See

    getPublicSuffix()

    Parameters

    • aHost: string

      The host to be analyzed. Any additional parts (e.g. scheme, port, or path) will cause this method to throw. ASCII/ACE and UTF8 encodings are acceptable as input; normalization will be performed as specified in getBaseDomain().

    Returns string

  • Get the Site without the scheme for the origin of aURI; e.g. for "https://www.bbc.co.uk/index.html", this would be "bbc.co.uk". This uses getBaseDomain() internally. This is appropriately permissive, and will return a schemeless site for aliased hostnames and IP addresses and will therefore not throw NS_ERROR_INSUFFICIENT_DOMAIN_LEVELS or NS_ERROR_HOST_IS_IP_ADDRESS, e.g. "http://localhost/index.html" will return "localhost" successfully, rather than throwing an error.

    Returns

    the Site.

    Throws

    NS_ERROR_UNEXPECTED or other error returned by nsIIDNService::normalize when the hostname contains characters disallowed in URIs

    See

    • getBaseDomain()
    • getSite()

    Warning

    This function should not be used without good reason. Please use getSite() or the Origin if you are not absolutely certain.

    Parameters

    • aURI: nsIURI

    Returns string

  • Get the Site for the origin of aURI; e.g. for "https://www.bbc.co.uk/index.html", this would be "https://bbc.co.uk". This uses getBaseDomain() internally. This is appropriately permissive, and will return a scheme for alaised hostnames and IP addresses and will therefore not throw NS_ERROR_INSUFFICIENT_DOMAIN_LEVELS or NS_ERROR_HOST_IS_IP_ADDRESS, e.g. "http://localhost/index.html" will return "http://localhost" successfully, rather than throwing an error.

    Returns

    the Site.

    Throws

    NS_ERROR_UNEXPECTED or other error returned by nsIIDNService::normalize when the hostname contains characters disallowed in URIs

    See

    getBaseDomain()

    Parameters

    • aURI: nsIURI

    Returns string

  • Returns true if the |aInput| in is part of the root domain of |aHost|. For example, if |aInput| is "www.mozilla.org", and we pass in "mozilla.org" as |aHost|, this will return true. It would return false the other way around.

    Parameters

    • aInput: string

      The host to be analyzed.

    • aHost: string

      The host to compare to.

    Returns bool

Generated using TypeDoc