X-Git-Url: http://www.dolda2000.com/gitweb/?p=ashd.git;a=blobdiff_plain;f=src%2Fpatplex.c;h=55063866e80b652ab6fc65dff905d0aff3df0122;hp=b03b626614c9c79f3440e5da00042ec885d45bd2;hb=8cc893f5a55ad27a6971524b41e99589576eade5;hpb=cd71c7f3b692849c5a1134310040dcdd8b87bbf8 diff --git a/src/patplex.c b/src/patplex.c index b03b626..5506386 100644 --- a/src/patplex.c +++ b/src/patplex.c @@ -249,13 +249,16 @@ static struct pattern *parsepattern(struct cfstate *s) if(pat->restpat != NULL) free(pat->restpat); pat->restpat = sstrdup(s->argv[1]); - } else if(!strcmp(s->argv[0], "set")) { + } else if(!strcmp(s->argv[0], "set") || !strcmp(s->argv[0], "xset")) { if(s->argc < 3) { - flog(LOG_WARNING, "%s:%i: missing header name or pattern for `set' directive", s->file, s->lno); + flog(LOG_WARNING, "%s:%i: missing header name or pattern for `%s' directive", s->file, s->lno, s->argv[0]); continue; } omalloc(head); - head->name = sstrdup(s->argv[1]); + if(!strcmp(s->argv[0], "xset")) + head->name = sprintf2("X-Ash-%s", s->argv[1]); + else + head->name = sstrdup(s->argv[1]); head->value = sstrdup(s->argv[2]); head->next = pat->headers; pat->headers = head;