mirror of
https://github.com/novatiq/packages.git
synced 2026-04-30 07:28:39 +01:00
ipsec-tools: fix null dereference in racoon
* add a patch to fix a null pointer dereference in src/racoon/gssapi.c (CVE-2015-4047) * refresh patches * bumb release number Signed-off-by: Nicolas Thill <nico@openwrt.org>
This commit is contained in:
@@ -9,7 +9,7 @@
|
||||
#if defined(__APPLE__) && defined(__MACH__)
|
||||
#include <util.h>
|
||||
#endif
|
||||
@@ -1661,7 +1661,8 @@ isakmp_cfg_accounting_system(port, raddr
|
||||
@@ -1664,7 +1664,8 @@ isakmp_cfg_accounting_system(port, raddr
|
||||
int inout;
|
||||
{
|
||||
int error = 0;
|
||||
@@ -19,7 +19,7 @@
|
||||
char addr[NI_MAXHOST];
|
||||
|
||||
if (usr == NULL || usr[0]=='\0') {
|
||||
@@ -1670,34 +1671,37 @@ isakmp_cfg_accounting_system(port, raddr
|
||||
@@ -1673,34 +1674,37 @@ isakmp_cfg_accounting_system(port, raddr
|
||||
return -1;
|
||||
}
|
||||
|
||||
|
||||
@@ -1,6 +1,6 @@
|
||||
--- a/src/racoon/ipsec_doi.c
|
||||
+++ b/src/racoon/ipsec_doi.c
|
||||
@@ -3582,8 +3582,8 @@ ipsecdoi_checkid1(iph1)
|
||||
@@ -3581,8 +3581,8 @@ ipsecdoi_checkid1(iph1)
|
||||
iph1->approval->authmethod == OAKLEY_ATTR_AUTH_METHOD_PSKEY) {
|
||||
if (id_b->type != IPSECDOI_ID_IPV4_ADDR
|
||||
&& id_b->type != IPSECDOI_ID_IPV6_ADDR) {
|
||||
|
||||
+1
-3
@@ -1,8 +1,6 @@
|
||||
diff --git a/configure.ac b/configure.ac
|
||||
index 8506245..eca8895 100644
|
||||
--- a/configure.ac
|
||||
+++ b/configure.ac
|
||||
@@ -724,7 +724,8 @@ case $host in
|
||||
@@ -732,7 +732,8 @@ case $host in
|
||||
],
|
||||
[AC_MSG_RESULT(yes)
|
||||
AC_DEFINE([HAVE_POLICY_FWD], [], [Have forward policy])],
|
||||
@@ -0,0 +1,16 @@
|
||||
Fix null dereference in racoon/gssapi.c (CVE-2015-4047)
|
||||
|
||||
--- a/src/racoon/gssapi.c
|
||||
+++ b/src/racoon/gssapi.c
|
||||
@@ -192,6 +192,11 @@ gssapi_init(struct ph1handle *iph1)
|
||||
gss_name_t princ, canon_princ;
|
||||
OM_uint32 maj_stat, min_stat;
|
||||
|
||||
+ if (iph1->rmconf == NULL) {
|
||||
+ plog(LLV_ERROR, LOCATION, NULL, "no remote config\n");
|
||||
+ return -1;
|
||||
+ }
|
||||
+
|
||||
gps = racoon_calloc(1, sizeof (struct gssapi_ph1_state));
|
||||
if (gps == NULL) {
|
||||
plog(LLV_ERROR, LOCATION, NULL, "racoon_calloc failed\n");
|
||||
Reference in New Issue
Block a user