switch (ct->c_type) {
case CT_MULTIPART:
return list_multi (ct, toplevel, realsize, verbose, debug);
- break;
case CT_MESSAGE:
switch (ct->c_subtype) {
case MESSAGE_PARTIAL:
return list_partial (ct, toplevel, realsize, verbose, debug);
- break;
case MESSAGE_EXTERNAL:
return list_external (ct, toplevel, realsize, verbose, debug);
- break;
case MESSAGE_RFC822:
default:
return list_content (ct, toplevel, realsize, verbose, debug);
- break;
}
- break;
case CT_TEXT:
case CT_AUDIO:
case CT_IMAGE:
case CT_VIDEO:
return list_content (ct, toplevel, realsize, verbose, debug);
- break;
case CT_APPLICATION:
return list_application (ct, toplevel, realsize, verbose, debug);
- break;
default:
/* list_debug (ct); */
adios (NULL, "unknown content type %d", ct->c_type);
- break;
}
return 0; /* NOT REACHED */
printf ("\n");
if (verbose) {
- char **ap, **ep;
CI ci = &ct->c_ctinfo;
+ PM pm;
- for (ap = ci->ci_attrs, ep = ci->ci_values; *ap; ap++, ep++)
- printf ("\t %s=\"%s\"\n", *ap, *ep);
+ for (pm = ci->ci_first_pm; pm; pm = pm->pm_next) {
+ printf ("\t %s=\"%s\"\n", pm->pm_name,
+ get_param_value(pm, '?'));
+ }
/*
* If verbose, print any RFC-822 comments in the
static int
list_debug (CT ct)
{
- char **ap, **ep;
CI ci = &ct->c_ctinfo;
+ PM pm;
fflush (stdout);
fprintf (stderr, " partno \"%s\"\n", empty (ct->c_partno));
/* print parsed parameters attached to content type */
fprintf (stderr, " parameters\n");
- for (ap = ci->ci_attrs, ep = ci->ci_values; *ap; ap++, ep++)
- fprintf (stderr, " %s=\"%s\"\n", *ap, *ep);
+ for (pm = ci->ci_first_pm; pm; pm = pm->pm_next)
+ fprintf (stderr, " %s=\"%s\"\n", pm->pm_name,
+ get_param_value(pm, '?'));
/* print internal flags for type/subtype */
fprintf (stderr, " type 0x%x subtype 0x%x params 0x%x\n",