Fix full name support, thanks zandbelt (#1578)

git-svn-id: svn://svn.openwrt.org/openwrt/packages@6919 3c298f89-4303-0410-b956-a3cf2f4a3e73
This commit is contained in:
florian 2007-04-10 10:36:51 +00:00
parent eea03c07d5
commit 69cd8303d9
2 changed files with 35 additions and 1 deletions

View File

@ -10,7 +10,7 @@ include $(TOPDIR)/rules.mk
PKG_NAME:=mini-sendmail
PKG_VERSION:=1.3.5
PKG_RELEASE:=1
PKG_RELEASE:=2
PKG_SOURCE:=mini_sendmail-$(PKG_VERSION).tar.gz
PKG_SOURCE_URL:=http://www.acme.com/software/mini_sendmail/

View File

@ -0,0 +1,34 @@
--- mini_sendmail-1.3.5.org/mini_sendmail.c 2003-11-17 03:03:35.000000000 +0100
+++ mini_sendmail-1.3.5/mini_sendmail.c 2007-04-08 19:46:42.000000000 +0200
@@ -539,6 +539,7 @@
}
/* Strip off any angle brackets. */
+/*
while ( len > 0 && *recipient == '<' )
{
++recipient;
@@ -548,6 +549,23 @@
--len;
(void) snprintf( buf, sizeof(buf), "RCPT TO:<%.*s>", len, recipient );
+*/
+ if (len > 0 && recipient[len-1] == '>' )
+ {
+ /* "<name@domain>" or: "Full Name <name@domain>" */
+ while (len > 0 && *recipient != '<' )
+ {
+ ++recipient;
+ --len;
+ }
+ (void) snprintf( buf, sizeof(buf), "RCPT TO:%.*s", len, recipient );
+ }
+ else
+ {
+ /* name@domain */
+ (void) snprintf( buf, sizeof(buf), "RCPT TO:<%.*s>", len, recipient );
+ }
+
send_command( buf );
status = read_response();
if ( status != 250 && status != 251 )