aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--mailutils/sendmail.c8
1 files changed, 7 insertions, 1 deletions
diff --git a/mailutils/sendmail.c b/mailutils/sendmail.c
index defbd9552..4ca91fad8 100644
--- a/mailutils/sendmail.c
+++ b/mailutils/sendmail.c
@@ -150,7 +150,13 @@ static char *sane_address(char *str)
150 trim(str); 150 trim(str);
151 s = str; 151 s = str;
152 while (*s) { 152 while (*s) {
153 if (!isalnum(*s) && !strchr("+_-.@", *s)) { 153 /* Standard allows these chars in username without quoting:
154 * /!#$%&'*+-=?^_`{|}~
155 * and allows dot (.) with some restrictions.
156 * I chose to only allow a saner subset.
157 * I propose to expand it only on user's request.
158 */
159 if (!isalnum(*s) && !strchr("=+_-.@", *s)) {
154 bb_error_msg("bad address '%s'", str); 160 bb_error_msg("bad address '%s'", str);
155 /* returning "": */ 161 /* returning "": */
156 str[0] = '\0'; 162 str[0] = '\0';