svn commit: samba r23834 - in branches: SAMBA_3_2/source/include
SAMBA_3_2/source/libads SAMBA_3_2/source/utils
SAMBA_3_2_0/source/include SAMBA_3_2_0/source/libads
SAMBA_3_2_0/source/utils
gd at samba.org
gd at samba.org
Wed Jul 11 13:21:34 GMT 2007
Author: gd
Date: 2007-07-11 13:21:32 +0000 (Wed, 11 Jul 2007)
New Revision: 23834
WebSVN: http://websvn.samba.org/cgi-bin/viewcvs.cgi?view=rev&root=samba&rev=23834
Log:
Allow to pass an ADS_STRUCT pointer down to the dump function callback in
libads.
Guenther
Modified:
branches/SAMBA_3_2/source/include/ads_protos.h
branches/SAMBA_3_2/source/libads/ldap.c
branches/SAMBA_3_2/source/utils/net_ads.c
branches/SAMBA_3_2_0/source/include/ads_protos.h
branches/SAMBA_3_2_0/source/libads/ldap.c
branches/SAMBA_3_2_0/source/utils/net_ads.c
Changeset:
Modified: branches/SAMBA_3_2/source/include/ads_protos.h
===================================================================
--- branches/SAMBA_3_2/source/include/ads_protos.h 2007-07-11 13:17:42 UTC (rev 23833)
+++ branches/SAMBA_3_2/source/include/ads_protos.h 2007-07-11 13:21:32 UTC (rev 23834)
@@ -93,7 +93,7 @@
LDAPMessage *ads_first_entry(ADS_STRUCT *ads, LDAPMessage *res);
LDAPMessage *ads_next_entry(ADS_STRUCT *ads, LDAPMessage *res);
void ads_process_results(ADS_STRUCT *ads, LDAPMessage *res,
- BOOL(*fn)(char *, void **, void *),
+ BOOL(*fn)(ADS_STRUCT *,char *, void **, void *),
void *data_area);
void ads_dump(ADS_STRUCT *ads, LDAPMessage *res);
Modified: branches/SAMBA_3_2/source/libads/ldap.c
===================================================================
--- branches/SAMBA_3_2/source/libads/ldap.c 2007-07-11 13:17:42 UTC (rev 23833)
+++ branches/SAMBA_3_2/source/libads/ldap.c 2007-07-11 13:21:32 UTC (rev 23834)
@@ -839,7 +839,7 @@
**/
ADS_STATUS ads_do_search_all_fn(ADS_STRUCT *ads, const char *bind_path,
int scope, const char *expr, const char **attrs,
- BOOL(*fn)(char *, void **, void *),
+ BOOL(*fn)(ADS_STRUCT *, char *, void **, void *),
void *data_area)
{
struct berval *cookie = NULL;
@@ -1777,7 +1777,7 @@
/*
dump a binary result from ldap
*/
-static void dump_binary(const char *field, struct berval **values)
+static void dump_binary(ADS_STRUCT *ads, const char *field, struct berval **values)
{
int i, j;
for (i=0; values[i]; i++) {
@@ -1789,7 +1789,7 @@
}
}
-static void dump_guid(const char *field, struct berval **values)
+static void dump_guid(ADS_STRUCT *ads, const char *field, struct berval **values)
{
int i;
UUID_FLAT guid;
@@ -1803,7 +1803,7 @@
/*
dump a sid result from ldap
*/
-static void dump_sid(const char *field, struct berval **values)
+static void dump_sid(ADS_STRUCT *ads, const char *field, struct berval **values)
{
int i;
for (i=0; values[i]; i++) {
@@ -1816,7 +1816,7 @@
/*
dump ntSecurityDescriptor
*/
-static void dump_sd(const char *filed, struct berval **values)
+static void dump_sd(ADS_STRUCT *ads, const char *filed, struct berval **values)
{
prs_struct ps;
@@ -1859,12 +1859,12 @@
used for debugging
*/
-static BOOL ads_dump_field(char *field, void **values, void *data_area)
+static BOOL ads_dump_field(ADS_STRUCT *ads, char *field, void **values, void *data_area)
{
const struct {
const char *name;
BOOL string;
- void (*handler)(const char *, struct berval **);
+ void (*handler)(ADS_STRUCT *, const char *, struct berval **);
} handlers[] = {
{"objectGUID", False, dump_guid},
{"netbootGUID", False, dump_guid},
@@ -1888,7 +1888,7 @@
if (StrCaseCmp(handlers[i].name, field) == 0) {
if (!values) /* first time, indicate string or not */
return handlers[i].string;
- handlers[i].handler(field, (struct berval **) values);
+ handlers[i].handler(ads, field, (struct berval **) values);
break;
}
}
@@ -1924,7 +1924,7 @@
* @param data_area user-defined area to pass to function
**/
void ads_process_results(ADS_STRUCT *ads, LDAPMessage *res,
- BOOL(*fn)(char *, void **, void *),
+ BOOL(*fn)(ADS_STRUCT *, char *, void **, void *),
void *data_area)
{
LDAPMessage *msg;
@@ -1949,19 +1949,19 @@
BOOL string;
pull_utf8_talloc(ctx, &field, utf8_field);
- string = fn(field, NULL, data_area);
+ string = fn(ads, field, NULL, data_area);
if (string) {
utf8_vals = ldap_get_values(ads->ld,
(LDAPMessage *)msg, field);
str_vals = ads_pull_strvals(ctx,
(const char **) utf8_vals);
- fn(field, (void **) str_vals, data_area);
+ fn(ads, field, (void **) str_vals, data_area);
ldap_value_free(utf8_vals);
} else {
ber_vals = ldap_get_values_len(ads->ld,
(LDAPMessage *)msg, field);
- fn(field, (void **) ber_vals, data_area);
+ fn(ads, field, (void **) ber_vals, data_area);
ldap_value_free_len(ber_vals);
}
@@ -1969,7 +1969,7 @@
}
ber_free(b, 0);
talloc_free_children(ctx);
- fn(NULL, NULL, data_area); /* completed an entry */
+ fn(ads, NULL, NULL, data_area); /* completed an entry */
}
talloc_destroy(ctx);
Modified: branches/SAMBA_3_2/source/utils/net_ads.c
===================================================================
--- branches/SAMBA_3_2/source/utils/net_ads.c 2007-07-11 13:17:42 UTC (rev 23833)
+++ branches/SAMBA_3_2/source/utils/net_ads.c 2007-07-11 13:21:32 UTC (rev 23834)
@@ -397,7 +397,7 @@
-static BOOL usergrp_display(char *field, void **values, void *data_area)
+static BOOL usergrp_display(ADS_STRUCT *ads, char *field, void **values, void *data_area)
{
char **disp_fields = (char **) data_area;
Modified: branches/SAMBA_3_2_0/source/include/ads_protos.h
===================================================================
--- branches/SAMBA_3_2_0/source/include/ads_protos.h 2007-07-11 13:17:42 UTC (rev 23833)
+++ branches/SAMBA_3_2_0/source/include/ads_protos.h 2007-07-11 13:21:32 UTC (rev 23834)
@@ -90,7 +90,7 @@
LDAPMessage *ads_first_entry(ADS_STRUCT *ads, LDAPMessage *res);
LDAPMessage *ads_next_entry(ADS_STRUCT *ads, LDAPMessage *res);
void ads_process_results(ADS_STRUCT *ads, LDAPMessage *res,
- BOOL(*fn)(char *, void **, void *),
+ BOOL(*fn)(ADS_STRUCT *,char *, void **, void *),
void *data_area);
void ads_dump(ADS_STRUCT *ads, LDAPMessage *res);
Modified: branches/SAMBA_3_2_0/source/libads/ldap.c
===================================================================
--- branches/SAMBA_3_2_0/source/libads/ldap.c 2007-07-11 13:17:42 UTC (rev 23833)
+++ branches/SAMBA_3_2_0/source/libads/ldap.c 2007-07-11 13:21:32 UTC (rev 23834)
@@ -839,7 +839,7 @@
**/
ADS_STATUS ads_do_search_all_fn(ADS_STRUCT *ads, const char *bind_path,
int scope, const char *expr, const char **attrs,
- BOOL(*fn)(char *, void **, void *),
+ BOOL(*fn)(ADS_STRUCT *, char *, void **, void *),
void *data_area)
{
struct berval *cookie = NULL;
@@ -1777,7 +1777,7 @@
/*
dump a binary result from ldap
*/
-static void dump_binary(const char *field, struct berval **values)
+static void dump_binary(ADS_STRUCT *ads, const char *field, struct berval **values)
{
int i, j;
for (i=0; values[i]; i++) {
@@ -1789,7 +1789,7 @@
}
}
-static void dump_guid(const char *field, struct berval **values)
+static void dump_guid(ADS_STRUCT *ads, const char *field, struct berval **values)
{
int i;
UUID_FLAT guid;
@@ -1803,7 +1803,7 @@
/*
dump a sid result from ldap
*/
-static void dump_sid(const char *field, struct berval **values)
+static void dump_sid(ADS_STRUCT *ads, const char *field, struct berval **values)
{
int i;
for (i=0; values[i]; i++) {
@@ -1816,7 +1816,7 @@
/*
dump ntSecurityDescriptor
*/
-static void dump_sd(const char *filed, struct berval **values)
+static void dump_sd(ADS_STRUCT *ads, const char *filed, struct berval **values)
{
prs_struct ps;
@@ -1859,12 +1859,12 @@
used for debugging
*/
-static BOOL ads_dump_field(char *field, void **values, void *data_area)
+static BOOL ads_dump_field(ADS_STRUCT *ads, char *field, void **values, void *data_area)
{
const struct {
const char *name;
BOOL string;
- void (*handler)(const char *, struct berval **);
+ void (*handler)(ADS_STRUCT *, const char *, struct berval **);
} handlers[] = {
{"objectGUID", False, dump_guid},
{"netbootGUID", False, dump_guid},
@@ -1888,7 +1888,7 @@
if (StrCaseCmp(handlers[i].name, field) == 0) {
if (!values) /* first time, indicate string or not */
return handlers[i].string;
- handlers[i].handler(field, (struct berval **) values);
+ handlers[i].handler(ads, field, (struct berval **) values);
break;
}
}
@@ -1924,7 +1924,7 @@
* @param data_area user-defined area to pass to function
**/
void ads_process_results(ADS_STRUCT *ads, LDAPMessage *res,
- BOOL(*fn)(char *, void **, void *),
+ BOOL(*fn)(ADS_STRUCT *, char *, void **, void *),
void *data_area)
{
LDAPMessage *msg;
@@ -1949,19 +1949,19 @@
BOOL string;
pull_utf8_talloc(ctx, &field, utf8_field);
- string = fn(field, NULL, data_area);
+ string = fn(ads, field, NULL, data_area);
if (string) {
utf8_vals = ldap_get_values(ads->ld,
(LDAPMessage *)msg, field);
str_vals = ads_pull_strvals(ctx,
(const char **) utf8_vals);
- fn(field, (void **) str_vals, data_area);
+ fn(ads, field, (void **) str_vals, data_area);
ldap_value_free(utf8_vals);
} else {
ber_vals = ldap_get_values_len(ads->ld,
(LDAPMessage *)msg, field);
- fn(field, (void **) ber_vals, data_area);
+ fn(ads, field, (void **) ber_vals, data_area);
ldap_value_free_len(ber_vals);
}
@@ -1969,7 +1969,7 @@
}
ber_free(b, 0);
talloc_free_children(ctx);
- fn(NULL, NULL, data_area); /* completed an entry */
+ fn(ads, NULL, NULL, data_area); /* completed an entry */
}
talloc_destroy(ctx);
Modified: branches/SAMBA_3_2_0/source/utils/net_ads.c
===================================================================
--- branches/SAMBA_3_2_0/source/utils/net_ads.c 2007-07-11 13:17:42 UTC (rev 23833)
+++ branches/SAMBA_3_2_0/source/utils/net_ads.c 2007-07-11 13:21:32 UTC (rev 23834)
@@ -397,7 +397,7 @@
-static BOOL usergrp_display(char *field, void **values, void *data_area)
+static BOOL usergrp_display(ADS_STRUCT *ads, char *field, void **values, void *data_area)
{
char **disp_fields = (char **) data_area;
More information about the samba-cvs
mailing list