diff --git a/exec/sendmail.js b/exec/sendmail.js
index d9144b51cd6f4266a83f6c2c427750de4b8eb4eb..cffb23e27d92c17f4205c468cc2d6846afe0e80f 100755
--- a/exec/sendmail.js
+++ b/exec/sendmail.js
@@ -122,17 +122,30 @@ while((line=readln()) != undefined) {
 	}
 }
 
+// Sanity-check the from_net_addr (SENDERNETADDR) field
+if(typeof hdr.from_net_addr == "string") {
+	if(hdr.from_net_addr.indexOf('@') < 0)
+		hdr.from_net_addr += '@';
+	if(hdr.from_net_addr.indexOf('@') == hdr.from_net_addr.length - 1)
+		hdr.from_net_addr += system.inet_addr;
+}
+log.writeln("---");
+log.writeln("hdr = " + JSON.stringify(hdr, null, 4));
+log.writeln("rcpt_list = " + JSON.stringify(rcpt_list, null, 4));
+
+if(rcpt_list.length < 1) {
+	writeln("No recipients specified!");
+	exit(1);
+}
 var msgbase = new MsgBase('mail');
 if(!msgbase.open()) {
 	writeln("Cannot send email (open error)!");
-	exit();
+	exit(1);
 }
 if(!msgbase.save_msg(hdr, body, rcpt_list)) {
 	writeln("Cannot send email: " + msgbase.error);
-	exit();
+	exit(1);
 }
 
-log.writeln("---");
-log.writeln("hdr = " + JSON.stringify(hdr, null, 4));
-log.writeln("rcpt_list = " + JSON.stringify(rcpt_list, null, 4));
+log.writeln("Sent successfully");
 log.writeln("===");