--- parser3/src/include/pa_globals.h 2001/03/19 17:42:12 1.15 +++ parser3/src/include/pa_globals.h 2001/03/28 14:07:15 1.29 @@ -5,24 +5,32 @@ Author: Alexander Petrosyan (http://design.ru/paf) - $Id: pa_globals.h,v 1.15 2001/03/19 17:42:12 paf Exp $ + $Id: pa_globals.h,v 1.29 2001/03/28 14:07:15 paf Exp $ */ #ifndef PA_GLOBALS_H #define PA_GLOBALS_H -#include "pa_string.h" -#include "pa_hash.h" +#include "pa_pool.h" + +class String; +class Hash; +class Table; //@{ /// constant string. class name, predefined method & co #define AUTO_FILE_NAME "auto.p" +#define HTML_TYPO_NAME "html-typo" + #define CONTENT_TYPE_NAME "content-type" #define BODY_NAME "body" #define VALUE_NAME "value" #define EXPIRES_NAME "expires" #define PATH_NAME "path" +#define NAME_NAME "name" +#define SIZE_NAME "size" +#define TEXT_NAME "text" #define EXCEPTION_METHOD_NAME "exception" @@ -34,46 +42,40 @@ #define ROOT_CLASS_NAME "ROOT" #define MAIN_CLASS_NAME "MAIN" #define TABLE_CLASS_NAME "table" +#define FILE_CLASS_NAME "file" #define ENV_CLASS_NAME "env" #define FORM_CLASS_NAME "form" #define REQUEST_CLASS_NAME "request" #define RESPONSE_CLASS_NAME "response" #define COOKIE_CLASS_NAME "cookie" -#define LIMITS_NAME "limits" +#define LIMITS_NAME "LIMITS" #define POST_MAX_SIZE_NAME "post_max_size" -#define DEFAULTS_NAME "defaults" +#define DEFAULTS_NAME "DEFAULTS" +#define MIME_TYPES_NAME "MIME_TYPES" +#define VFILE_MIME_TYPE_NAME "mime-type" + #define RESULT_VAR_NAME "result" //@} -/// target-specific service functions -struct Service_funcs { - /// read POST request bytes - int (*read_post)(char *buf, int max_bytes); - /// output response header attribute - void (*output_header_attribute)(const char *key, const char *value); - /// output body bytes - void (*output_body)(const char *buf, size_t size); -}; - - /// core func -void globals_init(Pool& pool); +void pa_globals_init(Pool& pool); /// hex_value[c] = hex value of c extern short hex_value[0x100]; -/// target-specific service functions -extern Service_funcs service_funcs; - //@{ /// global string +extern String *html_typo_name; extern String *content_type_name; extern String *body_name; extern String *value_name; extern String *expires_name; extern String *path_name; +extern String *name_name; +extern String *size_name; +extern String *text_name; extern String *exception_method_name; @@ -87,6 +89,7 @@ extern String *root_class_name; extern String *main_class_name; extern String *env_class_name; extern String *table_class_name; +extern String *file_class_name; extern String *form_class_name; extern String *request_class_name; extern String *response_class_name; @@ -96,6 +99,8 @@ extern String *limits_name; extern String *post_max_size_name; extern String *defaults_name; +extern String *mime_types_name; +extern String *vfile_mime_type_name; extern String *result_var_name; //@} @@ -103,4 +108,7 @@ extern String *result_var_name; /// global hash extern Hash *untaint_lang_name2enum; +/// global table +extern Table *default_typo_table; + #endif