X-Git-Url: http://www.dolda2000.com/gitweb/?a=blobdiff_plain;f=src%2Fdirplex%2Fdirplex.h;h=ffe12a634901bce24ce26529f89822788dc5ef36;hb=bcad6b0c48d516ddc920b52f06083ceaa242e1ca;hp=14b704c4a1bf813bd85b5ed14e5e8e6000d608a1;hpb=600a1ce79471493f8cad5fcf118dc9797331d5aa;p=ashd.git diff --git a/src/dirplex/dirplex.h b/src/dirplex/dirplex.h index 14b704c..ffe12a6 100644 --- a/src/dirplex/dirplex.h +++ b/src/dirplex/dirplex.h @@ -5,9 +5,11 @@ #define PAT_PATHNAME 1 #define PAT_ALL 2 #define PAT_DEFAULT 3 +#define PAT_LOCAL 4 #define PT_FILE 0 #define PT_DIR 1 +#define PT_NOTFOUND 2 struct config { struct config *next, *prev; @@ -16,6 +18,8 @@ struct config { struct child *children; struct pattern *patterns; char **index; + char *capture, *reparse; + int caproot, parsecomb; }; struct rule { @@ -23,9 +27,15 @@ struct rule { char **patterns; }; +struct headmod { + struct headmod *next; + char *name, *value; +}; + struct pattern { struct pattern *next; int type; + struct headmod *headers; char *childnm; char **fchild; struct rule **rules; @@ -35,10 +45,12 @@ struct child *getchild(struct config *cf, char *name); struct config *readconfig(char *file); struct config *getconfig(char *path); struct config **getconfigs(char *file); -struct child *findchild(char *file, char *name); -struct pattern *findmatch(char *file, int trydefault, int dir); +struct child *findchild(char *file, char *name, struct config **cf); +struct pattern *findmatch(char *file, int trydefault, int type); +void modheaders(struct hthead *req, struct pattern *pat); extern time_t now; +extern struct child *notfound; extern struct config *gconfig, *lconfig; #endif