OSDN Git Service

* change writting.
[modchxj/mod_chxj.git] / include / chxj_cookie.h
1 /*
2  * Copyright (C) 2005 QSDN,Inc. All rights reserved.
3  * Copyright (C) 2005 Atsushi Konno All rights reserved.
4  *
5  * Licensed under the Apache License, Version 2.0 (the "License");
6  * you may not use this file except in compliance with the License.
7  * You may obtain a copy of the License at
8  *
9  *     http://www.apache.org/licenses/LICENSE-2.0
10  *
11  * Unless required by applicable law or agreed to in writing, software
12  * distributed under the License is distributed on an "AS IS" BASIS,
13  * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
14  * See the License for the specific language governing permissions and
15  * limitations under the License.
16  */
17 #ifndef __CHXJ_COOKIE_H__
18 #define __CHXJ_COOKIE_H__
19
20 #include "mod_chxj.h"
21 #include "apr_file_io.h"
22 #include "apr_tables.h"
23
24 #define CHXJ_COOKIE_PARAM  "_chxj_cc"
25
26
27 typedef struct cookie_t cookie_t;
28
29
30 struct cookie_t {
31   char*               cookie_id;
32   apr_array_header_t* cookie_headers;
33 };
34
35 extern cookie_t* 
36 chxj_save_cookie(
37   request_rec *r);
38
39 extern char*     
40 chxj_add_cookie_parameter(
41   request_rec* r, 
42   char*        value, 
43   cookie_t*    cookie);
44
45 extern int       
46 chxj_cookie_check_host(
47   request_rec* r, 
48   char*        value);
49
50 extern cookie_t* chxj_load_cookie(request_rec* r, char* cookie_id);
51
52 extern apr_file_t* chxj_cookie_db_lock(request_rec* r);
53 extern void chxj_cookie_db_unlock(request_rec* r, apr_file_t* file);
54 extern void chxj_delete_cookie(request_rec* r, char* cookie_id);
55
56 #endif
57 /*
58  * vim:ts=2 et
59  */