src/server/object.c

changeset 6
ce8fecc9847d
parent 5
dbc01588686e
child 12
34aa8001ea53
equal deleted inserted replaced
5:dbc01588686e 6:ce8fecc9847d
28 28
29 #include "nsapi.h" 29 #include "nsapi.h"
30 30
31 #include "object.h" 31 #include "object.h"
32 32
33 #include "pool.h"
33 #include "func.h" 34 #include "func.h"
34 35
35 36
36 37
37 httpd_object* object_new(char *name) { 38 httpd_object* object_new(char *name) {
62 l->dirs[l->ndir] = dir; 63 l->dirs[l->ndir] = dir;
63 l->ndir++; 64 l->ndir++;
64 } 65 }
65 66
66 67
68 /* objset functions */
69 httpd_objset* objset_create(pool_handle_t *pool) {
70 httpd_objset *os = pool_malloc(pool, sizeof(httpd_objset));
71
72 os->obj = pool_calloc(pool, 2, sizeof(void*));
73 os->pos = 0;
74
75 return os;
76 }
77
78 void objset_add_object(pool_handle_t *p, httpd_objset *os, httpd_object *obj) {
79 if(os->pos != 0 && os->pos % 2 == 0) {
80 os->obj = pool_realloc(p, os->obj, (os->pos + 2) * sizeof(void*));
81 }
82 os->obj[os->pos] = obj;
83 os->pos++;
84 }
85
86
67 87
68 88
69 httpd_objset* create_test_objset() { 89 httpd_objset* create_test_objset() {
70 httpd_objset *objset = malloc(sizeof(httpd_objset)); 90 httpd_objset *objset = malloc(sizeof(httpd_objset));
71 objset->obj = calloc(1, sizeof(httpd_object*)); 91 objset->obj = calloc(1, sizeof(httpd_object*));
91 void httpobjconf_add_object(HTTPObjectConfig *conf, httpd_object *obj) { 111 void httpobjconf_add_object(HTTPObjectConfig *conf, httpd_object *obj) {
92 conf->nobj++; 112 conf->nobj++;
93 conf->objects = realloc(conf->objects, conf->nobj * sizeof(void*)); 113 conf->objects = realloc(conf->objects, conf->nobj * sizeof(void*));
94 conf->objects[conf->nobj - 1] = obj; 114 conf->objects[conf->nobj - 1] = obj;
95 } 115 }
116
117
118 void nsapi_context_next_stage(NSAPIContext *context) {
119 context->dtable_index = 0;
120 context->objset_index = -1;
121 context->last_req_code = REQ_NOACTION;
122 }

mercurial