X-Git-Url: http://www.dolda2000.com/gitweb/?a=blobdiff_plain;f=src%2Fdirplex%2Fdirplex.h;h=77caa649d37bb1944fdc0001811a9750705d504a;hb=a0b6c27cdb8e49868ec70fb276b3eb963c5852dd;hp=34402e32ffe036e8c450e25106cf9836384d6c04;hpb=300d73d9ee0fe2fb09643a2a146711f1a8d7edd3;p=ashd.git diff --git a/src/dirplex/dirplex.h b/src/dirplex/dirplex.h index 34402e3..77caa64 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; @@ -17,6 +19,7 @@ struct config { struct pattern *patterns; char **index; char *capture; + int caproot; }; struct rule { @@ -24,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; @@ -37,9 +46,11 @@ struct config *readconfig(char *file); struct config *getconfig(char *path); struct config **getconfigs(char *file); struct child *findchild(char *file, char *name, struct config **cf); -struct pattern *findmatch(char *file, int trydefault, int dir); +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