summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--sysdep/bsd/setkey.h6
1 files changed, 4 insertions, 2 deletions
diff --git a/sysdep/bsd/setkey.h b/sysdep/bsd/setkey.h
index 3bcd8623..8a1bc9ad 100644
--- a/sysdep/bsd/setkey.h
+++ b/sysdep/bsd/setkey.h
@@ -160,12 +160,14 @@ sk_set_md5_in_sasp_db(sock *s, ip_addr local, ip_addr remote, struct iface *ifa,
if (len > TCP_KEYLEN_MAX)
ERR_MSG("The password for TCP MD5 Signature is too long");
- if (setkey_md5(&src, &dst, pxlen, passwd, SADB_ADD) < 0)
+ if ((setkey_md5(&src, &dst, pxlen, passwd, SADB_ADD) < 0) ||
+ (setkey_md5(&dst, &src, pxlen, passwd, SADB_ADD) < 0))
ERR_MSG("Cannot add TCP-MD5 password into the IPsec SA/SP database");
}
else
{
- if (setkey_md5(&src, &dst, pxlen, NULL, SADB_DELETE) < 0)
+ if ((setkey_md5(&src, &dst, pxlen, NULL, SADB_DELETE) < 0) ||
+ (setkey_md5(&dst, &src, pxlen, NULL, SADB_DELETE) < 0))
ERR_MSG("Cannot delete TCP-MD5 password from the IPsec SA/SP database");
}
return 0;