\section{\module{Cookie} ---
         HTTP state management}

\declaremodule{standard}{Cookie}
\modulesynopsis{Support for HTTP state management (cookies).}
\moduleauthor{Timothy O'Malley}{timo@alum.mit.edu}
\sectionauthor{Moshe Zadka}{moshez@zadka.site.co.il}


The \module{Cookie} module defines classes for abstracting the concept of 
cookies, an HTTP state management mechanism. It supports both simple
string-only cookies, and provides an abstraction for having any serializable
data-type as cookie value.

The module formerly strictly applied the parsing rules described in in
the \rfc{2109} and \rfc{2068} specifications.  It has since been discovered
that MSIE 3.0x doesn't follow the character rules outlined in those
specs.  As a result, the parsing rules used are a bit less strict.

\begin{excdesc}{CookieError}
Exception failing because of \rfc{2109} invalidity: incorrect
attributes, incorrect \code{Set-Cookie} header, etc.
\end{excdesc}

\begin{classdesc}{BaseCookie}{\optional{input}}
This class is a dictionary-like object whose keys are strings and
whose values are \class{Morsel}s. Note that upon setting a key to
a value, the value is first converted to a \class{Morsel} containing
the key and the value.

If \var{input} is given, it is passed to the \method{load()} method.
\end{classdesc}

\begin{classdesc}{SimpleCookie}{\optional{input}}
This class derives from \class{BaseCookie} and overrides
\method{value_decode()} and \method{value_encode()} to be the identity
and \function{str()} respectively.
\end{classdesc}

\begin{classdesc}{SerialCookie}{\optional{input}}
This class derives from \class{BaseCookie} and overrides
\method{value_decode()} and \method{value_encode()} to be the
\function{pickle.loads()} and  \function{pickle.dumps()}.  

\strong{Do not use this class!}  Reading pickled values from untrusted
cookie data is a huge security hole, as pickle strings can be crafted
to cause arbitrary code to execute on your server.  It is supported
for backwards compatibility only, and may eventually go away.
\end{classdesc}

\begin{classdesc}{SmartCookie}{\optional{input}}
This class derives from \class{BaseCookie}. It overrides
\method{value_decode()} to be \function{pickle.loads()} if it is a
valid pickle, and otherwise the value itself. It overrides
\method{value_encode()} to be \function{pickle.dumps()} unless it is a
string, in which case it returns the value itself.

\strong{Note:} The same security warning from \class{SerialCookie}
applies here.
\end{classdesc}

A further security note is warranted.  For backwards compatibility,
the \module{Cookie} module exports a class named \class{Cookie} which
is just an alias for \class{SmartCookie}.  This is probably a mistake
and will likely be removed in a future version.  You should not use
the \class{Cookie} class in your applications, for the same reason why
you should not use the \class{SerialCookie} class.


\begin{seealso}
  \seerfc{2109}{HTTP State Management Mechanism}{This is the state
                management specification implemented by this module.}
\end{seealso}


\subsection{Cookie Objects \label{cookie-objects}}

\begin{methoddesc}[BaseCookie]{value_decode}{val}
Return a decoded value from a string representation. Return value can
be any type. This method does nothing in \class{BaseCookie} --- it exists
so it can be overridden.
\end{methoddesc}

\begin{methoddesc}[BaseCookie]{value_encode}{val}
Return an encoded value. \var{val} can be any type, but return value
must be a string. This method does nothing in \class{BaseCookie} --- it exists
so it can be overridden

In general, it should be the case that \method{value_encode()} and 
\method{value_decode()} are inverses on the range of \var{value_decode}.
\end{methoddesc}

\begin{methoddesc}[BaseCookie]{output}{\optional{attrs\optional{, header\optional{, sep}}}}
Return a string representation suitable to be sent as HTTP headers.
\var{attrs} and \var{header} are sent to each \class{Morsel}'s
\method{output()} method. \var{sep} is used to join the headers
together, and is by default a newline.
\end{methoddesc}

\begin{methoddesc}[BaseCookie]{js_output}{\optional{attrs}}
Return an embeddable JavaScript snippet, which, if run on a browser which
supports JavaScript, will act the same as if the HTTP headers was sent.

The meaning for \var{attrs} is the same as in \method{output()}.
\end{methoddesc}

\begin{methoddesc}[BaseCookie]{load}{rawdata}
If \var{rawdata} is a string, parse it as an \code{HTTP_COOKIE} and add
the values found there as \class{Morsel}s. If it is a dictionary, it
is equivalent to:

\begin{verbatim}
for k, v in rawdata.items():
    cookie[k] = v
\end{verbatim}
\end{methoddesc}


\subsection{Morsel Objects \label{morsel-objects}}

\begin{classdesc}{Morsel}{}
Abstract a key/value pair, which has some \rfc{2109} attributes.

Morsels are dictionary-like objects, whose set of keys is constant ---
the valid \rfc{2109} attributes, which are

\begin{itemize}
\item \code{expires}
\item \code{path}
\item \code{comment}
\item \code{domain}
\item \code{max-age}
\item \code{secure}
\item \code{version}
\end{itemize}

The keys are case-insensitive.
\end{classdesc}

\begin{memberdesc}[Morsel]{value}
The value of the cookie.
\end{memberdesc}

\begin{memberdesc}[Morsel]{coded_value}
The encoded value of the cookie --- this is what should be sent.
\end{memberdesc}

\begin{memberdesc}[Morsel]{key}
The name of the cookie.
\end{memberdesc}

\begin{methoddesc}[Morsel]{set}{key, value, coded_value}
Set the \var{key}, \var{value} and \var{coded_value} members.
\end{methoddesc}

\begin{methoddesc}[Morsel]{isReservedKey}{K}
Whether \var{K} is a member of the set of keys of a \class{Morsel}.
\end{methoddesc}

\begin{methoddesc}[Morsel]{output}{\optional{attrs\optional{, header}}}
Return a string representation of the Morsel, suitable
to be sent as an HTTP header. By default, all the attributes are included,
unless \var{attrs} is given, in which case it should be a list of attributes
to use. \var{header} is by default \code{"Set-Cookie:"}.
\end{methoddesc}

\begin{methoddesc}[Morsel]{js_output}{\optional{attrs}}
Return an embeddable JavaScript snippet, which, if run on a browser which
supports JavaScript, will act the same as if the HTTP header was sent.

The meaning for \var{attrs} is the same as in \method{output()}.
\end{methoddesc}

\begin{methoddesc}[Morsel]{OutputString}{\optional{attrs}}
Return a string representing the Morsel, without any surrounding HTTP
or JavaScript.

The meaning for \var{attrs} is the same as in \method{output()}.
\end{methoddesc}
                

\subsection{Example \label{cookie-example}}

The following example demonstrates how to use the \module{Cookie} module.

\begin{verbatim}
>>> import Cookie
>>> C = Cookie.SimpleCookie()
>>> C = Cookie.SerialCookie()
>>> C = Cookie.SmartCookie()
>>> C["fig"] = "newton"
>>> C["sugar"] = "wafer"
>>> print C # generate HTTP headers
Set-Cookie: sugar=wafer;
Set-Cookie: fig=newton;
>>> print C.output() # same thing
Set-Cookie: sugar=wafer;
Set-Cookie: fig=newton;
>>> C = Cookie.SmartCookie()
>>> C["rocky"] = "road"
>>> C["rocky"]["path"] = "/cookie"
>>> print C.output(header="Cookie:")
Cookie: rocky=road; Path=/cookie;
>>> print C.output(attrs=[], header="Cookie:")
Cookie: rocky=road;
>>> C = Cookie.SmartCookie()
>>> C.load("chips=ahoy; vienna=finger") # load from a string (HTTP header)
>>> print C
Set-Cookie: vienna=finger;
Set-Cookie: chips=ahoy;
>>> C = Cookie.SmartCookie()
>>> C.load('keebler="E=everybody; L=\\"Loves\\"; fudge=\\012;";')
>>> print C
Set-Cookie: keebler="E=everybody; L=\"Loves\"; fudge=\012;";
>>> C = Cookie.SmartCookie()
>>> C["oreo"] = "doublestuff"
>>> C["oreo"]["path"] = "/"
>>> print C
Set-Cookie: oreo=doublestuff; Path=/;
>>> C = Cookie.SmartCookie()
>>> C["twix"] = "none for you"
>>> C["twix"].value
'none for you'
>>> C = Cookie.SimpleCookie()
>>> C["number"] = 7 # equivalent to C["number"] = str(7)
>>> C["string"] = "seven"
>>> C["number"].value
'7'
>>> C["string"].value
'seven'
>>> print C
Set-Cookie: number=7;
Set-Cookie: string=seven;
>>> C = Cookie.SerialCookie()
>>> C["number"] = 7
>>> C["string"] = "seven"
>>> C["number"].value
7
>>> C["string"].value
'seven'
>>> print C
Set-Cookie: number="I7\012.";
Set-Cookie: string="S'seven'\012p1\012.";
>>> C = Cookie.SmartCookie()
>>> C["number"] = 7
>>> C["string"] = "seven"
>>> C["number"].value
7
>>> C["string"].value
'seven'
>>> print C
Set-Cookie: number="I7\012.";
Set-Cookie: string=seven;
\end{verbatim}
