Indent plus Doxygen in webserver.

This commit is contained in:
Marcelo Roberto Jimenez
2010-10-20 01:28:37 -02:00
parent 113ebd1f91
commit d84c6a7e9f
2 changed files with 1361 additions and 1621 deletions

File diff suppressed because it is too large Load Diff

View File

@@ -1,33 +1,33 @@
/////////////////////////////////////////////////////////////////////////// /**************************************************************************
// *
// Copyright (c) 2000-2003 Intel Corporation * Copyright (c) 2000-2003 Intel Corporation
// All rights reserved. * All rights reserved.
// *
// Redistribution and use in source and binary forms, with or without * Redistribution and use in source and binary forms, with or without
// modification, are permitted provided that the following conditions are met: * modification, are permitted provided that the following conditions are met:
// *
// * Redistributions of source code must retain the above copyright notice, * - Redistributions of source code must retain the above copyright notice,
// this list of conditions and the following disclaimer. * this list of conditions and the following disclaimer.
// * Redistributions in binary form must reproduce the above copyright notice, * - Redistributions in binary form must reproduce the above copyright notice,
// this list of conditions and the following disclaimer in the documentation * this list of conditions and the following disclaimer in the documentation
// and/or other materials provided with the distribution. * and/or other materials provided with the distribution.
// * Neither name of Intel Corporation nor the names of its contributors * - Neither name of Intel Corporation nor the names of its contributors
// may be used to endorse or promote products derived from this software * may be used to endorse or promote products derived from this software
// without specific prior written permission. * without specific prior written permission.
// *
// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
// "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
// LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
// A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL INTEL OR * A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL INTEL OR
// CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, * CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL,
// EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, * EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO,
// PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR * PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR
// PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY
// OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING * OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING
// NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS * NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS
// SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
// *
/////////////////////////////////////////////////////////////////////////// **************************************************************************/
#ifndef GENLIB_NET_HTTP_WEBSERVER_H #ifndef GENLIB_NET_HTTP_WEBSERVER_H
#define GENLIB_NET_HTTP_WEBSERVER_H #define GENLIB_NET_HTTP_WEBSERVER_H
@@ -50,98 +50,83 @@ struct SendInstruction
char RangeHeader[200]; char RangeHeader[200];
char AcceptLanguageHeader[200]; char AcceptLanguageHeader[200];
off_t RangeOffset; off_t RangeOffset;
off_t ReadSendSize; // Read from local source and send on the network. /*! Read from local source and send on the network. */
long RecvWriteSize; // Recv from the network and write into local file. off_t ReadSendSize;
/*! Recv from the network and write into local file. */
//Later few more member could be added depending on the requirement. long RecvWriteSize;
/* Later few more member could be added depending
* on the requirement.*/
}; };
/************************************************************************
* Function: web_server_init /*!
* \brief Initilialize the different documents. Initialize the memory
* for root directory for web server. Call to initialize global XML
* document. Sets bWebServerState to WEB_SERVER_ENABLED.
* *
* Parameters: * \note alias_content is not freed here
* none
* *
* Description: Initilialize the different documents. Initialize the * \return
* memory for root directory for web server. Call to initialize global * \li \c 0 - OK
* XML document. Sets bWebServerState to WEB_SERVER_ENABLED * \li \c UPNP_E_OUTOF_MEMORY
* */
* Returns:
* 0 - OK
* UPNP_E_OUTOF_MEMORY: note: alias_content is not freed here
************************************************************************/
int web_server_init(void); int web_server_init(void);
/************************************************************************
* Function: web_server_destroy /*!
* * \brief Release memory allocated for the global web server root
* Parameters: * directory and the global XML document. Resets the flag bWebServerState
* none * to WEB_SERVER_DISABLED.
* */
* Description: Release memory allocated for the global web server root
* directory and the global XML document
* Resets the flag bWebServerState to WEB_SERVER_DISABLED
*
* Returns:
* void
************************************************************************/
void web_server_destroy(void); void web_server_destroy(void);
/************************************************************************
* Function: web_server_set_alias /*!
* \brief Replaces current alias with the given alias. To remove the current
* alias, set alias_name to NULL.
* *
* Parameters: * \note alias_content is not freed here
* alias_name: webserver name of alias; created by caller and freed by
* caller (doesn't even have to be malloc()d .)
* alias_content: the xml doc; this is allocated by the caller; and
* freed by the web server
* alias_content_length: length of alias body in bytes
* last_modified: time when the contents of alias were last
* changed (local time)
* *
* Description: Replaces current alias with the given alias. To remove * \return
* the current alias, set alias_name to NULL. * \li \c 0 - OK
* * \li \c UPNP_E_OUTOF_MEMORY
* Returns: */
* 0 - OK
* UPNP_E_OUTOF_MEMORY: note: alias_content is not freed here
************************************************************************/
int web_server_set_alias( int web_server_set_alias(
IN const char* alias_name, /*! [in] Webserver name of alias; created by caller and freed by caller
IN const char* alias_content, IN size_t alias_content_length, * (doesn't even have to be malloc()d. */
IN time_t last_modified); const char* alias_name,
/*! [in] The xml doc; this is allocated by the caller; and freed by
* the web server. */
const char* alias_content,
/*! [in] Length of alias body in bytes. */
size_t alias_content_length,
/*! [in] Time when the contents of alias were last changed (local time). */
time_t last_modified);
/************************************************************************
* Function: web_server_set_root_dir
*
* Parameters:
* IN const char* root_dir ; String having the root directory for the
* document
*
* Description: Assign the path specfied by the IN const char* root_dir
* parameter to the global Document root directory. Also check for
* path names ending in '/'
*
* Returns:
* int
************************************************************************/
int web_server_set_root_dir(IN const char* root_dir);
/************************************************************************ /*!
* Function: web_server_callback * \brief Assign the path specfied by the input const char* root_dir parameter
* to the global Document root directory. Also check for path names ending
* in '/'.
* *
* Parameters: * \return Integer.
* IN http_parser_t *parser, */
* INOUT http_message_t* req, int web_server_set_root_dir(
* IN SOCKINFO *info /*! [in] String having the root directory for the document. */
* const char* root_dir);
* Description: main entry point into web server;
* handles HTTP GET and HEAD requests
* /*!
* Returns: * \brief Main entry point into web server; Handles HTTP GET and HEAD
* void * requests.
************************************************************************/ */
void web_server_callback(IN http_parser_t *parser, IN http_message_t *req, INOUT SOCKINFO *info); void web_server_callback(
/*! [in] . */
http_parser_t *parser,
/*! [in] . */
http_message_t *req,
/*! [in,out] . */
SOCKINFO *info);
#ifdef __cplusplus #ifdef __cplusplus