diff options
| -rw-r--r-- | mail/bogofilter-sqlite/Makefile | 6 | ||||
| -rw-r--r-- | mail/bogofilter-tc/Makefile | 6 | ||||
| -rw-r--r-- | mail/bogofilter/files/patch-SVNr6988-lexer | 113 |
3 files changed, 115 insertions, 10 deletions
diff --git a/mail/bogofilter-sqlite/Makefile b/mail/bogofilter-sqlite/Makefile index 509b3ed9b5a9..573888f320dd 100644 --- a/mail/bogofilter-sqlite/Makefile +++ b/mail/bogofilter-sqlite/Makefile @@ -1,9 +1,5 @@ -# New ports collection makefile for: bogofilter-sqlite -# Date created: 2005-05-24 -# Whom: Matthias Andree <matthias.andree@gmx.de> -# +# Created by: Matthias Andree <mandree@FreeBSD.org> # $FreeBSD$ -# PORTNAME= bogofilter PORTREVISION= 0 diff --git a/mail/bogofilter-tc/Makefile b/mail/bogofilter-tc/Makefile index d9fa8a90dec7..b8c3060b6328 100644 --- a/mail/bogofilter-tc/Makefile +++ b/mail/bogofilter-tc/Makefile @@ -1,9 +1,5 @@ -# New ports collection makefile for: bogofilter-tc -# Date created: 2008-08-29 -# Whom: Zach Thompson <hideo@lastamericanempire.com> -# +# Created by: Zach Thompson <hideo@lastamericanempire.com> # $FreeBSD$ -# PORTNAME= bogofilter PORTREVISION= 0 diff --git a/mail/bogofilter/files/patch-SVNr6988-lexer b/mail/bogofilter/files/patch-SVNr6988-lexer new file mode 100644 index 000000000000..b86996bdcd9e --- /dev/null +++ b/mail/bogofilter/files/patch-SVNr6988-lexer @@ -0,0 +1,113 @@ +| Upstream SVN revision 6988, without "NEWS": +| +Index: src/msgcounts.c +=================================================================== +--- src/msgcounts.c (Revision 6987) ++++ src/msgcounts.c (Revision 6988) +@@ -85,3 +85,9 @@ + + msg_count_header_len= strlen(msg_count_header); + } ++ ++long msg_count_get_token(byte **output) ++{ ++ *output = (byte *)msg_count_text; ++ return msg_count_leng; ++} +Index: src/msgcounts.h +=================================================================== +--- src/msgcounts.h (Revision 6987) ++++ src/msgcounts.h (Revision 6988) +@@ -30,4 +30,6 @@ + void set_msg_counts(u_int32_t good, u_int32_t spam); + void set_msg_counts_from_str(char *str); + ++long msg_count_get_token(byte **output); ++ + #endif /* MSGCOUNTS_H */ +Index: src/lexer_v3.l +=================================================================== +--- src/lexer_v3.l (Revision 6987) ++++ src/lexer_v3.l (Revision 6988) +@@ -241,7 +241,7 @@ + <INITIAL>^Content-(Transfer-Encoding|Type|Disposition):{MTYPE} { mime_content(yy_text()); skip_to(':'); header(); return TOKEN; } + + <INITIAL>^Message-ID:.* { /* save token for logging */ +- int off = 11; ++ unsigned long off = 11; + while(isspace((unsigned char)yytext[off]) && off < yyleng) + off++; + set_msg_id((unsigned char *)(yytext+off), yyleng-off); +@@ -470,6 +470,12 @@ + #endif + } + ++long lexer_v3_get_token(byte **output) ++{ ++ *output = (byte *)yytext; ++ return yyleng; ++} ++ + /* + * The following sets edit modes for GNU EMACS + * Local Variables: +Index: src/token.c +=================================================================== +--- src/token.c (Revision 6987) ++++ src/token.c (Revision 6988) +@@ -205,8 +205,7 @@ + + cls = (*lexer->yylex)(); + +- token->leng = (uint) *lexer->yyleng; +- token->u.text = (byte *) *lexer->yytext; ++ token->leng = lexer->get_parser_token(&token->u.text); + Z(token->u.text[token->leng]); /* for easier debugging - removable */ + + leng = token->leng; +Index: src/lexer.c +=================================================================== +--- src/lexer.c (Revision 6987) ++++ src/lexer.c (Revision 6988) +@@ -43,14 +43,12 @@ + + static lexer_t v3_lexer = { + yylex, +- &yytext, +- &yyleng ++ lexer_v3_get_token + }; + + lexer_t msg_count_lexer = { + read_msg_count_line, +- &msg_count_text, +- &msg_count_leng ++ msg_count_get_token + }; + + /* Function Prototypes */ +Index: src/lexer.h +=================================================================== +--- src/lexer.h (Revision 6987) ++++ src/lexer.h (Revision 6988) +@@ -47,8 +47,7 @@ + + typedef struct lexer_s { + yylex_t *yylex; +- char **yytext; +- int *yyleng; /* DO NOT EVEN CONSIDER MAKING THIS SIZE_T! */ ++ long (*get_parser_token)(byte **data); + } lexer_t; + + extern lexer_t *lexer; +@@ -56,9 +55,8 @@ + + /* in lexer_v3.l */ + extern token_t yylex(void); +-extern int yyleng; +-extern char * yytext; + extern void lexer_v3_init(FILE *fp); ++extern long lexer_v3_get_token(byte **output); + + /* in lexer_v?.c */ + extern char yy_get_state(void); |
