diff --git a/exec/load/newsutil.js b/exec/load/newsutil.js
index ad34063e583564579fe590d599ed5dc3ff2a9045..564f9bc3ef8962029fffaf7971de62efd9d13a07 100755
--- a/exec/load/newsutil.js
+++ b/exec/load/newsutil.js
@@ -56,12 +56,15 @@ function write_news_header(hdr,writeln)
 		writeln("X-FTN-CHRS: " + hdr.ftn_charset);
 
 	var content_type;
+	var user_agent;
 
 	if(hdr.field_list!=undefined) {
 		for(var i in hdr.field_list) {
 			if(hdr.field_list[i].type==RFC822HEADER) {
 				if(hdr.field_list[i].data.toLowerCase().indexOf("content-type:")==0)
 					content_type = hdr.field_list[i].data;
+				if(hdr.field_list[i].data.toLowerCase().indexOf("user-agent:")==0)
+					user_agent = hdr.field_list[i].data;
 				writeln(hdr.field_list[i].data);
 			} else if(hdr.field_list[i].type==FIDOCTRL) {
 				writeln("X-FTN-Kludge: " + hdr.field_list[i].data);
@@ -72,6 +75,10 @@ function write_news_header(hdr,writeln)
 			}
 		}
 	}
+
+	if(user_agent === undefined && hdr.editor !== undefined)
+		writeln("User-Agent: " + hdr.editor);
+
 	if(content_type==undefined) {
 		var charset = hdr.text_charset;
 		if(!charset) {
@@ -165,6 +172,9 @@ function parse_news_header(hdr, line)
 			if(!hdr.reply_id && data.length)
 				hdr.reply_id=data.match(/(?:\S+\s)*(\S+)$/)[1];
 			break;
+		case "user-agent":
+			hdr.editor=data;
+			break;
 		case "x-gateway":
 			hdr.gateway=data;
 			break;