X-Git-Url: http://git.marmaro.de/?p=mmh;a=blobdiff_plain;f=uip%2Fmhstore.c;h=992d429338679f79fe69b0051325eece15987f9b;hp=ed36c9603075083f7c61ea7cf326649d907c5183;hb=94c80042eae3383c812d9552089953f9846b1bb6;hpb=d1fefd9f614e4dc3cda16da6c69133c1b2005269 diff --git a/uip/mhstore.c b/uip/mhstore.c index ed36c96..992d429 100644 --- a/uip/mhstore.c +++ b/uip/mhstore.c @@ -106,7 +106,6 @@ int show_content_aux(CT, int, char *, char *); static void store_single_message(CT); static int store_switch(CT); static int store_generic(CT); -static int store_application(CT); static int store_multi(CT); static int store_partial(CT); static int store_external(CT); @@ -450,9 +449,6 @@ store_switch(CT ct) break; case CT_APPLICATION: - return store_application(ct); - break; - case CT_TEXT: case CT_AUDIO: case CT_IMAGE: @@ -471,7 +467,7 @@ store_switch(CT ct) /* ** Generic routine to store a MIME content. -** (audio, video, image, text, message/rfc922) +** (application, audio, video, image, text, message/rfc922) */ static int @@ -490,73 +486,6 @@ store_generic(CT ct) /* -** Store content of type "application" -*/ - -static int -store_application(CT ct) -{ - char **ap, **ep; - CI ci = &ct->c_ctinfo; - - /* Check if the content specifies a filename */ - if (autosw) - get_storeproc(ct); - - /* - ** If storeproc is not defined, and the content is type - ** "application/octet-stream", we also check for various - ** attribute/value pairs which specify if this a tar file. - */ - if (!ct->c_storeproc && ct->c_subtype == APPLICATION_OCTETS) { - int tarP = 0, zP = 0, gzP = 0; - - for (ap = ci->ci_attrs, ep = ci->ci_values; *ap; ap++, ep++) { - /* check for "type=tar" attribute */ - if (!mh_strcasecmp(*ap, "type")) { - if (mh_strcasecmp(*ep, "tar")) - break; - - tarP = 1; - continue; - } - - /* check for "conversions=compress" attribute */ - if ((!mh_strcasecmp(*ap, "conversions") || - !mh_strcasecmp(*ap, "x-conversions")) - && (!mh_strcasecmp(*ep, "compress") || - !mh_strcasecmp(*ep, "x-compress"))) { - zP = 1; - continue; - } - /* check for "conversions=gzip" attribute */ - if ((!mh_strcasecmp(*ap, "conversions") || - !mh_strcasecmp(*ap, "x-conversions")) - && (!mh_strcasecmp(*ep, "gzip") || - !mh_strcasecmp(*ep, "x-gzip"))) { - gzP = 1; - continue; - } - } - - if (tarP) { - ct->c_showproc = getcpy(zP ? "%euncompress | tar tvf -" : (gzP ? "%egzip -dc | tar tvf -" : "%etar tvf -")); - if (!ct->c_storeproc) { - if (autosw) { - ct->c_storeproc = getcpy(zP ? "| uncompress | tar xvpf -" : (gzP ? "| gzip -dc | tar xvpf -" : "| tar xvpf -")); - ct->c_umask = 0022; - } else { - ct->c_storeproc= getcpy(zP ? "%m%P.tar.Z" : (gzP ? "%m%P.tar.gz" : "%m%P.tar")); - } - } - } - } - - return store_content(ct, NULL); -} - - -/* ** Store the content of a multipart message */