svn commit: lorikeet r131 - in trunk/heimdal: . lib/hdb
metze at samba.org
metze at samba.org
Fri Nov 19 12:58:09 GMT 2004
Author: metze
Date: 2004-11-19 12:58:08 +0000 (Fri, 19 Nov 2004)
New Revision: 131
WebSVN: http://websvn.samba.org/cgi-bin/viewcvs.cgi?view=rev&root=lorikeet&rev=131
Log:
- we don't need ldb_proto.h anymore
the new ldb.h freom current samba has the prototypes
btw: to build the libldb.so* do this in samba4
./configure --enable-experimental
make proto library_libldb
cp -d bin/libldb.so* /usr/lib/
cp lib/ldb/include/ldb.h /usr/include/
- fix some princ with and without '@REALM' cases
metze
Modified:
trunk/heimdal/configure.in
trunk/heimdal/lib/hdb/hdb-ldb.c
Changeset:
Modified: trunk/heimdal/configure.in
===================================================================
--- trunk/heimdal/configure.in 2004-11-15 20:22:04 UTC (rev 130)
+++ trunk/heimdal/configure.in 2004-11-19 12:58:08 UTC (rev 131)
@@ -72,7 +72,6 @@
#include <stdarg.h>
#include <ldb.h>
-#include <ldb_proto.h>
],
[-lldb],,,LDB)
Modified: trunk/heimdal/lib/hdb/hdb-ldb.c
===================================================================
--- trunk/heimdal/lib/hdb/hdb-ldb.c 2004-11-15 20:22:04 UTC (rev 130)
+++ trunk/heimdal/lib/hdb/hdb-ldb.c 2004-11-19 12:58:08 UTC (rev 131)
@@ -42,7 +42,6 @@
#include <stdarg.h>
#include <ldb.h>
-#include <ldb_proto.h>
#include "hdb-ldb.h"
@@ -235,9 +234,20 @@
krb5_free_principal(context, ent->principal);
- asprintf(&unparsed_name_with_realm, "%s@%s", unparsed_name, realm);
+ if (!strchr(unparsed_name, '@')) {
+ asprintf(&unparsed_name_with_realm, "%s@%s", unparsed_name, realm);
+ } else {
+ unparsed_name_with_realm = strdup(unparsed_name);
+ }
+ if (!unparsed_name_with_realm) {
+ krb5_set_error_string(context, "asprintf or strdup: out of memory");
+ ret = ENOMEM;
+ goto out;
+ }
ret = krb5_parse_name(context, unparsed_name_with_realm, &ent->principal);
if (ret != 0) {
+ krb5_warnx(context, "LDB_message2entry: krb5_parse_name(%s)\n",
+ unparsed_name_with_realm);
goto out;
}
@@ -421,8 +431,14 @@
}
rc = asprintf(&filter,
- "(&(objectClass=user)(|(userPrincipalName=%s)(|(servicePrincipalName=HOST/%s)(samAccountName=%s))))",
- princ, princ, account);
+ "(&(objectClass=user)"
+ "(|(userPrincipalName=%s)(userPrincipalName=%s@%s)"
+ "(servicePrincipalName=HOST/%s)(servicePrincipalName=HOST/%s@%s)"
+ "(samAccountName=%s)))",
+ princ, princ, realm,
+ princ, princ, realm,
+ account);
+
if (rc < 0) {
krb5_set_error_string(context, "asprintf: out of memory");
ret = ENOMEM;
@@ -570,7 +586,7 @@
return ret;
}
- rc = asprintf(&krbtgt_princ, "%s/%s", KRB5_TGS_NAME, realm);
+ rc = asprintf(&krbtgt_princ, "%s/%s@%s", KRB5_TGS_NAME, realm, realm);
if (rc < 0) {
krb5_set_error_string(context, "asprintf: out of memory");
@@ -578,7 +594,7 @@
return ENOMEM;
}
- if (strcmp(krbtgt_princ, princ) == 0) {
+ if (strcasecmp(krbtgt_princ, princ) == 0) {
free(princ);
princ = strdup(KRB5_TGS_NAME);
if (!princ) {
More information about the samba-cvs
mailing list