projects
/
apps
/
madmutt.git
/ blobdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
|
commitdiff
|
tree
raw
|
inline
| side by side
byebye OPTARROWCURSOR
[apps/madmutt.git]
/
sendlib.c
diff --git
a/sendlib.c
b/sendlib.c
index
838b850
..
6ba421a
100644
(file)
--- a/
sendlib.c
+++ b/
sendlib.c
@@
-10,7
+10,6
@@
#include <lib-lib/lib-lib.h>
#include <signal.h>
#include <lib-lib/lib-lib.h>
#include <signal.h>
-#include <sys/utsname.h>
#include <lib-lua/lib-lua.h>
#include <lib-sys/exit.h>
#include <lib-lua/lib-lua.h>
#include <lib-sys/exit.h>
@@
-19,19
+18,15
@@
#include <lib-ui/curses.h>
#include <lib-mx/mx.h>
#include <lib-ui/curses.h>
#include <lib-mx/mx.h>
-#include <lib-crypt/crypt.h>
-
#include "mutt.h"
#include "handler.h"
#include "mutt.h"
#include "handler.h"
+#include "crypt.h"
#include "recvattach.h"
#include "copy.h"
#include "pager.h"
#include "charset.h"
#include "mutt_idna.h"
#include "recvattach.h"
#include "copy.h"
#include "pager.h"
#include "charset.h"
#include "mutt_idna.h"
-
-#ifdef USE_LIBESMTP
-# include "mutt_libesmtp.h"
-#endif /* USE_LIBESMTP */
+#include "send_smtp.h"
#ifdef USE_NNTP
#include <nntp/nntp.h>
#ifdef USE_NNTP
#include <nntp/nntp.h>
@@
-539,7
+534,6
@@
static ssize_t convert_file_to (FILE * file, const char *fromcode,
int ncodes, const char **tocodes,
int *tocode, CONTENT * info)
{
int ncodes, const char **tocodes,
int *tocode, CONTENT * info)
{
-#ifdef HAVE_ICONV
iconv_t cd1, *cd;
char bufi[256], bufu[512], bufo[4 * sizeof (bufi)];
const char *ib, *ub;
iconv_t cd1, *cd;
char bufi[256], bufu[512], bufo[4 * sizeof (bufi)];
const char *ib, *ub;
@@
-647,9
+641,6
@@
static ssize_t convert_file_to (FILE * file, const char *fromcode,
p_delete(&states);
return ret;
p_delete(&states);
return ret;
-#else
- return -1;
-#endif /* !HAVE_ICONV */
}
/*
}
/*
@@
-767,10
+758,10
@@
CONTENT *mutt_get_content_info (const char *fname, BODY * b)
if (b != NULL && b->type == TYPETEXT && (!b->noconv && !b->force_charset)) {
const char *chs = parameter_getval(b->parameter, "charset");
if (b != NULL && b->type == TYPETEXT && (!b->noconv && !b->force_charset)) {
const char *chs = parameter_getval(b->parameter, "charset");
- char *fchs = b->use_disp
? ((FileCharset && *FileCharset) ?
-
FileCharset : Charset) : C
harset;
- if (
Charset && (chs || SendC
harset) &&
- convert_file_from_to (fp, fchs, chs ? chs :
SendC
harset,
+ char *fchs = b->use_disp
&& !m_strisempty(mod_cset.file_charset)
+
? FileCharset : mod_cset.c
harset;
+ if (
mod_cset.charset && (chs || mod_cset.send_c
harset) &&
+ convert_file_from_to (fp, fchs, chs ? chs :
mod_cset.send_c
harset,
&fromcode, &tocode, info) != -1) {
if (!chs) {
charset_canonicalize (chsbuf, sizeof (chsbuf), tocode);
&fromcode, &tocode, info) != -1) {
if (!chs) {
charset_canonicalize (chsbuf, sizeof (chsbuf), tocode);
@@
-793,7
+784,8
@@
CONTENT *mutt_get_content_info (const char *fname, BODY * b)
if (b != NULL && b->type == TYPETEXT && (!b->noconv && !b->force_charset))
parameter_setval(&b->parameter, "charset",
(!info->hibin ? "us-ascii"
if (b != NULL && b->type == TYPETEXT && (!b->noconv && !b->force_charset))
parameter_setval(&b->parameter, "charset",
(!info->hibin ? "us-ascii"
- : Charset && !charset_is_us_ascii(Charset) ? Charset : "unknown-8bit"));
+ : mod_cset.charset && !charset_is_us_ascii(mod_cset.charset)
+ ? mod_cset.charset : "unknown-8bit"));
return info;
}
return info;
}
@@
-829,7
+821,7
@@
int mutt_lookup_mime_type (BODY * att, const char *path)
*/
switch (count) {
case 0:
*/
switch (count) {
case 0:
- snprintf(buf, sizeof (buf), "%s/.mime.types", NONULL(
MC
ore.homedir));
+ snprintf(buf, sizeof (buf), "%s/.mime.types", NONULL(
mod_c
ore.homedir));
break;
case 1:
m_strcpy(buf, sizeof(buf), SYSCONFDIR "/madmutt-mime.types");
break;
case 1:
m_strcpy(buf, sizeof(buf), SYSCONFDIR "/madmutt-mime.types");
@@
-925,7
+917,7
@@
void mutt_message_to_7bit (BODY * a, FILE * fp)
a->length = sb.st_size;
}
a->length = sb.st_size;
}
- fpout = m_tempfile(temp, sizeof(temp), NONULL(
MC
ore.tmpdir), NULL);
+ fpout = m_tempfile(temp, sizeof(temp), NONULL(
mod_c
ore.tmpdir), NULL);
if (!fpout) {
mutt_error(_("Could not create temporary file"));
goto cleanup;
if (!fpout) {
mutt_error(_("Could not create temporary file"));
goto cleanup;
@@
-990,7
+982,7
@@
static void transform_to_7bit (BODY * a, FILE * fpin)
a->noconv = 1;
a->force_charset = 1;
a->noconv = 1;
a->force_charset = 1;
- s.fpout = m_tempfile(buff, sizeof(buff), NONULL(
MC
ore.tmpdir), NULL);
+ s.fpout = m_tempfile(buff, sizeof(buff), NONULL(
mod_c
ore.tmpdir), NULL);
if (!s.fpout) {
mutt_error(_("Could not create temporary file"));
return;
if (!s.fpout) {
mutt_error(_("Could not create temporary file"));
return;
@@
-1110,11
+1102,9
@@
BODY *mutt_make_message_attach (CONTEXT * ctx, HEADER * hdr, int attach_msg)
if ((option (OPTMIMEFORWDECODE) || option (OPTFORWDECRYPT)) &&
(hdr->security & ENCRYPT)) {
if ((option (OPTMIMEFORWDECODE) || option (OPTFORWDECRYPT)) &&
(hdr->security & ENCRYPT)) {
- if (!crypt_valid_passphrase (hdr->security))
- return (NULL);
}
}
- fp = m_tempfile(buffer, sizeof(buffer), NONULL(
MC
ore.tmpdir), NULL);
+ fp = m_tempfile(buffer, sizeof(buffer), NONULL(
mod_c
ore.tmpdir), NULL);
if (!fp)
return NULL;
if (!fp)
return NULL;
@@
-1426,12
+1416,6
@@
int mutt_write_rfc822_header (FILE * fp, ENVELOPE * env, BODY * attach,
fprintf (fp, "Followup-To: %s\n", env->followup_to);
else if (mode == 1 && option (OPTNEWSSEND) && edit_header(mode, "Followup-To:"))
fputs ("Followup-To:\n", fp);
fprintf (fp, "Followup-To: %s\n", env->followup_to);
else if (mode == 1 && option (OPTNEWSSEND) && edit_header(mode, "Followup-To:"))
fputs ("Followup-To:\n", fp);
-
- if (env->x_comment_to)
- fprintf (fp, "X-Comment-To: %s\n", env->x_comment_to);
- else if (mode == 1 && option (OPTNEWSSEND) && option (OPTXCOMMENTTO) &&
- edit_header(mode, "X-Comment-To:"))
- fputs ("X-Comment-To:\n", fp);
#endif
if (env->subject)
#endif
if (env->subject)
@@
-1497,16
+1481,12
@@
int mutt_write_rfc822_header (FILE * fp, ENVELOPE * env, BODY * attach,
}
if (mode == 0 && !privacy && option (OPTXMAILER) && !has_agent) {
}
if (mode == 0 && !privacy && option (OPTXMAILER) && !has_agent) {
- const char *os;
-
- if (OperatingSystem != NULL) {
- os = OperatingSystem;
+ if (mod_core.operating_system) {
+ fprintf(fp, "User-Agent: %s (%s)\n", mutt_make_version(),
+ mod_core.operating_system);
} else {
} else {
- struct utsname un;
- os = (uname(&un) == -1) ? "UNIX" : un.sysname;
+ fprintf(fp, "User-Agent: %s\n", mutt_make_version());
}
}
- /* Add a vanity header */
- fprintf (fp, "User-Agent: %s (%s)\n", mutt_make_version(), os);
}
return (ferror (fp) == 0 ? 0 : -1);
}
return (ferror (fp) == 0 ? 0 : -1);
@@
-1538,22
+1518,22
@@
static void encode_headers (string_list_t * h)
}
}
}
}
-const char *mutt_fqdn
(short may_hide_host)
+const char *mutt_fqdn(short may_hide_host)
{
char *p = NULL, *q;
{
char *p = NULL, *q;
- if (
Fqdn && Fqdn
[0] != '@') {
- p =
Fqdn
;
+ if (
mod_core.hostname && mod_core.hostname
[0] != '@') {
+ p =
mod_core.hostname
;
if (may_hide_host && option (OPTHIDDENHOST)) {
if (may_hide_host && option (OPTHIDDENHOST)) {
- if ((p = strchr
(Fqdn
, '.')))
+ if ((p = strchr
(mod_core.hostname
, '.')))
p++;
/* sanity check: don't hide the host if
the fqdn is something like detebe.org. */
p++;
/* sanity check: don't hide the host if
the fqdn is something like detebe.org. */
- if (!p || !(q = strchr
(p, '.')))
- p =
Fqdn
;
+ if (!p || !(q = strchr(p, '.')))
+ p =
mod_core.hostname
;
}
}
}
}
@@
-1656,14
+1636,14
@@
static char *mutt_gen_msgid (void)
const char *fqdn;
if (!(fqdn = mutt_fqdn(0)))
const char *fqdn;
if (!(fqdn = mutt_fqdn(0)))
- fqdn = NONULL(
Hostname
);
+ fqdn = NONULL(
mod_core.shorthost
);
mutt_gen_localpart(localpart, sizeof(localpart), MsgIdFormat);
snprintf(buf, sizeof(buf), "<%s@%s>", localpart, fqdn);
return m_strdup(buf);
}
mutt_gen_localpart(localpart, sizeof(localpart), MsgIdFormat);
snprintf(buf, sizeof(buf), "<%s@%s>", localpart, fqdn);
return m_strdup(buf);
}
-static
RETSIGTYPE
alarm_handler (int sig __attribute__ ((unused)))
+static
void
alarm_handler (int sig __attribute__ ((unused)))
{
SigAlrm = 1;
}
{
SigAlrm = 1;
}
@@
-1917,8
+1897,7
@@
static int mutt_invoke_sendmail (address_t * from, /* the sender */
struct stat st;
if (!stat(childout, &st) && st.st_size > 0)
struct stat st;
if (!stat(childout, &st) && st.st_size > 0)
- mutt_do_pager(_("Output of the delivery process"), childout, 0,
- NULL);
+ mutt_pager(_("Output of the delivery process"), childout, 0, NULL);
}
}
} else {
}
}
} else {
@@
-1948,7
+1927,7
@@
int mutt_invoke_mta (address_t * from, /* the sender */
if (!option (OPTNEWSSEND))
#endif
if (SmtpHost)
if (!option (OPTNEWSSEND))
#endif
if (SmtpHost)
- return
mutt_libe
smtp_invoke (from, to, cc, bcc, msg, eightbit);
+ return
send_
smtp_invoke (from, to, cc, bcc, msg, eightbit);
#endif
return mutt_invoke_sendmail (from, to, cc, bcc, msg, eightbit);
#endif
return mutt_invoke_sendmail (from, to, cc, bcc, msg, eightbit);
@@
-1984,12
+1963,7
@@
void mutt_prepare_envelope (ENVELOPE * env, int final)
rfc2047_encode_adrlist(env->reply_to, "Reply-To");
if (env->subject)
rfc2047_encode_adrlist(env->reply_to, "Reply-To");
if (env->subject)
-#ifdef USE_NNTP
- if (!option (OPTNEWSSEND) || option (OPTMIMESUBJECT))
-#endif
- {
- rfc2047_encode_string (&env->subject);
- }
+ rfc2047_encode_string (&env->subject);
encode_headers (env->userhdrs);
}
encode_headers (env->userhdrs);
}
@@
-2036,7
+2010,7
@@
static int _mutt_bounce_message (FILE * fp, HEADER * h, address_t * to,
if (!fp)
fp = msg->fp;
if (!fp)
fp = msg->fp;
- f = m_tempfile(tempfile, sizeof(tempfile), NONULL(
MC
ore.tmpdir), NULL);
+ f = m_tempfile(tempfile, sizeof(tempfile), NONULL(
mod_c
ore.tmpdir), NULL);
if (f) {
int ch_flags = CH_XMIT | CH_NONEWLINE | CH_NOQFROM;
if (f) {
int ch_flags = CH_XMIT | CH_NONEWLINE | CH_NOQFROM;
@@
-2125,8
+2099,8
@@
int mutt_write_fcc (const char *path, HEADER * hdr, const char *msgid,
/* We need to add a Content-Length field to avoid problems where a line in
* the message body begins with "From "
*/
/* We need to add a Content-Length field to avoid problems where a line in
* the message body begins with "From "
*/
- if (f.magic == M_M
MDF || f.magic == M_M
BOX) {
- tempfp = m_tempfile(tempfile, sizeof(tempfile), NONULL(
MC
ore.tmpdir), NULL);
+ if (f.magic == M_MBOX) {
+ tempfp = m_tempfile(tempfile, sizeof(tempfile), NONULL(
mod_c
ore.tmpdir), NULL);
if (!tempfp) {
mutt_error(_("Could not create temporary file"));
mx_close_mailbox (&f, NULL);
if (!tempfp) {
mutt_error(_("Could not create temporary file"));
mx_close_mailbox (&f, NULL);