Module Name: src Committed By: christos Date: Tue May 19 15:16:01 UTC 2015
Modified Files: src/crypto/dist/ipsec-tools/src/racoon: gssapi.c Log Message: Detect error earlier to avoid memory leak. XXX: pullup-7 To generate a diff of this commit: cvs rdiff -u -r1.5 -r1.6 src/crypto/dist/ipsec-tools/src/racoon/gssapi.c Please note that diffs are not public domain; they are subject to the copyright notices on the relevant files.
Modified files: Index: src/crypto/dist/ipsec-tools/src/racoon/gssapi.c diff -u src/crypto/dist/ipsec-tools/src/racoon/gssapi.c:1.5 src/crypto/dist/ipsec-tools/src/racoon/gssapi.c:1.6 --- src/crypto/dist/ipsec-tools/src/racoon/gssapi.c:1.5 Tue May 19 11:14:25 2015 +++ src/crypto/dist/ipsec-tools/src/racoon/gssapi.c Tue May 19 11:16:00 2015 @@ -1,4 +1,4 @@ -/* $NetBSD: gssapi.c,v 1.5 2015/05/19 15:14:25 christos Exp $ */ +/* $NetBSD: gssapi.c,v 1.6 2015/05/19 15:16:00 christos Exp $ */ /* $KAME: gssapi.c,v 1.19 2001/04/03 15:51:55 thorpej Exp $ */ @@ -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"); @@ -202,10 +207,6 @@ gssapi_init(struct ph1handle *iph1) gssapi_set_state(iph1, gps); - if (iph1->rmconf == NULL) { - plog(LLV_ERROR, LOCATION, NULL, "no remote config\n"); - return -1; - } if (iph1->rmconf->proposal->gssid != NULL) { id_token.length = iph1->rmconf->proposal->gssid->l; id_token.value = iph1->rmconf->proposal->gssid->v;