Update of /cvsroot/mahogany/M/lib/imap/src/c-client
In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv9509/src/c-client

Modified Files:
        mail.h pop3.c rfc822.c smtp.c 
Log Message:
applied (still relevant) Mahogany patches from the previous versions; added VC7 
project file; added some files normally built during the build process

Index: mail.h
===================================================================
RCS file: /cvsroot/mahogany/M/lib/imap/src/c-client/mail.h,v
retrieving revision 1.1.1.1
retrieving revision 1.2
diff -b -u -2 -r1.1.1.1 -r1.2
--- mail.h      24 Apr 2004 21:46:03 -0000      1.1.1.1
+++ mail.h      24 Apr 2004 23:12:57 -0000      1.2
@@ -301,4 +301,7 @@
 #define GET_SNARFPRESERVE (long) 566
 #define SET_SNARFPRESERVE (long) 567
+/*** MAHOGANY PATCH ***/
+#define SET_SMTPDISABLEDAUTHS (long) 960
+/*** END OF MAHOGANY PATCH ***/
 
 /* Driver flags */

Index: pop3.c
===================================================================
RCS file: /cvsroot/mahogany/M/lib/imap/src/c-client/pop3.c,v
retrieving revision 1.1.1.1
retrieving revision 1.2
diff -b -u -2 -r1.1.1.1 -r1.2
--- pop3.c      24 Apr 2004 21:46:12 -0000      1.1.1.1
+++ pop3.c      24 Apr 2004 23:12:57 -0000      1.2
@@ -1062,2 +1062,9 @@
   return NIL;                  /* return error code */
 }
+
+/* MAHOGANY PATCH: added pop3_getnetstream */
+NETSTREAM *pop3_getnetstream(MAILSTREAM *stream)
+{
+  return LOCAL->netstream;
+}
+

Index: rfc822.c
===================================================================
RCS file: /cvsroot/mahogany/M/lib/imap/src/c-client/rfc822.c,v
retrieving revision 1.1.1.1
retrieving revision 1.2
diff -b -u -2 -r1.1.1.1 -r1.2
--- rfc822.c    24 Apr 2004 21:46:13 -0000      1.1.1.1
+++ rfc822.c    24 Apr 2004 23:12:57 -0000      1.2
@@ -374,5 +374,7 @@
   ENVELOPE *env = (*en = mail_newenvelope ());
   BODY *body = bdy ? (*bdy = mail_newbody ()) : NIL;
-  long MIMEp = -1;             /* flag that MIME semantics are in effect */
+/*** MAHOGANY PATCH ***/
+  long MIMEp = T;              /* always assume MIME */
+/*** END OF MAHOGANY PATCH ***/
   parseline_t pl = (parseline_t) mail_parameters (NIL,GET_PARSELINE,NIL);
   if (!host) host = BADHOST;   /* make sure that host is non-null */

Index: smtp.c
===================================================================
RCS file: /cvsroot/mahogany/M/lib/imap/src/c-client/smtp.c,v
retrieving revision 1.1.1.1
retrieving revision 1.2
diff -b -u -2 -r1.1.1.1 -r1.2
--- smtp.c      24 Apr 2004 21:46:00 -0000      1.1.1.1
+++ smtp.c      24 Apr 2004 23:12:57 -0000      1.2
@@ -72,4 +72,9 @@
 static long smtp_sslport = 0;
 
+/*** MAHOGANY PATCH ***/
+/* first part of the ugly hack used in smtp_ehlo(), see there */
+static const char *smtp_disabledauths = NIL;
+/*** END OF MAHOGANY PATCH ***/
+
 
 #ifndef RFC2821
@@ -120,4 +125,9 @@
     value = (void *) smtp_sslport;
     break;
+  /*** MAHOGANY PATCH ***/
+  case SET_SMTPDISABLEDAUTHS:
+    smtp_disabledauths = (char *)value;
+    break;
+  /*** END OF MAHOGANY PATCH ***/
   default:
     value = NIL;               /* error case */
@@ -650,8 +660,22 @@
     else if ((tmp[0] == 'A') && (tmp[1] == 'U') && (tmp[2] == 'T') &&
             (tmp[3] == 'H') && ((tmp[4] == ' ') || (tmp[4] == '='))) {
-      for (s = strtok (tmp+5," "); s && *s; s = strtok (NIL," "))
+      for (s = strtok (tmp+5," "); s && *s; s = strtok (NIL," ")) {
+       /*** MAHOGANY PATCH ***/
+       /* some ESMTP servers have broken AUTH PLAIN implementation and so we
+          we want to allow the user to disable the authenticators selectively, but
+          unfortunately cclient doesn't provide any way to disable them
+          temporarily (DISABLE_AUTHENTICATOR does it permanently) and so we
+          need this ugly hack */
+       char auth[256];
+       strncpy(auth, s, 254);
+        auth[254] = 0;
+       strcat(auth, ";");
+       if ( !smtp_disabledauths || !strstr(smtp_disabledauths, auth) )
+       /*** END OF MAHOGANY PATCH ***/
+
        if ((j = mail_lookup_auth_name (s,flags)) &&
            (--j < MAXAUTHENTICATORS)) ESMTP.auth |= (1 << j);
     }
+    }
     else if ((tmp[0] == 'D') && (tmp[1] == 'S') && (tmp[2] == 'N') && !tmp[3])
       ESMTP.dsn.ok = T;



-------------------------------------------------------
This SF.net email is sponsored by: The Robotic Monkeys at ThinkGeek
For a limited time only, get FREE Ground shipping on all orders of $35
or more. Hurry up and shop folks, this offer expires April 30th!
http://www.thinkgeek.com/freeshipping/?cpg=12297
_______________________________________________
Mahogany-cvsupdates mailing list
[EMAIL PROTECTED]
https://lists.sourceforge.net/lists/listinfo/mahogany-cvsupdates

Reply via email to