-/* $OpenBSD: gss-serv.c,v 1.12 2005/10/13 19:08:08 stevesk Exp $ */
+/* $OpenBSD: gss-serv.c,v 1.18 2006/07/02 18:36:47 stevesk Exp $ */
/*
* Copyright (c) 2001-2003 Simon Wilkinson. All rights reserved.
#include "log.h"
#include "channels.h"
#include "session.h"
-#include "servconf.h"
#include "xmalloc.h"
-#include "getput.h"
+#include "misc.h"
#include "ssh-gss.h"
&supported_mechs[i]->oid, oidset);
i++;
}
+
+ gss_release_oid_set(&min_status, &supported);
}
OM_uint32 offset;
OM_uint32 oidl;
- tok=ename->value;
+ tok = ename->value;
/*
* Check that ename is long enough for all of the fixed length
* header, and that the initial ID bytes are correct
*/
- if (ename->length<6 || memcmp(tok,"\x04\x01", 2)!=0)
+ if (ename->length < 6 || memcmp(tok, "\x04\x01", 2) != 0)
return GSS_S_FAILURE;
/*
* second without.
*/
- oidl = GET_16BIT(tok+2); /* length including next two bytes */
+ oidl = get_u16(tok+2); /* length including next two bytes */
oidl = oidl-2; /* turn it into the _real_ length of the variable OID */
/*
*/
if (tok[4] != 0x06 || tok[5] != oidl ||
ename->length < oidl+6 ||
- !ssh_gssapi_check_oid(ctx,tok+6,oidl))
+ !ssh_gssapi_check_oid(ctx, tok+6, oidl))
return GSS_S_FAILURE;
offset = oidl+6;
if (ename->length < offset+4)
return GSS_S_FAILURE;
- name->length = GET_32BIT(tok+offset);
+ name->length = get_u32(tok+offset);
offset += 4;
if (ename->length < offset+name->length)
return GSS_S_FAILURE;
name->value = xmalloc(name->length+1);
- memcpy(name->value,tok+offset,name->length);
+ memcpy(name->value, tok+offset, name->length);
((char *)name->value)[name->length] = 0;
return GSS_S_COMPLETE;
{
if (gssapi_client.store.filename != NULL) {
/* Unlink probably isn't sufficient */
- debug("removing gssapi cred file\"%s\"", gssapi_client.store.filename);
+ debug("removing gssapi cred file\"%s\"",
+ gssapi_client.store.filename);
unlink(gssapi_client.store.filename);
}
}
if (gssapi_client.store.envvar != NULL &&
gssapi_client.store.envval != NULL) {
-
debug("Setting %s to %s", gssapi_client.store.envvar,
- gssapi_client.store.envval);
+ gssapi_client.store.envval);
child_set_env(envp, envsizep, gssapi_client.store.envvar,
gssapi_client.store.envval);
}