Sun, 13 Nov 2011 13:43:01 +0100
Added some protocol functions
/* * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS HEADER. * * Copyright 2011 Olaf Wintermann. All rights reserved. * * Redistribution and use in source and binary forms, with or without * modification, are permitted provided that the following conditions are met: * * 1. Redistributions of source code must retain the above copyright * notice, this list of conditions and the following disclaimer. * * 2. Redistributions in binary form must reproduce the above copyright * notice, this list of conditions and the following disclaimer in the * documentation and/or other materials provided with the distribution. * * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" * AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE * ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE * LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR * CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF * SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS * INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN * CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) * ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE * POSSIBILITY OF SUCH DAMAGE. */ #include "nsapi.h" #include <stdio.h> #include <stdlib.h> #include "httplistener.h" #include "conf.h" #include "vserver.h" VirtualServer *default_vs; void load_init_conf(char *file) { printf("load_init_conf\n"); } void load_server_conf(char *file) { printf("load_server_conf\n"); ListenerConfig *conf = malloc(sizeof(ListenerConfig)); conf->port = 8080; conf->nacceptors = 1; conf->name = "default"; http_listener_new(conf); // virtual server default_vs = vs_new(); default_vs->objset = create_test_objset(); default_vs->default_obj_name = "default"; // begin objset test /* httpd_objset *objset = default_vs->objset; for(int i=0;i<objset->pos;i++) { httpd_object *obj = objset->obj[i]; printf("<object [%s]>\n", obj->name); for(int j=0;j<obj->nd;j++) { dtable *dt; switch(j) { case NSAPIAuthTrans: { printf(" Get AuthTrans Directives\n"); dt = object_get_dtable(obj, NSAPIAuthTrans); break; } case NSAPINameTrans: { printf(" Get NameTrans Directives\n"); dt = object_get_dtable(obj, NSAPINameTrans); break; } case NSAPIPathCheck: { printf(" Get PathCheck Directives\n"); dt = object_get_dtable(obj, NSAPIPathCheck); break; } case NSAPIService: { printf(" Get Service Directives\n"); dt = object_get_dtable(obj, NSAPIService); break; } default: { printf("j: %d\n", j); dt = object_get_dtable(obj, j); break; } } if(dt != NULL) { printf(" dtable[%d].length = %d\n", dt, dt->ndir); } else { continue; } for(int k=0;k<dt->ndir;k++) { directive *d = dt->directive[k]; if(d == NULL) { printf("d is null\n"); } else { printf(" Directive[%d].name = %s\n", d, d->func->name); } } } } */ // end objset test } VirtualServer* conf_get_default_vs() { return default_vs; }