store_switch(CT ct)
{
switch (ct->c_type) {
- case CT_MULTIPART:
- return store_multi(ct);
+ case CT_MULTIPART:
+ return store_multi(ct);
+ break;
+
+ case CT_MESSAGE:
+ switch (ct->c_subtype) {
+ case MESSAGE_PARTIAL:
+ return store_partial(ct);
break;
- case CT_MESSAGE:
- switch (ct->c_subtype) {
- case MESSAGE_PARTIAL:
- return store_partial(ct);
- break;
-
- case MESSAGE_EXTERNAL:
- return store_external(ct);
-
- case MESSAGE_RFC822:
- default:
- return store_generic(ct);
- break;
- }
- break;
-
- case CT_APPLICATION:
- return store_application(ct);
- break;
-
- case CT_TEXT:
- case CT_AUDIO:
- case CT_IMAGE:
- case CT_VIDEO:
- return store_generic(ct);
- break;
+ case MESSAGE_EXTERNAL:
+ return store_external(ct);
+ case MESSAGE_RFC822:
default:
- adios(NULL, "unknown content type %d", ct->c_type);
+ return store_generic(ct);
break;
+ }
+ break;
+
+ case CT_APPLICATION:
+ return store_application(ct);
+ break;
+
+ case CT_TEXT:
+ case CT_AUDIO:
+ case CT_IMAGE:
+ case CT_VIDEO:
+ return store_generic(ct);
+ break;
+
+ default:
+ adios(NULL, "unknown content type %d", ct->c_type);
+ break;
}
return OK; /* NOT REACHED */
for (;;) {
switch (cc = read(fd, buffer, sizeof(buffer))) {
- case NOTOK:
- advise(file, "error reading content from");
- break;
+ case NOTOK:
+ advise(file, "error reading content from");
+ break;
- case OK:
- break;
+ case OK:
+ break;
- default:
- fwrite(buffer, sizeof(*buffer),
- cc, fp);
- continue;
+ default:
+ fwrite(buffer, sizeof(*buffer), cc, fp);
+ continue;
}
break;
}
*/
if (filterstate) {
switch (buffer[0]) {
- case ' ':
- case '\t':
- if (filterstate < 0)
- buffer[0] = 0;
- break;
+ case ' ':
+ case '\t':
+ if (filterstate < 0)
+ buffer[0] = 0;
+ break;
- case '\n':
- filterstate = 0;
- break;
+ case '\n':
+ filterstate = 0;
+ break;
- default:
- if (!uprf(buffer, XXX_FIELD_PRF) && !uprf(buffer, VRSN_FIELD) && !uprf(buffer, "Subject:") && !uprf(buffer, "Encrypted:") && !uprf(buffer, "Message-ID:")) {
- filterstate = -1;
- buffer[0] = 0;
- break;
- }
- filterstate = 1;
+ default:
+ if (!uprf(buffer, XXX_FIELD_PRF) && !uprf(buffer, VRSN_FIELD) && !uprf(buffer, "Subject:") && !uprf(buffer, "Encrypted:") && !uprf(buffer, "Message-ID:")) {
+ filterstate = -1;
+ buffer[0] = 0;
break;
+ }
+ filterstate = 1;
+ break;
}
}
fputs(buffer, fp);
/* We are processing a storage escape */
if (*cp == '%') {
switch (*++cp) {
- case 'a':
- /*
- ** Insert parameters from Content-Type.
- ** This is only valid for '|' commands.
- */
- if (buffer[0] != '|' && buffer[0] != '!') {
- *bp++ = *--cp;
- *bp = '\0';
- buflen--;
- continue;
- } else {
- char **ap, **ep;
- char *s = "";
-
- for (ap = ci->ci_attrs, ep = ci->ci_values;
- *ap; ap++, ep++) {
- snprintf(bp, buflen, "%s%s=\"%s\"", s, *ap, *ep);
- len = strlen(bp);
- bp += len;
- buflen -= len;
- s = " ";
- }
+ case 'a':
+ /*
+ ** Insert parameters from Content-Type.
+ ** This is only valid for '|' commands.
+ */
+ if (buffer[0] != '|' && buffer[0] != '!') {
+ *bp++ = *--cp;
+ *bp = '\0';
+ buflen--;
+ continue;
+ } else {
+ char **ap, **ep;
+ char *s = "";
+
+ for (ap=ci->ci_attrs, ep=ci->ci_values;
+ *ap; ap++, ep++) {
+ snprintf(bp, buflen,
+ "%s%s=\"%s\"",
+ s, *ap, *ep);
+ len = strlen(bp);
+ bp += len;
+ buflen -= len;
+ s = " ";
}
- break;
+ }
+ break;
- case 'm':
- /* insert message number */
- snprintf(bp, buflen, "%s", mhbasename(ct->c_file));
- break;
+ case 'm':
+ /* insert message number */
+ snprintf(bp, buflen, "%s",
+ mhbasename(ct->c_file));
+ break;
- case 'P':
- /* insert part number with leading dot */
- if (ct->c_partno)
- snprintf(bp, buflen, ".%s", ct->c_partno);
- break;
+ case 'P':
+ /* insert part number with leading dot */
+ if (ct->c_partno)
+ snprintf(bp, buflen, ".%s",
+ ct->c_partno);
+ break;
- case 'p':
- /* insert part number withouth leading dot */
- if (ct->c_partno)
- strncpy(bp, ct->c_partno, buflen);
- break;
+ case 'p':
+ /* insert part number withouth leading dot */
+ if (ct->c_partno)
+ strncpy(bp, ct->c_partno, buflen);
+ break;
- case 't':
- /* insert content type */
- strncpy(bp, ci->ci_type, buflen);
- break;
+ case 't':
+ /* insert content type */
+ strncpy(bp, ci->ci_type, buflen);
+ break;
- case 's':
- /* insert content subtype */
- strncpy(bp, ci->ci_subtype, buflen);
- break;
+ case 's':
+ /* insert content subtype */
+ strncpy(bp, ci->ci_subtype, buflen);
+ break;
- case '%':
- /* insert the character % */
- goto raw;
+ case '%':
+ /* insert the character % */
+ goto raw;
- default:
- *bp++ = *--cp;
- *bp = '\0';
- buflen--;
- continue;
+ default:
+ *bp++ = *--cp;
+ *bp = '\0';
+ buflen--;
+ continue;
}
/* Advance bp and decrement buflen */