| CgiUtils.h | | CgiUtils.h | |
| /* -*-mode:c++; c-file-style: "gnu";-*- */ | | /* -*-mode:c++; c-file-style: "gnu";-*- */ | |
| /* | | /* | |
|
| * $Id: CgiUtils.h,v 1.15 2008/01/19 15:43:57 sebdiaz Exp $ | | * $Id: CgiUtils.h,v 1.16 2009/01/03 17:12:07 sebdiaz Exp $ | |
| * | | * | |
| * Copyright (C) 1996 - 2004 Stephen F. Booth <sbooth@gnu.org> | | * Copyright (C) 1996 - 2004 Stephen F. Booth <sbooth@gnu.org> | |
| * 2007 Sebastien DIAZ <sebastien.diaz@gmail.com> | | * 2007 Sebastien DIAZ <sebastien.diaz@gmail.com> | |
| * Part of the GNU cgicc library, http://www.gnu.org/software/cgicc | | * Part of the GNU cgicc library, http://www.gnu.org/software/cgicc | |
| * | | * | |
| * This library is free software; you can redistribute it and/or | | * This library is free software; you can redistribute it and/or | |
| * modify it under the terms of the GNU Lesser General Public | | * modify it under the terms of the GNU Lesser General Public | |
| * License as published by the Free Software Foundation; either | | * License as published by the Free Software Foundation; either | |
| * version 3 of the License, or (at your option) any later version. | | * version 3 of the License, or (at your option) any later version. | |
| * | | * | |
| | | | |
| skipping to change at line 73 | | skipping to change at line 73 | |
| * \param s2 The second string to compare | | * \param s2 The second string to compare | |
| * \param n The number of characters to compare. | | * \param n The number of characters to compare. | |
| * \return \c true if the strings are equal, \c false if they are not | | * \return \c true if the strings are equal, \c false if they are not | |
| */ | | */ | |
| CGICC_API bool | | CGICC_API bool | |
| stringsAreEqual(const std::string& ss1, | | stringsAreEqual(const std::string& ss1, | |
| const std::string& ss2, | | const std::string& ss2, | |
| size_t n); | | size_t n); | |
| | | | |
| /*! | | /*! | |
|
| * \brief Convert an ASCII string to a URL-safe string. | | * \brief Convert encoded characters in form data to normal ASCII. | |
| * | | * | |
|
| * For example, '!' is converted to "%21" and ' ' is converted to '+'. | | * For example, "%21" is converted to '!' and '+' is converted to a space | |
| * \param src The src string containing the characters to encode | | . | |
| | | * Normally, this is called internally to decode the query string or post | |
| | | * data. | |
| | | * \param src The src string containing the encoded characters | |
| | | | |
| * \return The converted string | | * \return The converted string | |
| */ | | */ | |
| CGICC_API std::string | | CGICC_API std::string | |
| form_urldecode(const std::string& src); | | form_urldecode(const std::string& src); | |
| | | | |
| /*! | | /*! | |
|
| * \brief Convert encoded characters in form data to normal ASCII. | | * \brief Convert an ASCII string to a URL-safe string. | |
| * | | * | |
|
| * For example, "%21" is converted to '!' and '+' is converted to a space | | * For example, '!' is converted to "%21" and ' ' is converted to '+'. | |
| . | | * \param src The src string containing the characters to encode | |
| * Normally, this is called internally to decode the query string or post | | | |
| * data. | | | |
| * \param src The src string containing the encoded characters | | | |
| * \return The converted string | | * \return The converted string | |
| */ | | */ | |
| CGICC_API std::string | | CGICC_API std::string | |
| form_urlencode(const std::string& src); | | form_urlencode(const std::string& src); | |
| | | | |
| /*! | | /*! | |
| * \brief Convert an ASCII character to its hexadecimal equivalent. | | * \brief Convert an ASCII character to its hexadecimal equivalent. | |
| * | | * | |
| * For example, after the call | | * For example, after the call | |
| * \code | | * \code | |
| | | | |
End of changes. 5 change blocks. |
| 10 lines changed or deleted | | 11 lines changed or added | |
|
| Cgicc.h | | Cgicc.h | |
| /* -*-mode:c++; c-file-style: "gnu";-*- */ | | /* -*-mode:c++; c-file-style: "gnu";-*- */ | |
| /* | | /* | |
|
| * $Id: Cgicc.h,v 1.18 2007/07/02 18:48:17 sebdiaz Exp $ | | * $Id: Cgicc.h,v 1.19 2009/01/03 17:12:07 sebdiaz Exp $ | |
| * | | * | |
| * Copyright (C) 1996 - 2004 Stephen F. Booth <sbooth@gnu.org> | | * Copyright (C) 1996 - 2004 Stephen F. Booth <sbooth@gnu.org> | |
| * 2007 Sebastien DIAZ <sebastien.diaz@gmail.com> | | * 2007 Sebastien DIAZ <sebastien.diaz@gmail.com> | |
| * Part of the GNU cgicc library, http://www.gnu.org/software/cgicc | | * Part of the GNU cgicc library, http://www.gnu.org/software/cgicc | |
| * | | * | |
| * This library is free software; you can redistribute it and/or | | * This library is free software; you can redistribute it and/or | |
| * modify it under the terms of the GNU Lesser General Public | | * modify it under the terms of the GNU Lesser General Public | |
| * License as published by the Free Software Foundation; either | | * License as published by the Free Software Foundation; either | |
| * version 3 of the License, or (at your option) any later version. | | * version 3 of the License, or (at your option) any later version. | |
| * | | * | |
| | | | |
| skipping to change at line 429 | | skipping to change at line 429 | |
| restore(const std::string& filename); | | restore(const std::string& filename); | |
| //@} | | //@} | |
| | | | |
| private: | | private: | |
| CgiEnvironment fEnvironment; | | CgiEnvironment fEnvironment; | |
| std::vector<FormEntry> fFormData; | | std::vector<FormEntry> fFormData; | |
| std::vector<FormFile> fFormFiles; | | std::vector<FormFile> fFormFiles; | |
| | | | |
| // Convert query string into a list of FormEntries | | // Convert query string into a list of FormEntries | |
| void | | void | |
|
| parseFormInput(const std::string& data); | | parseFormInput(const std::string& data, const std::string& content_type
= "application/x-www-form-urlencoded"); | |
| | | | |
| // Parse a multipart/form-data header | | // Parse a multipart/form-data header | |
| MultipartHeader | | MultipartHeader | |
| parseHeader(const std::string& data); | | parseHeader(const std::string& data); | |
| | | | |
| // Parse a (name=value) form entry | | // Parse a (name=value) form entry | |
| void | | void | |
| parsePair(const std::string& data); | | parsePair(const std::string& data); | |
| | | | |
| // Parse a MIME entry for ENCTYPE="" | | // Parse a MIME entry for ENCTYPE="" | |
| | | | |
End of changes. 2 change blocks. |
| 2 lines changed or deleted | | 2 lines changed or added | |
|
| HTTPCookie.h | | HTTPCookie.h | |
| | | | |
| skipping to change at line 164 | | skipping to change at line 164 | |
| operator< (const HTTPCookie& cookie) const | | operator< (const HTTPCookie& cookie) const | |
| { return false; } | | { return false; } | |
| #endif | | #endif | |
| //@} | | //@} | |
| | | | |
| // ============================================================ | | // ============================================================ | |
| | | | |
| /*! \name Accessor Methods */ | | /*! \name Accessor Methods */ | |
| //@{ | | //@{ | |
| | | | |
|
| | | /*! | |
| | | * \brief Mark this cookie as secure or unsecure. | |
| | | * | |
| | | */ | |
| | | inline void | |
| | | remove() | |
| | | { fRemoved = true; } | |
| | | | |
| | | /*! | |
| | | * \brief Mark this cookie as secure or unsecure. | |
| | | * | |
| | | * \param removed Set removed status | |
| | | */ | |
| | | inline void | |
| | | setRemoved(bool removed) | |
| | | { fRemoved = removed; } | |
| | | /*! | |
| | | * \brief Determine if this is a removed cookie. | |
| | | * | |
| | | * \return True if this cookie is removed, false if not. | |
| | | */ | |
| | | inline bool | |
| | | isRemoved() const | |
| | | { return fRemoved; } | |
| | | /*! | |
| | | * \brief Create a new partially-spefified HTTPCookie for deletion | |
| | | * | |
| | | * | |
| | | * \param name The name of the cookie. | |
| | | * \param domain The domain for which this cookie is valid- an empty st | |
| | | ring | |
| | | * will use the hostname of the server which generated the cookie respo | |
| | | nse. | |
| | | * If specified, the domain <em>must</em> start with a period('.'). | |
| | | * \param path The subset of URLS in a domain for which the cookie is | |
| | | * valid, for example \c / | |
| | | * @param secure Specifies whether this is a secure cookie. | |
| | | */ | |
| | | HTTPCookie(const std::string& name, | |
| | | const std::string& domain, | |
| | | const std::string& path, | |
| | | bool secure); | |
| | | | |
| /*! | | /*! | |
| * \brief Get the name of this cookie. | | * \brief Get the name of this cookie. | |
| * | | * | |
| * \return The name of this cookie. | | * \return The name of this cookie. | |
| */ | | */ | |
| inline std::string | | inline std::string | |
| getName() const | | getName() const | |
| { return fName; } | | { return fName; } | |
| | | | |
| /*! | | /*! | |
| | | | |
| skipping to change at line 323 | | skipping to change at line 364 | |
| //@} | | //@} | |
| | | | |
| private: | | private: | |
| std::string fName; | | std::string fName; | |
| std::string fValue; | | std::string fValue; | |
| std::string fComment; | | std::string fComment; | |
| std::string fDomain; | | std::string fDomain; | |
| unsigned long fMaxAge; | | unsigned long fMaxAge; | |
| std::string fPath; | | std::string fPath; | |
| bool fSecure; | | bool fSecure; | |
|
| | | bool fRemoved; | |
| }; | | }; | |
| | | | |
| } // namespace cgicc | | } // namespace cgicc | |
| | | | |
| #endif /* ! _HTTPCOOKIE_H_ */ | | #endif /* ! _HTTPCOOKIE_H_ */ | |
| | | | |
End of changes. 2 change blocks. |
| 0 lines changed or deleted | | 44 lines changed or added | |
|
| HTTPRedirectHeader.h | | HTTPRedirectHeader.h | |
| | | | |
| skipping to change at line 63 | | skipping to change at line 63 | |
| | | | |
| /*! \name Constructor and Destructor */ | | /*! \name Constructor and Destructor */ | |
| //@{ | | //@{ | |
| | | | |
| /*! | | /*! | |
| * \brief Create a new redirection header. | | * \brief Create a new redirection header. | |
| * \param url The redirection URL. | | * \param url The redirection URL. | |
| */ | | */ | |
| HTTPRedirectHeader(const std::string& url); | | HTTPRedirectHeader(const std::string& url); | |
| | | | |
|
| | | /*! | |
| | | * \brief Create a new redirection header with redirect status. | |
| | | * \param url The redirection URL. | |
| | | * \param permanent The status permanent or temporary | |
| | | */ | |
| | | HTTPRedirectHeader(const std::string& url,bool permanent); | |
| /*! | | /*! | |
| * \brief Destructor | | * \brief Destructor | |
| * | | * | |
| */ | | */ | |
| virtual ~HTTPRedirectHeader(); | | virtual ~HTTPRedirectHeader(); | |
| //@} | | //@} | |
| | | | |
| // ============================================================ | | // ============================================================ | |
| | | | |
| /*! \name Inherited Methods */ | | /*! \name Inherited Methods */ | |
| //@{ | | //@{ | |
| virtual void | | virtual void | |
| render(std::ostream& out) const; | | render(std::ostream& out) const; | |
| //@} | | //@} | |
| | | | |
| private: | | private: | |
| HTTPRedirectHeader(); | | HTTPRedirectHeader(); | |
|
| | | int fStatus; | |
| }; | | }; | |
| | | | |
| } // namespace cgicc | | } // namespace cgicc | |
| | | | |
| #endif /* ! _HTTPREDIRECTHEADER_H_ */ | | #endif /* ! _HTTPREDIRECTHEADER_H_ */ | |
| | | | |
End of changes. 2 change blocks. |
| 0 lines changed or deleted | | 7 lines changed or added | |
|