* Get the complete cookie string associated with the URI.
*
* @param aURI
* the URI of the document for which cookies are being queried.
* @param aChannel
* the channel used to load the document. this parameter may be null,
* but it is strongly recommended that a non-null value be provided to
* ensure that the cookie privacy preferences are honored.
*
* @return the resulting cookie string
*/
string getCookieString(in nsIURI aURI, in nsIChannel aChannel);
/*
* Get the complete cookie string associated with the URI.
*
* This function is NOT redundant with getCookieString, as the result
* will be different based on httponly (see bug 178993)
*
* @param aURI
* the URI of the document for which cookies are being queried.
* @param aFirstURI
* the URI that the user originally typed in or clicked on to initiate
* the load of the document referenced by aURI.
* @param aChannel
* the channel used to load the document. this parameter may be null,
* but it is strongly recommended that a non-null value be provided to
* ensure that the cookie privacy preferences are honored.
*
* @return the resulting cookie string
*/
string getCookieStringFromHttp(in nsIURI aURI, in nsIURI aFirstURI, in nsIChannel aChannel);
/*
* Set the cookie string associated with the URI.
*
* @param aURI
* the URI of the document for which cookies are being set.
* @param aPrompt
* the prompt to use for all user-level cookie notifications.
* @param aCookie
* the cookie string to set.
* @param aChannel
* the channel used to load the document. this parameter may be null,
* but it is strongly recommended that a non-null value be provided to
* ensure that the cookie privacy preferences are honored.
*
* XXX should be able to allow null aPrompt, since nsIPrompt can be queryied
* from aChannel.
*/
void setCookieString(in nsIURI aURI, in nsIPrompt aPrompt, in string aCookie, in nsIChannel aChannel);
/*
* Set the cookie string and expires associated with the URI.
*
* This function is NOT redundant with setCookieString, as the result
* will be different based on httponly (see bug 178993)
*
* @param aURI
* the URI of the document for which cookies are being set.
* @param aFirstURI
* the URI that the user originally typed in or clicked on to initiate
* the load of the document referenced by aURI.
* @param aPrompt
* the prompt to use for all user-level cookie notifications.
* @param aCookie
* the cookie string to set.
* @param aServerTime
* the expiry information of the cookie (the Date header from the HTTP
* response).
* @param aChannel
* the channel used to load the document. this parameter may be null,
* but it is strongly recommended that a non-null value be provided to
* ensure that the cookie privacy preferences are honored.
*/
void setCookieStringFromHttp(in nsIURI aURI, in nsIURI aFirstURI, in nsIPrompt aPrompt, in string aCookie, in string aServerTime, in nsIChannel aChannel);