X-Git-Url: http://git.marmaro.de/?a=blobdiff_plain;f=uip%2Fmhmisc.c;h=a3da759fcd7804408402bf2c82dcff6fe248c71c;hb=81a21a9a97d8633f6d6231e31fdb6e328d0d3ff2;hp=75ac158373b0e50121dd8f67d1bb9166f18cee48;hpb=1691e80890e5d8ba258c51c214a3e91880e1db2b;p=mmh diff --git a/uip/mhmisc.c b/uip/mhmisc.c index 75ac158..a3da759 100644 --- a/uip/mhmisc.c +++ b/uip/mhmisc.c @@ -3,6 +3,10 @@ * mhparse.c -- misc routines to process MIME messages * * $Id$ + * + * This code is Copyright (c) 2002, by the authors of nmh. See the + * COPYRIGHT file in the root directory of the nmh distribution for + * complete copyright information. */ #include @@ -10,7 +14,6 @@ #include #include -extern int errno; extern int debugsw; /* @@ -42,13 +45,17 @@ int part_ok (CT ct, int sP) { char **ap; + int len; if (npart == 0 || (ct->c_type == CT_MULTIPART && (sP || ct->c_subtype))) return 1; - for (ap = parts; *ap; ap++) - if (!strcmp (*ap, ct->c_partno)) - return 1; + for (ap = parts; *ap; ap++) { + len = strlen(*ap); + if (!strncmp (*ap, ct->c_partno, len) && + (!ct->c_partno[len] || ct->c_partno[len] == '.' )) + return 1; + } return 0; } @@ -94,7 +101,7 @@ make_intermediates (char *file) { char *cp; - for (cp = file + 1; cp = strchr(cp, '/'); cp++) { + for (cp = file + 1; (cp = strchr(cp, '/')); cp++) { struct stat st; *cp = '\0';