diff --git a/exec/load/binkp.js b/exec/load/binkp.js
index 4ea053535d14336200f3881c2ff5b0c02b2aed1c..34156e04c05499b6a7e41f017ac265a60e31fbae 100644
--- a/exec/load/binkp.js
+++ b/exec/load/binkp.js
@@ -209,7 +209,6 @@ BinkP.prototype.connect = function(addr, password, auth_cb, port)
 
 	if (password === undefined)
 		password = '-';
-
 	if (port === undefined)
 		port = 24554;
 
@@ -254,7 +253,8 @@ BinkP.prototype.connect = function(addr, password, auth_cb, port)
 			return false;
 	}
 
-	auth_cb(this.authenticated, this);
+	if (auth_cb !== undefined)
+		auth_cb(this.authenticated, this);
 
 	if (js.terminated) {
 		this.close();
@@ -702,7 +702,11 @@ BinkP.prototype.recvFrame = function(timeout)
 					else {
 						this.remote_addrs = [];
 						ret.data.split(/ /).forEach(function(addr) {
-							this.remote_addrs.push(FIDO.parse_addr(addr, this.default_zone));
+							try {
+								this.remote_addrs.push(FIDO.parse_addr(addr, this.default_zone));
+							}
+							catch (e) {
+							}
 						}, this);
 					}
 					break;