cvs: php4 /ext/imap imap.dsp php_imap.c
| From: | Frank M. Kromann | Date: | Tue, 02 Jul 2002 19:29:16 +0000 |
| Subject: | cvs: php4 /ext/imap imap.dsp php_imap.c | ||
| Groups: | php.cvs | ||
| Request: | Send a blank email to php-cvs+get-12667@lists.php.net to get a copy of this message | ||
fmk Tue Jul 2 15:29:16 2002 EDT
Modified files:
/php4/ext/imap imap.dsp php_imap.c
Log:
Switch from imap_sendmail.* to sendmail.c under Win32
Index: php4/ext/imap/imap.dsp
diff -u php4/ext/imap/imap.dsp:1.13 php4/ext/imap/imap.dsp:1.14
--- php4/ext/imap/imap.dsp:1.13 Tue Dec 4 13:47:31 2001
+++ php4/ext/imap/imap.dsp Tue Jul 2 15:29:15 2002
@@ -123,7 +123,7 @@
# PROP Ignore_Export_Lib 0
# PROP Target_Dir ""
# ADD BASE CPP /nologo /MT /W3 /GX /O2 /D "WIN32" /D "NDEBUG" /D
"_WINDOWS" /D "_MBCS" /D "_USRDLL" /D "IMAP_EXPORTS" /YX /FD
/c
-# ADD CPP /nologo /MD /W3 /GX /O2 /I "..\..\\" /I "..\..\main" /I
"..\..\Zend" /I "..\..\..\bindlib_w32" /I "..\..\TSRM" /D
"ZTS" /D "NDEBUG" /D "IMAP_EXPORTS" /D "COMPILE_DL_IMAP" /D
HAVE_IMAP=1 /D "WIN32" /D "_WINDOWS" /D "_MBCS" /D "_USRDLL"
/D "ZEND_WIN32" /D "PHP_WIN32" /D ZEND_DEBUG=0 /D HAVE_IMAP2001=1 /FR /YX /FD /c
+# ADD CPP /nologo /MD /W3 /GX /O2 /I "..\..\\" /I "..\..\main" /I
"..\..\Zend" /I "..\..\..\bindlib_w32" /I "..\..\TSRM" /I
"..\..\..\php_build\imap\c-client" /D "ZTS" /D "NDEBUG" /D
"IMAP_EXPORTS" /D "COMPILE_DL_IMAP" /D HAVE_IMAP=1 /D "WIN32" /D
"_WINDOWS" /D "_MBCS" /D "_USRDLL" /D "ZEND_WIN32" /D
"PHP_WIN32" /D ZEND_DEBUG=0 /D HAVE_IMAP2001=1 /FR /YX /FD /c
# ADD BASE MTL /nologo /D "NDEBUG" /mktyplib203 /win32
# ADD MTL /nologo /D "NDEBUG" /mktyplib203 /win32
# ADD BASE RSC /l 0x40d /d "NDEBUG"
@@ -133,7 +133,8 @@
# ADD BSC32 /nologo
LINK32=link.exe
# ADD BASE LINK32 kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib
shell32.lib ole32.lib oleaut32.lib uuid.lib odbc32.lib odbccp32.lib /nologo /dll /machine:I386
-# ADD LINK32 kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib shell32.lib
ole32.lib oleaut32.lib uuid.lib odbc32.lib odbccp32.lib php4ts.lib wsock32.lib winmm.lib cclient.lib
Secur32.lib CertIdl.Lib /nologo /dll /machine:I386 /nodefaultlib:"LIBCMT"
/out:"..\..\Release_TS/php_imap.dll" /libpath:"..\..\Release_TS"
/libpath:"..\..\Release_TS_Inline"
+# ADD LINK32 kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib shell32.lib
ole32.lib oleaut32.lib uuid.lib odbc32.lib odbccp32.lib php4ts.lib wsock32.lib winmm.lib cclient.lib
Secur32.lib CertIdl.Lib /nologo /dll /machine:I386 /nodefaultlib:"LIBCMT"
/out:"..\..\Release_TS/php_imap.dll" /libpath:"..\..\Release_TS"
/libpath:"..\..\Release_TS_Inline" /libpath:"..\..\..\php_build\imap"
+# SUBTRACT LINK32 /nodefaultlib
!ENDIF
@@ -148,10 +149,6 @@
# PROP Default_Filter "cpp;c;cxx;rc;def;r;odl;idl;hpj;bat"
# Begin Source File
-SOURCE=..\..\win32\imap_sendmail.c
-# End Source File
-# Begin Source File
-
SOURCE=.\php_imap.c
# End Source File
# Begin Source File
@@ -162,10 +159,6 @@
# Begin Group "Header Files"
# PROP Default_Filter "h;hpp;hxx;hm;inl"
-# Begin Source File
-
-SOURCE=..\..\win32\imap_sendmail.h
-# End Source File
# Begin Source File
SOURCE=.\php_imap.h
Index: php4/ext/imap/php_imap.c
diff -u php4/ext/imap/php_imap.c:1.123 php4/ext/imap/php_imap.c:1.124
--- php4/ext/imap/php_imap.c:1.123 Fri Jun 28 10:35:20 2002
+++ php4/ext/imap/php_imap.c Tue Jul 2 15:29:15 2002
@@ -25,7 +25,7 @@
| PHP 4.0 updates: Zeev Suraski <zeev@zend.com> |
+----------------------------------------------------------------------+
*/
-/* $Id: php_imap.c,v 1.123 2002/06/28 14:35:20 derick Exp $ */
+/* $Id: php_imap.c,v 1.124 2002/07/02 19:29:15 fmk Exp $ */
#define IMAP41
@@ -51,8 +51,9 @@
#include <signal.h>
#ifdef PHP_WIN32
-#include "winsock.h"
-#include "win32/imap_sendmail.h"
+#include <winsock.h>
+#include <stdlib.h>
+#include "win32/sendmail.h"
MAILSTREAM DEFAULTPROTO;
#endif
@@ -3251,10 +3252,54 @@
#endif
#ifdef PHP_WIN32
- if (imap_TSendMail(INI_STR("SMTP"), &tsm_err, headers, subject, to, message, cc,
bcc, rpath) != SUCCESS) {
+ char *tempMailTo;
+ ADDRESS *addr;
+ char *bufferCc = NULL, *bufferBcc = NULL;
+ int offset;
+
+ if (cc && *cc) {
+ tempMailTo = estrdup(cc);
+ bufferCc = (char *)emalloc(strlen(cc));
+ offset = 0;
+ addr = NULL;
+ rfc822_parse_adrlist(&addr, tempMailTo, NULL);
+ while (addr) {
+ if (strcmp(addr->host, ERRHOST) == 0)
+ return (BAD_MSG_DESTINATION);
+ else {
+ offset += sprintf(bufferCc + offset, "%s@%s,", addr->mailbox, addr->host);
+ }
+ addr = addr->next;
+ }
+ efree(tempMailTo);
+ bufferCc[offset] = 0;
+ }
+
+ if (bcc && *bcc) {
+ tempMailTo = estrdup(bcc);
+ bufferBcc = (char *)emalloc(strlen(bcc));
+ offset = 0;
+ addr = NULL;
+ rfc822_parse_adrlist(&addr, tempMailTo, NULL);
+ while (addr) {
+ if (strcmp(addr->host, ERRHOST) == 0)
+ return (BAD_MSG_DESTINATION);
+ else {
+ offset += sprintf(bufferBcc + offset, "%s@%s,", addr->mailbox, addr->host);
+ }
+ addr = addr->next;
+ }
+ efree(tempMailTo);
+ bufferBcc[offset] = 0;
+ }
+
+
+ if (TSendMail(INI_STR("SMTP"), &tsm_err, NULL, headers, subject, to, message,
bufferCc, bufferBcc, rpath) != SUCCESS) {
php_error(E_WARNING, "%s(): %s", get_active_function_name(TSRMLS_C),
GetSMErrorText(tsm_err));
return 0;
}
+ if (bufferCc) efree(bufferCc);
+ if (bufferBcc) efree(bufferBcc);
#else
if (!INI_STR("sendmail_path")) {
return 0;