* limitations under the License.
*/
-struct AFB_session;
+#pragma once
+
struct AFB_clientCtx;
+struct json_object;
struct afb_hreq {
const char *cacheTimeout;
struct MHD_Connection *connection;
- enum afb_method method;
+ int method;
const char *version;
const char *url;
size_t lenurl;
struct MHD_PostProcessor *postform;
struct AFB_clientCtx *context;
struct hreq_data *data;
+ struct json_object *json;
int upgrade;
};
extern struct afb_req afb_hreq_to_req(struct afb_hreq *hreq);
extern struct AFB_clientCtx *afb_hreq_context(struct afb_hreq *hreq);
+
+extern int afb_hreq_init_cookie(int port, const char *path, int maxage);
+
+extern void afb_hreq_reply_static(struct afb_hreq *hreq, unsigned status, size_t size, char *buffer, ...);
+
+extern void afb_hreq_reply_copy(struct afb_hreq *hreq, unsigned status, size_t size, char *buffer, ...);
+
+extern void afb_hreq_reply_free(struct afb_hreq *hreq, unsigned status, size_t size, char *buffer, ...);
+
+extern void afb_hreq_reply_empty(struct afb_hreq *hreq, unsigned status, ...);
+
+extern int afb_hreq_init_download_path(const char *directory);