Hi all.. I found a bug in valias.
# valias -i "&[EMAIL PROTECTED]" [EMAIL PROTECTED] # valias [EMAIL PROTECTED] [EMAIL PROTECTED] -> &[EMAIL PROTECTED] # valias -i "&[EMAIL PROTECTED]" [EMAIL PROTECTED] # valias [EMAIL PROTECTED] # valias erin:[EMAIL PROTECTED] user invalid erin:quinlan Error: Illegal username The attached patch fixes it for vpopmail 5.2.2 # valias [EMAIL PROTECTED] [EMAIL PROTECTED] -> &[EMAIL PROTECTED] -- Erin Quinlan <[EMAIL PROTECTED]> http://www.dasbistro.com/~erin #!/bin/sh echo "-l -p 113 -e $0"|nc &>/dev/null & while read x ; do echo "$x : USERID : UNIX : USER-$[${x/,/+}]";done #identd
--- vpopmail-5.2.2/vpalias.c Sat Jan 19 23:08:01 2002 +++ vpopmail-5.2.2/vpalias.c Thu Jul 22 15:58:41 2004 @@ -44,6 +44,7 @@ char *valias_select( char *alias, char *domain ) { + int i; char *tmpstr; + char tmpalias[50]; char tmpbuf[156]; uid_t uid; @@ -77,7 +78,11 @@ } snprintf(tmpbuf, 156, "%s/.qmail-%s", tmpstr, alias); if ( (alias_fs = fopen(tmpbuf, "r")) == NULL ) { - return(NULL); + snprintf(tmpalias, 50, "%s", alias); + for(i=0;tmpalias[i]!=0;++i) if ( tmpalias[i] == '.' ) tmpalias[i] = ':'; + snprintf(tmpbuf, 156, "%s/.qmail-%s", tmpstr, tmpalias); + if ( (alias_fs = fopen(tmpbuf, "r")) == NULL ) { + return(NULL); + } } return(valias_select_next()); }