Update outlook.js to enable custom mail header with folding (RFC 5322)
I'm currently unable to add custom headers which are longer than 998 characters but conform to RFC 5322 (folding) to apply an RFC 7444 label.
outlook.js has the total header size limit hard-coded to 998 (which actually only applies per header-line according to RFC 5322). Removing this hard-coded limit still causes tha call to fai.
Expected result
Sample header data (folded,
binding-type="urn:nato:stanag:4778:bindinginformation:1:0";marking="CIAV UNCLASSIFIED Releasable to AUS AUT CHE GEO MOL NZL TUN UKR EEAS";
binding-data-object*0="PEJpbmRpbmdJbmZvcm1hdGlvbj48TWV0YWRhdGFCaW5k";
binding-data-object*1="aW5nQ29udGFpbmVyPjxNZXRhZGF0YUJpbmRpbmc+PE1l";
binding-data-object*2="dGFkYXRhPjxvcmlnaW5hdG9yQ29uZmlkZW50aWFsaXR5";
binding-data-object*3="TGFiZWw+PFBvbGljeUlkZW50aWZpZXI+Q0lBVjwvUG9s";
binding-data-object*4="aWN5SWRlbnRpZmllcj4KPENvbmZpZGVudGlhbGl0eUlu";
binding-data-object*5="Zm9ybWF0aW9uPjxDbGFzc2lmaWNhdGlvbj5VTkNMQVNT";
binding-data-object*6="SUZJRUQ8L0NsYXNzaWZpY2F0aW9uPgo8Q2F0ZWdvcnk+";
binding-data-object*7="PHRhZ05hbWU+UmVsZWFzYWJsZSBUbzwvdGFnTmFtZT4K";
binding-data-object*8="PEdlbmVyaWNWYWx1ZT5BVVM8L0dlbmVyaWNWYWx1ZT4K";
binding-data-object*9="PEdlbmVyaWNWYWx1ZT5BVVQ8L0dlbmVyaWNWYWx1ZT4K";
binding-data-object*10="PEdlbmVyaWNWYWx1ZT5DSEU8L0dlbmVyaWNWYWx1ZT4K";
binding-data-object*11="PEdlbmVyaWNWYWx1ZT5HRU88L0dlbmVyaWNWYWx1ZT4K";
binding-data-object*12="PEdlbmVyaWNWYWx1ZT5NT0w8L0dlbmVyaWNWYWx1ZT4K";
binding-data-object*13="PEdlbmVyaWNWYWx1ZT5OWkw8L0dlbmVyaWNWYWx1ZT4K";
binding-data-object*14="PEdlbmVyaWNWYWx1ZT5UVU48L0dlbmVyaWNWYWx1ZT4K";
binding-data-object*15="PEdlbmVyaWNWYWx1ZT5VS1I8L0dlbmVyaWNWYWx1ZT4K";
binding-data-object*16="PEdlbmVyaWNWYWx1ZT5FRUFTPC9HZW5lcmljVmFsdWU+";
binding-data-object*17="CjwvQ2F0ZWdvcnk+PC9Db25maWRlbnRpYWxpdHlJbmZv";
binding-data-object*18="cm1hdGlvbj48L29yaWdpbmF0b3JDb25maWRlbnRpYWxp";
binding-data-object*19="dHlMYWJlbD48L01ldGFkYXRhPjwvTWV0YWRhdGFCaW5k";
binding-data-object*20="aW5nPjwvTWV0YWRhdGFCaW5kaW5nQ29udGFpbmVyPjwv";
binding-data-object*21="QmluZGluZ0luZm9ybWF0aW9uPg==";
Sample JS code
mailboxItem.internetHeaders.setAsync({'Binding-Data': bindingData},
function (asyncResult) {
if (asyncResult.status === Office.AsyncResultStatus.Succeeded) {
mailboxItem.saveAsync() // check if required
console.log("success")
callback(true);
} else {
console.log("error")
callback(false);
}
}
);