summaryrefslogtreecommitdiff
path: root/src/backend/tsearch/wparser_def.c
diff options
context:
space:
mode:
authorBruce Momjian <bruce@momjian.us>2010-03-13 00:41:58 +0000
committerBruce Momjian <bruce@momjian.us>2010-03-13 00:41:58 +0000
commit89b0095ebdfed9303c5a372f4717eae779cc4af6 (patch)
tree5c53edf002fd89ef78e5e3701806a21003254031 /src/backend/tsearch/wparser_def.c
parent66b82c20d9686f6da2d7125bda4fe8d9c6db8428 (diff)
downloadpostgresql-89b0095ebdfed9303c5a372f4717eae779cc4af6.tar.gz
Allow underscores in tsearch email addressses, per RFC 5322 and report
by Dan O'Hara. Patch by Teodor Sigaev
Diffstat (limited to 'src/backend/tsearch/wparser_def.c')
-rw-r--r--src/backend/tsearch/wparser_def.c6
1 files changed, 5 insertions, 1 deletions
diff --git a/src/backend/tsearch/wparser_def.c b/src/backend/tsearch/wparser_def.c
index 7d54f412e0..201a8d097a 100644
--- a/src/backend/tsearch/wparser_def.c
+++ b/src/backend/tsearch/wparser_def.c
@@ -7,7 +7,7 @@
*
*
* IDENTIFICATION
- * $PostgreSQL: pgsql/src/backend/tsearch/wparser_def.c,v 1.27 2010/01/02 16:57:53 momjian Exp $
+ * $PostgreSQL: pgsql/src/backend/tsearch/wparser_def.c,v 1.28 2010/03/13 00:41:58 momjian Exp $
*
*-------------------------------------------------------------------------
*/
@@ -1047,6 +1047,7 @@ static const TParserStateActionItem actionTPS_InAsciiWord[] = {
{p_iseqC, '.', A_PUSH, TPS_InFileNext, 0, NULL},
{p_iseqC, '-', A_PUSH, TPS_InHostFirstAN, 0, NULL},
{p_iseqC, '-', A_PUSH, TPS_InHyphenAsciiWordFirst, 0, NULL},
+ {p_iseqC, '_', A_PUSH, TPS_InHostFirstAN, 0, NULL},
{p_iseqC, '@', A_PUSH, TPS_InEmail, 0, NULL},
{p_iseqC, ':', A_PUSH, TPS_InProtocolFirst, 0, NULL},
{p_iseqC, '/', A_PUSH, TPS_InFileFirst, 0, NULL},
@@ -1375,6 +1376,7 @@ static const TParserStateActionItem actionTPS_InHostDomainSecond[] = {
{p_isasclet, 0, A_NEXT, TPS_InHostDomain, 0, NULL},
{p_isdigit, 0, A_PUSH, TPS_InHost, 0, NULL},
{p_iseqC, '-', A_PUSH, TPS_InHostFirstAN, 0, NULL},
+ {p_iseqC, '_', A_PUSH, TPS_InHostFirstAN, 0, NULL},
{p_iseqC, '.', A_PUSH, TPS_InHostFirstDomain, 0, NULL},
{p_iseqC, '@', A_PUSH, TPS_InEmail, 0, NULL},
{NULL, 0, A_POP, TPS_Null, 0, NULL}
@@ -1386,6 +1388,7 @@ static const TParserStateActionItem actionTPS_InHostDomain[] = {
{p_isdigit, 0, A_PUSH, TPS_InHost, 0, NULL},
{p_iseqC, ':', A_PUSH, TPS_InPortFirst, 0, NULL},
{p_iseqC, '-', A_PUSH, TPS_InHostFirstAN, 0, NULL},
+ {p_iseqC, '_', A_PUSH, TPS_InHostFirstAN, 0, NULL},
{p_iseqC, '.', A_PUSH, TPS_InHostFirstDomain, 0, NULL},
{p_iseqC, '@', A_PUSH, TPS_InEmail, 0, NULL},
{p_isdigit, 0, A_POP, TPS_Null, 0, NULL},
@@ -1422,6 +1425,7 @@ static const TParserStateActionItem actionTPS_InHost[] = {
{p_iseqC, '@', A_PUSH, TPS_InEmail, 0, NULL},
{p_iseqC, '.', A_PUSH, TPS_InHostFirstDomain, 0, NULL},
{p_iseqC, '-', A_PUSH, TPS_InHostFirstAN, 0, NULL},
+ {p_iseqC, '_', A_PUSH, TPS_InHostFirstAN, 0, NULL},
{NULL, 0, A_POP, TPS_Null, 0, NULL}
};