tinyows 1.2.2
|
#include <stdlib.h>
#include <stdio.h>
#include <assert.h>
#include <string.h>
#include <ctype.h>
#include <libxml/xmlschemas.h>
#include <libxml/xmlschemastypes.h>
#include "ows.h"
#include "../ows_define.h"
Go to the source code of this file.
Functions | |
ows_request * | ows_request_init () |
void | ows_request_free (ows_request *or) |
static void | libxml2_callback (void *ctx, const char *msg,...) |
static xmlSchemaPtr | ows_generate_schema (const ows *o, buffer *xml_schema, bool schema_is_file) |
int | ows_schema_validation (ows *o, buffer *xml_schema, buffer *xml, bool schema_is_file, enum ows_schema_type schema_type) |
static ows_version * | ows_request_check_version (ows *o, ows_request *or, const array *cgi) |
void | ows_request_check (ows *o, ows_request *or, const array *cgi, const char *query) |
|
static |
Definition at line 104 of file ows_request.c.
References ows_log().
Referenced by ows_generate_schema(), and ows_schema_validation().
|
static |
Definition at line 121 of file ows_request.c.
References Buffer::buf, libxml2_callback(), and Buffer::use.
Referenced by ows_schema_validation().
void ows_request_check | ( | ows * | o, |
ows_request * | or, | ||
const array * | cgi, | ||
const char * | query ) |
Definition at line 263 of file ows_request.c.
References array_get(), array_is_key(), Buffer::buf, buffer_case_cmp(), buffer_cmp(), buffer_free(), buffer_from_str(), cgi_method_get(), cgi_method_post(), check_regexp(), Ows::check_schema, List::first, Ows_layer_list::first, Ows_layer_node::layer, Ows::layers, Ows::metadata, Ows_request::method, Ows_layer::name, List_node::next, Ows_layer_node::next, Ows_layer::ns_prefix, Ows_layer::ns_uri, ows_error(), OWS_ERROR_CONFIG_FILE, OWS_ERROR_INVALID_PARAMETER_VALUE, OWS_ERROR_MISSING_PARAMETER_VALUE, ows_layer_match_table(), OWS_METHOD_KVP, OWS_METHOD_XML, ows_request_check_version(), ows_schema_validation(), ows_version_get(), ows_version_init(), ows_version_set(), Ows::request, Ows_request::service, Ows_layer::srid, Ows_layer::title, Ows_meta::type, Buffer::use, List_node::value, Ows_request::version, WFS, wfs_generate_schema(), WFS_SCHEMA_TYPE_100, and WFS_SCHEMA_TYPE_110.
Referenced by main().
|
static |
Definition at line 209 of file ows_request.c.
References array_get(), Buffer::buf, buffer_cmp(), check_regexp(), List::first, list_explode(), list_free(), Ows_version::major, Ows_version::minor, List_node::next, ows_error(), OWS_ERROR_INVALID_PARAMETER_VALUE, ows_version_set(), Ows_version::release, Ows::request, List::size, Buffer::use, List_node::value, and Ows_request::version.
Referenced by ows_request_check().
void ows_request_free | ( | ows_request * | or | ) |
Definition at line 57 of file ows_request.c.
References OWS_SERVICE_UNKNOWN, ows_version_free(), Ows_request::request, Ows_request::service, Ows_request::version, WFS, Ows_request::wfs, and wfs_request_free().
Referenced by main(), and ows_free().
ows_request * ows_request_init | ( | ) |
Definition at line 39 of file ows_request.c.
References Ows_request::method, OWS_METHOD_UNKNOWN, OWS_SERVICE_UNKNOWN, Ows_request::request, Ows_request::service, Ows_request::version, and Ows_request::wfs.
Referenced by main().
int ows_schema_validation | ( | ows * | o, |
buffer * | xml_schema, | ||
buffer * | xml, | ||
bool | schema_is_file, | ||
enum ows_schema_type | schema_type ) |
Definition at line 154 of file ows_request.c.
References Buffer::buf, libxml2_callback(), ows_generate_schema(), ows_libxml_check_namespace(), Ows::schema_wfs_100, Ows::schema_wfs_110, Buffer::use, WFS_SCHEMA_TYPE_100, and WFS_SCHEMA_TYPE_110.
Referenced by fe_filter(), and ows_request_check().