Annotation of parser3/src/include/pa_sapi.h, revision 1.22.2.8.2.5
1.1 paf 1: /** @file
2: Parser: web server api interface object decl.
3:
1.22.2.4 paf 4: Copyright (c) 2001-2003 ArtLebedev Group (http://www.artlebedev.com)
1.18 paf 5: Author: Alexandr Petrosian <paf@design.ru> (http://paf.design.ru)
1.1 paf 6: */
7:
8: #ifndef PA_SAPI_H
9: #define PA_SAPI_H
1.20 paf 10:
1.22.2.8.2.5! paf 11: static const char* IDENT_SAPI_H="$Date: 2003/03/24 09:39:55 $";
1.22.2.2 paf 12:
13: // includes
1.1 paf 14:
1.22.2.8.2.1 paf 15:
1.1 paf 16: #include "pa_types.h"
1.22.2.6 paf 17: #include "pa_array.h"
1.22.2.2 paf 18:
19: // forwards
1.22.2.1 paf 20: class SAPI_Info;
1.5 paf 21:
1.4 paf 22: /// target web-Server API
1.1 paf 23: struct SAPI {
1.5 paf 24: /// log error message
1.22.2.4 paf 25: static void log(SAPI_Info& info, const char* fmt, ...);
1.22.2.8 paf 26: /// log error message & exit
1.22.2.4 paf 27: static void die(const char* fmt, ...);
1.22.2.8 paf 28: /// log error message & abort[write core]
29: static void abort(const char* fmt, ...);
1.19 paf 30: /// environment strings
1.22.2.8.2.5! paf 31: static const char* const* environment(SAPI_Info& info);
1.12 parser 32: /// get environment string
1.22.2.8.2.1 paf 33: static char* get_env(SAPI_Info& info, const char* name);
1.1 paf 34: /// read POST request bytes
1.22.2.1 paf 35: static size_t read_post(SAPI_Info& info, char *buf, size_t max_bytes);
1.12 parser 36: /// add response header attribute [but do not send it to client]
1.22.2.5 paf 37: static void add_header_attribute(SAPI_Info& info,
38: const char* dont_store_key, const char* dont_store_value);
1.12 parser 39: /// send collected header attributes to client
1.22.2.1 paf 40: static void send_header(SAPI_Info& info);
1.1 paf 41: /// output body bytes
1.22.2.1 paf 42: static void send_body(SAPI_Info& info, const void *buf, size_t size);
1.1 paf 43: };
44:
45: #endif
E-mail: