Mailing List Archive

svn commit: vpnc r470 - in /branches/vpnc-nortel: isakmp-pkt.c vpnc.c
Author: Antonio Borneo
Date: Wed Nov 9 03:01:50 2011
New Revision: 470

Log:
Stefan Seyfried <seife+obs@b1-systems.com>

Fix valgrind's memleak complaints (at least the ones I
found) in Nortel branch

Modified:
branches/vpnc-nortel/isakmp-pkt.c
branches/vpnc-nortel/vpnc.c

Modified: branches/vpnc-nortel/isakmp-pkt.c
==============================================================================
--- branches/vpnc-nortel/isakmp-pkt.c (original)
+++ branches/vpnc-nortel/isakmp-pkt.c Wed Nov 9 03:01:50 2011
@@ -468,6 +468,7 @@
case ISAKMP_PAYLOAD_N:
free(p->u.n.spi);
free(p->u.n.data);
+ free_isakmp_attributes(p->u.n.attributes);
break;
case ISAKMP_PAYLOAD_D:
if (p->u.d.spi) {

Modified: branches/vpnc-nortel/vpnc.c
==============================================================================
--- branches/vpnc-nortel/vpnc.c (original)
+++ branches/vpnc-nortel/vpnc.c Wed Nov 9 03:01:50 2011
@@ -2719,7 +2719,7 @@
// Nortel specific version
static struct isakmp_payload *make_our_sa_ipsec_nortel(struct sa_block *s, struct isakmp_payload *transform, int proposal_number)
{
- struct isakmp_payload *r = new_isakmp_payload(ISAKMP_PAYLOAD_SA);
+ struct isakmp_payload *r;
struct isakmp_payload *p = NULL, *pn;
struct isakmp_attribute *a;
int dh_grp = get_dh_group_ipsec(s->ipsec.do_pfs)->ipsec_sa_id;
@@ -2767,7 +2767,7 @@

static struct isakmp_payload *make_our_sa_ipsec(struct sa_block *s)
{
- struct isakmp_payload *r = new_isakmp_payload(ISAKMP_PAYLOAD_SA);
+ struct isakmp_payload *r;
struct isakmp_payload *p = NULL, *pn;
struct isakmp_attribute *a;
int dh_grp = get_dh_group_ipsec(s->ipsec.do_pfs)->ipsec_sa_id;
@@ -2777,12 +2777,6 @@
r = new_isakmp_payload(ISAKMP_PAYLOAD_SA);
r->u.sa.doi = ISAKMP_DOI_IPSEC;
r->u.sa.situation = ISAKMP_IPSEC_SIT_IDENTITY_ONLY;
- r->u.sa.proposals = new_isakmp_payload(ISAKMP_PAYLOAD_P);
- r->u.sa.proposals->u.p.spi_size = 4;
- r->u.sa.proposals->u.p.spi = xallocc(4);
- /* The sadb_sa_spi field is already in network order. */
- memcpy(r->u.sa.proposals->u.p.spi, &s->ipsec.rx.spi, 4);
- r->u.sa.proposals->u.p.prot_id = ISAKMP_IPSEC_PROTO_IPSEC_ESP;
for (crypt = 0; supp_crypt[crypt].name != NULL; crypt++) {
keylen = supp_crypt[crypt].keylen;
for (hash = 0; supp_hash[hash].name != NULL; hash++) {

_______________________________________________
vpnc-devel mailing list
vpnc-devel@unix-ag.uni-kl.de
https://lists.unix-ag.uni-kl.de/mailman/listinfo/vpnc-devel
http://www.unix-ag.uni-kl.de/~massar/vpnc/