X-Git-Url: https://git.sur5r.net/?a=blobdiff_plain;f=servers%2Fslapd%2Fkerberos.c;h=e43bd0b45c1289355d134a2670ccc6aa1b3b3fa2;hb=6661a26e9bc2f2fa8dd14f573a9d72acd0c5bfae;hp=2fe5afe2f5f1fadbf07522306dae7ef14459af07;hpb=3c598e89fb34a892d369a138daa8c3314294493c;p=openldap diff --git a/servers/slapd/kerberos.c b/servers/slapd/kerberos.c index 2fe5afe2f5..e43bd0b45c 100644 --- a/servers/slapd/kerberos.c +++ b/servers/slapd/kerberos.c @@ -2,7 +2,7 @@ /* $OpenLDAP$ */ /* This work is part of OpenLDAP Software . * - * Copyright 1998-2004 The OpenLDAP Foundation. + * Copyright 1998-2008 The OpenLDAP Foundation. * All rights reserved. * * Redistribution and use in source and binary forms, with or without @@ -41,6 +41,10 @@ krbv4_ldap_auth( Debug( LDAP_DEBUG_TRACE, "=> kerberosv4_ldap_auth\n", 0, 0, 0 ); + if( cred->len > sizeof(ktxt->dat) ) { + return LDAP_OTHER; + } + AC_MEMCPY( ktxt->dat, cred->bv_val, cred->bv_len ); ktxt->length = cred->bv_len;