packages/mail/mini_sendmail/patches/200-fullname.patch
nico a9f231baf2 [packages] move packages to a new 'mail' section, cleanup
git-svn-id: svn://svn.openwrt.org/openwrt/packages@11014 3c298f89-4303-0410-b956-a3cf2f4a3e73
2008-05-03 02:42:43 +00:00

37 lines
1.0 KiB
Diff

Index: mini_sendmail-1.3.6/mini_sendmail.c
===================================================================
--- mini_sendmail-1.3.6.orig/mini_sendmail.c 2007-08-28 17:58:37.000000000 +0200
+++ mini_sendmail-1.3.6/mini_sendmail.c 2007-08-28 17:58:37.000000000 +0200
@@ -542,6 +542,7 @@
}
/* Strip off any angle brackets. */
+/*
while ( len > 0 && *recipient == '<' )
{
++recipient;
@@ -551,6 +552,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 )