Barracuda Application Server C/C++ Reference
NO
HttpRecData.h
1 /*
2  * ____ _________ __ _
3  * / __ \___ ____ _/ /_ __(_)___ ___ ___ / / ____ ____ _(_)____
4  * / /_/ / _ \/ __ `/ / / / / / __ `__ \/ _ \/ / / __ \/ __ `/ / ___/
5  * / _, _/ __/ /_/ / / / / / / / / / / / __/ /___/ /_/ / /_/ / / /__
6  * /_/ |_|\___/\__,_/_/ /_/ /_/_/ /_/ /_/\___/_____/\____/\__, /_/\___/
7  * /____/
8  *
9  * Barracuda Embedded Web-Server
10  ****************************************************************************
11  * HEADER
12  *
13  * $Id: HttpRecData.h 4915 2021-12-01 18:26:55Z wini $
14  *
15  * COPYRIGHT: Real Time Logic LLC, 2006-2008
16  *
17  * This software is copyrighted by and is the sole property of Real
18  * Time Logic LLC. All rights, title, ownership, or other interests in
19  * the software remain the property of Real Time Logic LLC. This
20  * software may only be used in accordance with the terms and
21  * conditions stipulated in the corresponding license agreement under
22  * which the software has been supplied. Any unauthorized use,
23  * duplication, transmission, distribution, or disclosure of this
24  * software is expressly forbidden.
25  *
26  * This Copyright notice may not be removed or modified without prior
27  * written consent of Real Time Logic LLC.
28  *
29  * Real Time Logic LLC. reserves the right to modify this software
30  * without notice.
31  *
32  * http://www.realtimelogic.com
33  ****************************************************************************
34  *
35  */
36 
37 #ifndef _HttpRecData_h
38 #define _HttpRecData_h
39 
40 
41 #include <HttpServer.h>
42 
77 typedef struct HttpRecData
78 {
79 #ifdef __cplusplus
80 
92  static SBaFileSize valid(HttpRequest* req);
93 
94 
99 
101  ~HttpRecData();
102 
110  S32 read(void* buf, S32 bufSize);
111 #endif
112  HttpRequest* req;
113  HttpConnection* con;
114  SBaFileSize sizeLeft;
115  SBaFileSize bufSize;
116  SBaFileSize readPos;
117  SBaFileSize chunkSize;
119 
120 #ifdef __cplusplus
121 extern "C" {
122 #endif
123 BA_API SBaFileSize HttpRecData_valid(HttpRequest* req);
124 BA_API void HttpRecData_constructor(HttpRecData* o, HttpRequest* req);
125 BA_API void HttpRecData_destructor(HttpRecData* o);
126 BA_API S32 HttpRecData_read(HttpRecData* o, void* buf, S32 bufSize);
127 #ifdef __cplusplus
128 }
129 inline SBaFileSize HttpRecData::valid(HttpRequest* req) {
130  return HttpRecData_valid(req);
131 }
133  HttpRecData_constructor(this, req);
134 }
135 inline S32 HttpRecData::read(void* buf, S32 bufSize) {
136  return HttpRecData_read(this, buf, bufSize);
137 }
139  HttpRecData_destructor(this);
140 }
141 #endif
142  /* end of HttpStack */
144 
145 #endif
HttpRequest
The HttpServer creates an HttpRequest object when the HttpServer parses a client request.
Definition: HttpServer.h:819
HttpRecData::read
S32 read(void *buf, S32 bufSize)
Read data from socket.
Definition: HttpRecData.h:135
HttpRecData::valid
static SBaFileSize valid(HttpRequest *req)
This method validates the client HTTP request.
Definition: HttpRecData.h:129
HttpConnection
Contains information about the physical socket connection.
Definition: HttpConnection.h:76
HttpRecData::HttpRecData
HttpRecData(HttpRequest *req)
The constructor is typically run by creating an object on the stack.
Definition: HttpRecData.h:132
HttpRecData
The HttpRecData class makes it easy to upload packets or large data chunks when using Barracuda in mu...
Definition: HttpRecData.h:78
HttpRecData::~HttpRecData
~HttpRecData()
Destructor.
Definition: HttpRecData.h:138
HttpRecData
struct HttpRecData HttpRecData
The HttpRecData class makes it easy to upload packets or large data chunks when using Barracuda in mu...