--- mimedefang.c.original 2005-12-20 12:05:17.000000000 -0800 +++ mimedefang.c 2005-12-20 12:14:09.000000000 -0800 @@ -1405,6 +1405,28 @@ } break; + case 'N': + /* Insert a header in position count */ + split_on_space3(rptr + 1, &hdr, &count, &val); + if (hdr && val && count) { + percent_decode((unsigned char *) hdr); + percent_decode((unsigned char *) count); + percent_decode((unsigned char *) val); + if (sscanf(count, "%d", &j) != 1 || j < 0) { + j = 0; /* 0 means add header at the top */ + } +#ifdef SMFIR_INSHEADER + MD_SMFI_TRY(smfi_insheader, (ctx, j, hdr, val)); +#else + syslog(LOG_WARNING, + "%s: No smfi_insheader, using smfi_addheader", + data->qid); + + MD_SMFI_TRY(smfi_addheader, (ctx, hdr, val)); +#endif + } + break; + case 'I': /* Change a header */ split_on_space3(rptr+1, &hdr, &count, &val);