CI ci = &ct->c_ctinfo;
char *boundary = "", *cp;
- if ((cp = get_param(ci->ci_first_pm, "boundary, '-', 0)))
+ if ((cp = get_param(ci->ci_first_pm, "boundary", '-', 0)))
boundary = cp;
- }
/*
* Output all header fields for this content
static int
writeExternalBody (CT ct, FILE *out)
{
- char *cp;
+ char *cp, *dp;
struct exbody *e = (struct exbody *) ct->c_ctparams;
putc ('\n', out);
switch (*++cp) {
case 'I':
if (ct2->c_id) {
- char *dp = trimcpy (ct2->c_id);
+ dp = trimcpy (ct2->c_id);
fputs (dp, out);
free (dp);
continue;
case 'N':
- for (pm = ci2->ci_first_pm; pm; pm = pm->pm_next)
- if (!strcasecmp (pm->pm_name, "name")) {
- fprintf (out, "%s", pm->pm_value);
- break;
- }
+ dp = get_param(ci2->ci_first_pm, "name", '_', 0);
+ if (dp) {
+ fputs (dp, out);
+ free (dp);
+ }
continue;
case 'T':
fprintf (out, "%s/%s", ci2->ci_type, ci2->ci_subtype);
- for (pm = ci2->ci_first_pm; pm; pm = pm->pm_next)
- fprintf (out, "; %s=\"%s\"", pm->pm_name, pm->pm_value);
+ dp = output_params(strlen(ci2->ci_type) +
+ strlen(ci2->ci_subtype) + 1,
+ ci2->ci_first_pm, NULL, 0);
+ if (dp) {
+ fputs (dp, out);
+ free (dp);
+ }
continue;
case 'n':