From c9d7c47d2f40f0413eab025a862e4c459dd14342 Mon Sep 17 00:00:00 2001 From: Mark Wooding Date: Tue, 7 Mar 2006 12:38:38 +0000 Subject: [PATCH] addrcheck: Strip off the domain part before passing to userv service. --- addrcheck.c | 8 ++++++-- 1 file changed, 6 insertions(+), 2 deletions(-) diff --git a/addrcheck.c b/addrcheck.c index b463bd8..496c5dd 100644 --- a/addrcheck.c +++ b/addrcheck.c @@ -259,6 +259,7 @@ int addrcheck(int cdb, const char *addr, const char *sender, int *rc) int at, len, dot; int err = 0; uint32 dlen; + static stralloc l = STRALLOC_INIT; len = str_len(addr); at = str_chr(addr, '@'); @@ -278,8 +279,11 @@ int addrcheck(int cdb, const char *addr, const char *sender, int *rc) return (-1); if (!err) { *rc = 1; return (0); } if (dlen != 0) { errno = EINVAL; return (-1); } - - return (local(cdb, addr, at, sender, rc)); + l.len = 0; + if (!stralloc_catb(&l, addr, at) || + !stralloc_0(&l)) + return (-1); + return (local(cdb, l.s, l.len - 1, sender, rc)); } #ifdef TEST -- 2.11.0