svn commit: samba r12298 - in trunk/source/libads: .
jra at samba.org
jra at samba.org
Sat Dec 17 01:01:55 GMT 2005
Author: jra
Date: 2005-12-17 01:01:51 +0000 (Sat, 17 Dec 2005)
New Revision: 12298
WebSVN: http://websvn.samba.org/cgi-bin/viewcvs.cgi?view=rev&root=samba&rev=12298
Log:
Added gd's error checking to the sasl code.
Jeremy.
Modified:
trunk/source/libads/sasl.c
Changeset:
Modified: trunk/source/libads/sasl.c
===================================================================
--- trunk/source/libads/sasl.c 2005-12-17 00:43:34 UTC (rev 12297)
+++ trunk/source/libads/sasl.c 2005-12-17 01:01:51 UTC (rev 12298)
@@ -294,16 +294,28 @@
/* we need to fetch a service ticket as the ldap user in the
servers realm, regardless of our realm */
asprintf(&sname, "ldap/%s@%s", ads->config.ldap_server_name, ads->config.realm);
- krb5_init_context(&ctx);
- krb5_set_default_tgs_ktypes(ctx, enc_types);
- krb5_parse_name(ctx, sname, &principal);
+
+ initialize_krb5_error_table();
+ status = ADS_ERROR_KRB5(krb5_init_context(&ctx));
+ if (!ADS_ERR_OK(status)) {
+ return status;
+ }
+ status = ADS_ERROR_KRB5(krb5_set_default_tgs_ktypes(ctx, enc_types));
+ if (!ADS_ERR_OK(status)) {
+ return status;
+ }
+ status = ADS_ERROR_KRB5(krb5_parse_name(ctx, sname, &principal));
+ if (!ADS_ERR_OK(status)) {
+ return status;
+ }
+
free(sname);
krb5_free_context(ctx);
input_name.value = &principal;
input_name.length = sizeof(principal);
- gss_rc = gss_import_name(&minor_status,&input_name,&nt_principal, &serv_name);
+ gss_rc = gss_import_name(&minor_status, &input_name, &nt_principal, &serv_name);
if (gss_rc) {
return ADS_ERROR_GSS(gss_rc, minor_status);
}
@@ -375,8 +387,9 @@
p = (uint8 *)output_token.value;
+#if 0
file_save("sasl_gssapi.dat", output_token.value, output_token.length);
-
+#endif
max_msg_size = (p[1]<<16) | (p[2]<<8) | p[3];
sec_layer = *p;
More information about the samba-cvs
mailing list