projects
/
mmh
/ blobdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
|
commitdiff
|
tree
raw
|
inline
| side by side
* uip/new.c: cast folder_len to int to avoid warning on
[mmh]
/
mts
/
smtp
/
smtp.c
diff --git
a/mts/smtp/smtp.c
b/mts/smtp/smtp.c
index
37a7b07
..
05e292f
100644
(file)
--- a/
mts/smtp/smtp.c
+++ b/
mts/smtp/smtp.c
@@
-144,7
+144,6
@@
static char *EHLOset (char *);
static int sm_fwrite(char *, int);
static int sm_fputs(char *);
static int sm_fputc(int);
static int sm_fwrite(char *, int);
static int sm_fputs(char *);
static int sm_fputc(int);
-static int sm_getc(void);
static void sm_fflush(void);
static int sm_fgets(char *, int, FILE *);
static void sm_fflush(void);
static int sm_fgets(char *, int, FILE *);
@@
-326,6
+325,13
@@
sendmail_init (char *client, char *server, int watch, int verbose,
client = "localhost";
#endif
client = "localhost";
#endif
+#ifdef CYRUS_SASL
+ sasl_inbuffer = malloc(SASL_MAXRECVBUF);
+ if (!sasl_inbuffer)
+ return sm_ierror("Unable to allocate %d bytes for read buffer",
+ SASL_MAXRECVBUF);
+#endif /* CYRUS_SASL */
+
if (pipe (pdi) == NOTOK)
return sm_ierror ("no pipes");
if (pipe (pdo) == NOTOK) {
if (pipe (pdi) == NOTOK)
return sm_ierror ("no pipes");
if (pipe (pdo) == NOTOK) {
@@
-897,20
+903,12
@@
sm_auth_sasl(char *user, char *mechlist, char *inhost)
return NOTOK;
}
sasl_outbuflen = 0;
return NOTOK;
}
sasl_outbuflen = 0;
-
- sasl_inbuffer = malloc(SASL_MAXRECVBUF);
-
- if (sasl_inbuffer == NULL) {
- sm_ierror("Unable to allocate %d bytes for SASL input "
- "buffer", SASL_MAXRECVBUF);
- free(sasl_outbuffer);
- return NOTOK;
- }
sasl_inbuflen = 0;
sasl_inptr = sasl_inbuffer;
} else {
sasl_outbuffer = NULL;
sasl_inbuflen = 0;
sasl_inptr = sasl_inbuffer;
} else {
sasl_outbuffer = NULL;
- sasl_inbuffer = NULL;
+ /* Don't NULL out sasl_inbuffer because it could be used in
+ sm_fgetc (). */
}
sasl_complete = 1;
}
sasl_complete = 1;