Files
aqhomecontrol/aqhome/http/httprequest_p.h
2023-08-08 23:49:28 +02:00

63 lines
1.4 KiB
C

/****************************************************************************
* This file is part of the project AqHome.
* AqHome (c) by 2023 Martin Preuss, all rights reserved.
*
* The license for this file can be found in the file COPYING which you
* should have received along with this file.
****************************************************************************/
#ifndef AQH_HTTP_REQUEST_P_H
#define AQH_HTTP_REQUEST_P_H
#include "aqhome/http/httprequest.h"
typedef struct AQH_HTTP_REQUEST AQH_HTTP_REQUEST;
struct AQH_HTTP_REQUEST {
GWEN_TREE2_ELEMENT(AQH_HTTP_REQUEST)
GWEN_MSG_ENDPOINT *endpoint;
/* received stuff */
const GWEN_MSG *receivedMsg; /* don't free */
const char *command; /* don't free */
const char *protocol; /* don't free */
const char *urlPath; /* don't free */
GWEN_URL *url;
GWEN_STRINGLIST *urlPathMembers;
GWEN_DB_NODE *dbCommand; /* don't free */
GWEN_DB_NODE *dbHeader; /* don't free */
GWEN_DB_NODE *dbCookies; /* don't free */
uint32_t recvdBodySize;
const uint8_t *recvdBodyPtr;
/* derived stuff */
char *sessionId;
char *moduleName;
AQH_SESSION *session; /* don't free */
AQH_MODULE *module; /* don't free */
uint32_t modulePerms;
GWEN_DB_NODE *dbPostBody;
/* response stuff */
int responseCode;
char *responseText;
GWEN_MSG *responseMsg;
};
#endif