normalise some inconsistent (but harmless) NULL pointer checks
spotted by the Stanford SATURN tool, via Isil Dillig;
ok markus@ deraadt@
+ - dtucker@cvs.openbsd.org 2006/08/29 12:02:30
+ [gss-genr.c]
+ Work around a problem in Heimdal that occurs when KRB5CCNAME file is
+ missing, by checking whether or not kerberos allocated us a context
+ before attempting to free it. Patch from Simon Wilkinson, tested by
+ biorn@, ok djm@
20060824
- (dtucker) [openbsd-compat/basename.c] Include errno.h.
-/* $OpenBSD: gss-genr.c,v 1.16 2006/08/18 22:41:29 djm Exp $ */
+/* $OpenBSD: gss-genr.c,v 1.17 2006/08/29 12:02:30 dtucker Exp $ */
/*
* Copyright (c) 2001-2006 Simon Wilkinson. All rights reserved.
major = ssh_gssapi_init_ctx(*ctx, 0, GSS_C_NO_BUFFER, &token,
NULL);
gss_release_buffer(&minor, &token);
- gss_delete_sec_context(&minor, &(*ctx)->context,
- GSS_C_NO_BUFFER);
+ if ((*ctx)->context != GSS_C_NO_CONTEXT)
+ gss_delete_sec_context(&minor, &(*ctx)->context,
+ GSS_C_NO_BUFFER);
}
if (GSS_ERROR(major))