From 39925f090c21ab571ebc6ec250696f7f7093a2a6 Mon Sep 17 00:00:00 2001 
 | 
From: Will Page <Will.Page@ni.com> 
 | 
Date: Wed, 30 Aug 2017 18:14:00 -0700 
 | 
Subject: [PATCH 1/1] Reduce lifetime value to widely-compatible value 
 | 
  
 | 
Current proposed lifetime value (2147483 seconds, which equates to 
 | 
MAXINT ms, or ~25 days) is rejected by Fortigate vpn devices because 
 | 
"peer SA proposal does not match local policy".  It seems default 
 | 
policy for these devices constrains lifetime where similar VPN devices 
 | 
don't. 
 | 
  
 | 
Reducing the lifetime from its current value to 28800 (exactly 8 hours) 
 | 
causes it to start working with fortigate devices. 
 | 
--- 
 | 
 vpnc.c | 4 ++-- 
 | 
 1 file changed, 2 insertions(+), 2 deletions(-) 
 | 
  
 | 
diff --git a/vpnc.c b/vpnc.c 
 | 
index 36dd0f3..3e0fcba 100644 
 | 
--- a/vpnc.c 
 | 
+++ b/vpnc.c 
 | 
@@ -1135,7 +1135,7 @@ static struct isakmp_attribute *make_transform_ike(int dh_group, int crypt, int 
 | 
     a->af = isakmp_attr_lots; 
 | 
     a->u.lots.length = 4; 
 | 
     a->u.lots.data = xallocc(a->u.lots.length); 
 | 
-    *((uint32_t *) a->u.lots.data) = htonl(2147483); 
 | 
+    *((uint32_t *) a->u.lots.data) = htonl(28800); 
 | 
     a = new_isakmp_attribute_16(IKE_ATTRIB_LIFE_TYPE, IKE_LIFE_TYPE_SECONDS, a); 
 | 
     a = new_isakmp_attribute_16(IKE_ATTRIB_AUTH_METHOD, auth, a); 
 | 
     a = new_isakmp_attribute_16(IKE_ATTRIB_GROUP_DESC, dh_group, a); 
 | 
@@ -2561,7 +2561,7 @@ static struct isakmp_attribute *make_transform_ipsec(struct sa_block *s, int dh_ 
 | 
     a->af = isakmp_attr_lots; 
 | 
     a->u.lots.length = 4; 
 | 
     a->u.lots.data = xallocc(a->u.lots.length); 
 | 
-    *((uint32_t *) a->u.lots.data) = htonl(2147483); 
 | 
+    *((uint32_t *) a->u.lots.data) = htonl(28800); 
 | 
     a = new_isakmp_attribute_16(ISAKMP_IPSEC_ATTRIB_SA_LIFE_TYPE, IPSEC_LIFE_SECONDS, a); 
 | 
  
 | 
     if (dh_group) 
 | 
--  
 | 
2.7.4 
 |