NNTP_INCLUDES = -I$(top_srcdir)/nntp
endif
-SUBDIRS = intl m4 po lib-lib lib-hash doc contrib lib $(IMAP_SUBDIR) $(POP_SUBDIR) $(NNTP_SUBDIR)
+SUBDIRS = intl m4 po lib-lib lib-mime lib-hash doc contrib lib $(IMAP_SUBDIR) $(POP_SUBDIR) $(NNTP_SUBDIR)
bin_SCRIPTS = muttngbug fleang
main.c mbox.c mbyte.c menu.c mh.c muttlib.c mutt_idna.c mx.c \
pager.c parse.c pattern.c postpone.c \
query.c \
- recvattach.c recvcmd.c rfc822.c rfc1524.c rfc2047.c rfc2231.c rfc3676.c \
+ recvattach.c recvcmd.c rfc822.c rfc1524.c rfc2047.c rfc3676.c \
score.c send.c sendlib.c sidebar.c signal.c sort.c state.c status.c system.c \
thread.c \
url.c utf8.c \
wcwidth.c
muttng_LDADD = @MUTT_LIB_OBJECTS@ @LIBOBJS@ $(LIBIMAP) $(LIBPOP) $(LIBNNTP) \
- -Llib-lib -llib -Llib-hash -lhash -Llib -lsane $(MUTTLIBS) $(INTLLIBS) $(LIBICONV)
+ -Llib-lib -llib -Llib-mime -lmime -Llib-hash -lhash -Llib -lsane $(MUTTLIBS) $(INTLLIBS) $(LIBICONV)
muttng_DEPENDENCIES = @MUTT_LIB_OBJECTS@ @LIBOBJS@ \
$(top_builddir)/lib-lib/liblib.a \
+ $(top_builddir)/lib-mime/libmime.a \
$(top_builddir)/lib-hash/libhash.a \
$(top_builddir)/lib/libsane.a \
$(LIBIMAPDEPS) $(LIBPOPDEPS) $(LIBNNTPDEPS) $(INTLDEPS)
mime.h mutt.h mutt_curses.h mutt_menu.h \
mutt_sasl.h mutt_socket.h mutt_ssl.h mutt_tunnel.h \
mbox.h mh.h mx.h pager.h pgp.h protos.h rfc1524.h rfc2047.h \
- rfc2231.h rfc822.h rfc3676.h \
+ rfc822.h rfc3676.h \
sort.h mime.types autogen.sh \
_regex.h OPS.MIX remailer.c remailer.h browser.h state.h \
mbyte.h lib.h extlib.c pgpewrap.c smime_keys.pl pgplib.h Muttngrc.head Muttngrc \
#include <lib-lib/file.h>
#include <lib-lib/macros.h>
+#include <lib-mime/mime.h>
+
#include "mutt.h"
#include "handler.h"
#include "recvattach.h"
#include "mutt_curses.h"
#include "keymap.h"
#include "rfc1524.h"
-#include "mime.h"
#include "pager.h"
#include "copy.h"
#include "mx.h"
# include "config.h"
#endif
+#include <lib-mime/mime.h>
+
#include "mutt.h"
-#include "mime.h"
/* raw bytes to null-terminated base 64 string */
void mutt_to_base64 (unsigned char *out, const unsigned char *in, size_t len,
#include <lib-lib/macros.h>
#include <lib-lib/ascii.h>
+#include <lib-mime/mime.h>
+
#include "mutt.h"
#include "enter.h"
#include "recvattach.h"
#include "mutt_curses.h"
#include "mutt_menu.h"
-#include "mime.h"
#include "sort.h"
#include "copy.h"
#include "mx.h"
#include <lib-lib/file.h>
#include <lib-lib/mapping.h>
+#include <lib-mime/mime.h>
+
#include "mutt.h"
#include "enter.h"
#include "mutt_curses.h"
#include "mutt_idna.h"
#include "mutt_menu.h"
#include "rfc1524.h"
-#include "mime.h"
#include "attach.h"
#include "recvattach.h"
#include "sort.h"
po/Makefile.in doc/Makefile contrib/Makefile
muttbug.sh
lib-lib/Makefile
+ lib-mime/Makefile
lib-hash/Makefile
lib/Makefile
imap/Makefile
#include <lib-lib/file.h>
#include <lib-lib/ascii.h>
+#include <lib-mime/mime.h>
+
#include "mutt.h"
#include "handler.h"
#include "mx.h"
#include "copy.h"
#include "rfc2047.h"
-#include "mime.h"
#include "mutt_crypt.h"
#include "mutt_idna.h"
#include <lib-lib/macros.h>
#include <lib-lib/file.h>
+#include <lib-mime/mime.h>
+
#include "mutt.h"
#include "mutt_crypt.h"
#include "mutt_menu.h"
#include "mutt_curses.h"
#include "handler.h"
#include "enter.h"
-#include "mime.h"
#include "copy.h"
#include "pager.h"
#include "recvattach.h"
#include <lib-lib/mem.h>
#include <lib-lib/macros.h>
+#include <lib-mime/mime.h>
+
#include "mutt.h"
#include "handler.h"
#include "mutt_curses.h"
-#include "mime.h"
#include "copy.h"
#include "mutt_crypt.h"
#include "pgp.h"
#include <lib-lib/mem.h>
#include <lib-lib/str.h>
+#include <lib-mime/mime.h>
+
#include "mutt.h"
#include "pgp.h"
#include "charset.h"
/* for hexval */
-#include "mime.h"
#include "lib/debug.h"
#include <lib-lib/macros.h>
#include <lib-lib/file.h>
+#include <lib-mime/mime.h>
+
#include "mutt.h"
#include "recvattach.h"
#include "handler.h"
#include "rfc1524.h"
#include "rfc3676.h"
#include "keymap.h"
-#include "mime.h"
#include "copy.h"
#include "charset.h"
#include "mutt_crypt.h"
#include <lib-lib/mem.h>
#include <lib-hash/hash.h>
+#include <lib-mime/mime.h>
+
#include "mutt.h"
#ifdef USE_IMAP
#include "message.h"
#endif
-#include "mime.h"
#include "mx.h"
#include "lib.h"
#include "charset.h"
#include "mutt_crypt.h"
#include "mutt_idna.h"
-#include "mime.h"
#include <lib-lib/str.h>
+
+#include <lib-mime/mime.h>
+
#include "lib/rx.h"
#include <ctype.h>
--- /dev/null
+noinst_LIBRARIES = libmime.a
+
+libmime_a_SOURCES = mime.h rfc2231.c
+
+noinst_HEADERS = mime.h
+
+/*
+ * This program is free software; you can redistribute it and/or modify
+ * it under the terms of the GNU General Public License as published by
+ * the Free Software Foundation; either version 2 of the License, or (at
+ * your option) any later version.
+ *
+ * This program is distributed in the hope that it will be useful, but
+ * WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ * General Public License for more details.
+ *
+ * You should have received a copy of the GNU General Public License
+ * along with this program; if not, write to the Free Software
+ * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston,
+ * MA 02110-1301, USA.
+ *
+ * Copyright © 2006 Pierre Habouzit
+ */
+
/*
* Copyright notice from original mutt:
* Copyright (C) 1999-2000 Thomas Roessler <roessler@does-not-exist.org>
#include <lib-lib/str.h>
#include <lib-lib/ascii.h>
+#include <lib-mime/mime.h>
+
#include "mutt.h"
-#include "mime.h"
#include "charset.h"
#include "rfc2047.h"
-#include "rfc2231.h"
#include <ctype.h>
#include <string.h>
+++ /dev/null
-/*
- * Copyright notice from original mutt:
- * Copyright (C) 1996-2000 Michael R. Elkins <me@mutt.org>
- *
- * This file is part of mutt-ng, see http://www.muttng.org/.
- * It's licensed under the GNU General Public License,
- * please see the file GPL in the top level source directory.
- */
-
-/* Content-Type */
-enum {
- TYPEOTHER,
- TYPEAUDIO,
- TYPEAPPLICATION,
- TYPEIMAGE,
- TYPEMESSAGE,
- TYPEMODEL,
- TYPEMULTIPART,
- TYPETEXT,
- TYPEVIDEO,
- TYPEANY
-};
-
-/* Content-Transfer-Encoding */
-enum {
- ENCOTHER,
- ENC7BIT,
- ENC8BIT,
- ENCQUOTEDPRINTABLE,
- ENCBASE64,
- ENCBINARY,
- ENCUUENCODED
-};
-
-/* Content-Disposition values */
-enum {
- DISPINLINE,
- DISPATTACH,
- DISPFORMDATA
-};
-
-/* MIME encoding/decoding global vars */
-
-#define is_multipart(x) \
- ((x)->type == TYPEMULTIPART \
- || ((x)->type == TYPEMESSAGE && (!strcasecmp((x)->subtype, "rfc822") \
- || !strcasecmp((x)->subtype, "news"))))
-
-extern const char *BodyTypes[];
-extern const char *BodyEncodings[];
-
-#define TYPE(X) ((X->type == TYPEOTHER) && (X->xtype != NULL) ? X->xtype : BodyTypes[(X->type)])
-#define ENCODING(X) BodyEncodings[(X)]
-
-/* other MIME-related global variables */
-#ifndef _SENDLIB_C
-extern char MimeSpecials[];
-#endif
#include <lib-lib/buffer.h>
#include <lib-lib/file.h>
+#include <lib-mime/mime.h>
+
#include "mutt.h"
#include "enter.h"
#include "mutt_curses.h"
-#include "mime.h"
#include "mx.h"
#include "url.h"
#include "attach.h"
#include <lib-lib/file.h>
#include <lib-lib/macros.h>
+#include <lib-mime/mime.h>
+
#include "mutt.h"
#include "mutt_curses.h"
#include "sort.h"
#include "mx.h"
-#include "mime.h"
#include "nntp.h"
#include "rfc822.h"
#include "rfc1524.h"
#include <lib-lib/file.h>
#include <lib-lib/macros.h>
+#include <lib-mime/mime.h>
+
#include "mutt.h"
#include "mutt_curses.h"
#include "sort.h"
#include "mx.h"
#include "mx_nntp.h"
-#include "mime.h"
#include "rfc1524.h"
#include "rfc2047.h"
#include "nntp.h"
#include <lib-lib/macros.h>
#include <lib-lib/buffer.h>
+#include <lib-mime/mime.h>
+
#include "mutt.h"
#include "enter.h"
#include "recvattach.h"
#include "mx.h"
-#include "mime.h"
#include "rfc2047.h"
-#include "rfc2231.h"
#include "mutt_crypt.h"
#include "url.h"
#include <lib-lib/buffer.h>
#include <lib-lib/mapping.h>
+#include <lib-mime/mime.h>
+
#include "mutt.h"
#include "handler.h"
#include "enter.h"
#include "mx.h"
#include "keymap.h"
#include "copy.h"
-#include "mime.h"
#ifdef USE_IMAP
#include <lib-lib/macros.h>
#include <lib-lib/file.h>
+#include <lib-mime/mime.h>
+
#include "mutt.h"
#include "enter.h"
#include "handler.h"
#include "mutt_curses.h"
#include "pgp.h"
-#include "mime.h"
#include "copy.h"
#include "attach.h"
#include <lib-lib/macros.h>
#include <lib-lib/file.h>
+#include <lib-mime/mime.h>
+
#include "mutt.h"
#include "enter.h"
#include "recvattach.h"
#include "mutt_curses.h"
#include "mutt_menu.h"
-#include "mime.h"
#include "pgp.h"
#include "pager.h"
#include "sort.h"
#include "handler.h"
#include "pgp.h"
#include "pgppacket.h"
-#include "mime.h"
#include "charset.h"
#include <stdio.h>
#include <ctype.h>
#include <lib-lib/file.h>
+
+#include <lib-mime/mime.h>
+
#include "lib/debug.h"
static struct {
#include <lib-lib/file.h>
#include <lib-lib/mapping.h>
+#include <lib-mime/mime.h>
+
#include "mutt.h"
#include "enter.h"
#include "handler.h"
#include "mutt_menu.h"
#include "rfc1524.h"
-#include "mime.h"
#include "sort.h"
#include "thread.h"
#include "mx.h"
#include <lib-lib/file.h>
#include <lib-lib/mapping.h>
+#include <lib-mime/mime.h>
+
#include "mutt.h"
#include "enter.h"
#include "handler.h"
#include "mutt_curses.h"
#include "mutt_menu.h"
#include "rfc1524.h"
-#include "mime.h"
#include "attach.h"
#include "mx.h"
#include "copy.h"
#include <lib-lib/file.h>
#include <lib-lib/mapping.h>
+#include <lib-mime/mime.h>
+
#include "mutt.h"
#include "enter.h"
#include "state.h"
#include "mutt_curses.h"
#include "mutt_menu.h"
#include "rfc1524.h"
-#include "mime.h"
#include "attach.h"
#include "mx.h"
#include "copy.h"
#include <lib-lib/str.h>
#include <lib-lib/ascii.h>
+#include <lib-mime/mime.h>
+
#include "mutt.h"
-#include "mime.h"
#include "charset.h"
#include "rfc2047.h"
#include "thread.h"
+++ /dev/null
-/*
- * Copyright notice from original mutt:
- * Copyright (C) 1999-2000 Thomas Roessler <roessler@does-not-exist.org>
- *
- * This file is part of mutt-ng, see http://www.muttng.org/.
- * It's licensed under the GNU General Public License,
- * please see the file GPL in the top level source directory.
- */
-
-void rfc2231_decode_parameters (PARAMETER **);
-int rfc2231_encode_string (char **);
#include <lib-lib/macros.h>
#include <lib-lib/file.h>
+#include <lib-mime/mime.h>
+
#include "mutt.h"
#include "enter.h"
#include "mutt_curses.h"
#include "rfc2047.h"
#include "rfc3676.h"
#include "keymap.h"
-#include "mime.h"
#include "copy.h"
#include "mx.h"
#include "mutt_crypt.h"
#include <lib-lib/macros.h>
#include <lib-lib/file.h>
+#include <lib-mime/mime.h>
+
#include "mutt.h"
#include "handler.h"
#include "recvattach.h"
#include "mutt_curses.h"
#include "rfc2047.h"
-#include "rfc2231.h"
#include "mx.h"
-#include "mime.h"
#include "copy.h"
#include "pager.h"
#include "charset.h"
#include <lib-lib/macros.h>
#include <lib-lib/file.h>
+#include <lib-mime/mime.h>
+
#include "mutt.h"
#include "enter.h"
#include "handler.h"
#include "mutt_curses.h"
#include "mutt_menu.h"
-#include "smime.h"
-#include "mime.h"
#include "copy.h"
#include "lib/debug.h"
#include <lib-lib/ascii.h>
#include <lib-lib/mapping.h>
+#include <lib-mime/mime.h>
+
#include "mutt.h"
#include "url.h"
-#include "mime.h"
#include <ctype.h>