[SCM] Samba Shared Repository - branch v3-2-test updated - initial-v3-2-unstable-589-g4ab9a8a

Stefan Metzmacher metze at samba.org
Tue Dec 11 11:57:22 GMT 2007


The branch, v3-2-test has been updated
       via  4ab9a8aab72a8406659a72e87b2d2a1ec2a2eabf (commit)
       via  de31913f0a4fd407d935ec4e27a6123ab7847ab5 (commit)
      from  212ab58a3a7f03bb97c6ad3430e2776f9faba7c9 (commit)

http://gitweb.samba.org/?p=samba.git;a=shortlog;h=v3-2-test


- Log -----------------------------------------------------------------
commit 4ab9a8aab72a8406659a72e87b2d2a1ec2a2eabf
Author: Stefan Metzmacher <metze at sernet.de>
Date:   Fri Dec 7 16:00:45 2007 +0100

    winbindd: rename child table struct elements
    
    Add struct_ prefix to struct based protocol specific
    elemetens struct winbindd_child_dispatch_table.
    
    metze

commit de31913f0a4fd407d935ec4e27a6123ab7847ab5
Author: Stefan Metzmacher <metze at samba.org>
Date:   Mon Dec 10 19:19:54 2007 +0100

    idmap: add a const to idmap_dump_maps()
    
    metze

-----------------------------------------------------------------------

Summary of changes:
 source/winbindd/idmap.c            |    2 +-
 source/winbindd/winbindd.h         |    8 +-
 source/winbindd/winbindd_dual.c    |  112 +++++++++++++++++++++++++----------
 source/winbindd/winbindd_idmap.c   |   77 +++++++++++++++++++------
 source/winbindd/winbindd_locator.c |   10 ++-
 5 files changed, 151 insertions(+), 58 deletions(-)


Changeset truncated at 500 lines:

diff --git a/source/winbindd/idmap.c b/source/winbindd/idmap.c
index af8ec17..e825ed9 100644
--- a/source/winbindd/idmap.c
+++ b/source/winbindd/idmap.c
@@ -1490,7 +1490,7 @@ done:
  Dump backend status.
 **************************************************************************/
 
-void idmap_dump_maps(char *logfile)
+void idmap_dump_maps(const char *logfile)
 {
 	NTSTATUS ret;
 	struct unixid allid;
diff --git a/source/winbindd/winbindd.h b/source/winbindd/winbindd.h
index 248bcff..d76e9b5 100644
--- a/source/winbindd/winbindd.h
+++ b/source/winbindd/winbindd.h
@@ -137,10 +137,10 @@ struct winbindd_async_request;
 struct winbindd_domain;
 
 struct winbindd_child_dispatch_table {
-	enum winbindd_cmd cmd;
-	enum winbindd_result (*fn)(struct winbindd_domain *domain,
-				   struct winbindd_cli_state *state);
-	const char *winbindd_cmd_name;
+	const char *name;
+	enum winbindd_cmd struct_cmd;
+	enum winbindd_result (*struct_fn)(struct winbindd_domain *domain,
+					  struct winbindd_cli_state *state);
 };
 
 extern const struct winbindd_child_dispatch_table domain_dispatch_table[];
diff --git a/source/winbindd/winbindd_dual.c b/source/winbindd/winbindd_dual.c
index 1e76c12..08ce7f4 100644
--- a/source/winbindd/winbindd_dual.c
+++ b/source/winbindd/winbindd_dual.c
@@ -409,27 +409,77 @@ void sendto_domain(struct winbindd_cli_state *state,
 }
 
 const struct winbindd_child_dispatch_table domain_dispatch_table[] = {
-
-	{ WINBINDD_LOOKUPSID,            winbindd_dual_lookupsid,             "LOOKUPSID" },
-	{ WINBINDD_LOOKUPNAME,           winbindd_dual_lookupname,            "LOOKUPNAME" },
-	{ WINBINDD_LOOKUPRIDS,           winbindd_dual_lookuprids,            "LOOKUPRIDS" },
-	{ WINBINDD_LIST_TRUSTDOM,        winbindd_dual_list_trusted_domains,  "LIST_TRUSTDOM" },
-	{ WINBINDD_INIT_CONNECTION,      winbindd_dual_init_connection,       "INIT_CONNECTION" },
-	{ WINBINDD_GETDCNAME,            winbindd_dual_getdcname,             "GETDCNAME" },
-	{ WINBINDD_SHOW_SEQUENCE,        winbindd_dual_show_sequence,         "SHOW_SEQUENCE" },
-	{ WINBINDD_PAM_AUTH,             winbindd_dual_pam_auth,              "PAM_AUTH" },
-	{ WINBINDD_PAM_AUTH_CRAP,        winbindd_dual_pam_auth_crap,         "AUTH_CRAP" },
-	{ WINBINDD_PAM_LOGOFF,           winbindd_dual_pam_logoff,            "PAM_LOGOFF" },
-	{ WINBINDD_PAM_CHNG_PSWD_AUTH_CRAP,winbindd_dual_pam_chng_pswd_auth_crap,"CHNG_PSWD_AUTH_CRAP" },
-	{ WINBINDD_PAM_CHAUTHTOK,        winbindd_dual_pam_chauthtok,         "PAM_CHAUTHTOK" },
-	{ WINBINDD_CHECK_MACHACC,        winbindd_dual_check_machine_acct,    "CHECK_MACHACC" },
-	{ WINBINDD_DUAL_USERINFO,        winbindd_dual_userinfo,              "DUAL_USERINFO" },
-	{ WINBINDD_GETUSERDOMGROUPS,     winbindd_dual_getuserdomgroups,      "GETUSERDOMGROUPS" },
-	{ WINBINDD_DUAL_GETSIDALIASES,   winbindd_dual_getsidaliases,         "GETSIDALIASES" },
-	{ WINBINDD_CCACHE_NTLMAUTH,      winbindd_dual_ccache_ntlm_auth,      "CCACHE_NTLM_AUTH" },
-	/* End of list */
-
-	{ WINBINDD_NUM_CMDS, NULL, "NONE" }
+	{
+		.name		= "LOOKUPSID",
+		.struct_cmd	= WINBINDD_LOOKUPSID,
+		.struct_fn	= winbindd_dual_lookupsid,
+	},{
+		.name		= "LOOKUPNAME",
+		.struct_cmd	= WINBINDD_LOOKUPNAME,
+		.struct_fn	= winbindd_dual_lookupname,
+	},{
+		.name		= "LOOKUPRIDS",
+		.struct_cmd	= WINBINDD_LOOKUPRIDS,
+		.struct_fn	= winbindd_dual_lookuprids,
+	},{
+		.name		= "LIST_TRUSTDOM",
+		.struct_cmd	= WINBINDD_LIST_TRUSTDOM,
+		.struct_fn	= winbindd_dual_list_trusted_domains,
+	},{
+		.name		= "INIT_CONNECTION",
+		.struct_cmd	= WINBINDD_INIT_CONNECTION,
+		.struct_fn	= winbindd_dual_init_connection,
+	},{
+		.name		= "GETDCNAME",
+		.struct_cmd	= WINBINDD_GETDCNAME,
+		.struct_fn	= winbindd_dual_getdcname,
+	},{
+		.name		= "SHOW_SEQUENCE",
+		.struct_cmd	= WINBINDD_SHOW_SEQUENCE,
+		.struct_fn	= winbindd_dual_show_sequence,
+	},{
+		.name		= "PAM_AUTH",
+		.struct_cmd	= WINBINDD_PAM_AUTH,
+		.struct_fn	= winbindd_dual_pam_auth,
+	},{
+		.name		= "AUTH_CRAP",
+		.struct_cmd	= WINBINDD_PAM_AUTH_CRAP,
+		.struct_fn	= winbindd_dual_pam_auth_crap,
+	},{
+		.name		= "PAM_LOGOFF",
+		.struct_cmd	= WINBINDD_PAM_LOGOFF,
+		.struct_fn	= winbindd_dual_pam_logoff,
+	},{
+		.name		= "CHNG_PSWD_AUTH_CRAP",
+		.struct_cmd	= WINBINDD_PAM_CHNG_PSWD_AUTH_CRAP,
+		.struct_fn	= winbindd_dual_pam_chng_pswd_auth_crap,
+	},{
+		.name		= "PAM_CHAUTHTOK",
+		.struct_cmd	= WINBINDD_PAM_CHAUTHTOK,
+		.struct_fn	= winbindd_dual_pam_chauthtok,
+	},{
+		.name		= "CHECK_MACHACC",
+		.struct_cmd	= WINBINDD_CHECK_MACHACC,
+		.struct_fn	= winbindd_dual_check_machine_acct,
+	},{
+		.name		= "DUAL_USERINFO",
+		.struct_cmd	= WINBINDD_DUAL_USERINFO,
+		.struct_fn	= winbindd_dual_userinfo,
+	},{
+		.name		= "GETUSERDOMGROUPS",
+		.struct_cmd	= WINBINDD_GETUSERDOMGROUPS,
+		.struct_fn	= winbindd_dual_getuserdomgroups,
+	},{
+		.name		= "GETSIDALIASES",
+		.struct_cmd	= WINBINDD_DUAL_GETSIDALIASES,
+		.struct_fn	= winbindd_dual_getsidaliases,
+	},{
+		.name		= "CCACHE_NTLM_AUTH",
+		.struct_cmd	= WINBINDD_CCACHE_NTLMAUTH,
+		.struct_fn	= winbindd_dual_ccache_ntlm_auth,
+	},{
+		.name		= NULL,
+	}
 };
 
 static void child_process_request(struct winbindd_child *child,
@@ -449,20 +499,18 @@ static void child_process_request(struct winbindd_child *child,
 
 	/* Process command */
 
-	for (; table->fn; table++) {
-		if (state->request.cmd == table->cmd) {
-			DEBUG(10,("process_request: request fn %s\n",
-				  table->winbindd_cmd_name ));
-			state->response.result = table->fn(domain, state);
-			break;
+	for (; table->name; table++) {
+		if (state->request.cmd == table->struct_cmd) {
+			DEBUG(10,("child_process_request: request fn %s\n",
+				  table->name));
+			state->response.result = table->struct_fn(domain, state);
+			return;
 		}
 	}
 
-	if (!table->fn) {
-		DEBUG(1 ,("child_process_request: unknown request fn number %d\n",
-			  (int)state->request.cmd ));
-		state->response.result = WINBINDD_ERROR;
-	}
+	DEBUG(1 ,("child_process_request: unknown request fn number %d\n",
+		  (int)state->request.cmd));
+	state->response.result = WINBINDD_ERROR;
 }
 
 void setup_domain_child(struct winbindd_domain *domain,
diff --git a/source/winbindd/winbindd_idmap.c b/source/winbindd/winbindd_idmap.c
index 250b2d2..379e7b5 100644
--- a/source/winbindd/winbindd_idmap.c
+++ b/source/winbindd/winbindd_idmap.c
@@ -796,24 +796,65 @@ enum winbindd_result winbindd_dual_dump_maps(struct winbindd_domain *domain,
 }
 
 static const struct winbindd_child_dispatch_table idmap_dispatch_table[] = {
-
-	{ WINBINDD_DUAL_SID2UID,         winbindd_dual_sid2uid,               "DUAL_SID2UID" },
-	{ WINBINDD_DUAL_SID2GID,         winbindd_dual_sid2gid,               "DUAL_SID2GID" },
+	{
+		.name		= "DUAL_SID2UID",
+		.struct_cmd	= WINBINDD_DUAL_SID2UID,
+		.struct_fn	= winbindd_dual_sid2uid,
+	},{
+		.name		= "DUAL_SID2GID",
+		.struct_cmd	= WINBINDD_DUAL_SID2GID,
+		.struct_fn	= winbindd_dual_sid2gid,
 #if 0   /* DISABLED until we fix the interface in Samba 3.0.26 --jerry */
-	{ WINBINDD_DUAL_SIDS2XIDS,       winbindd_dual_sids2xids,             "DUAL_SIDS2XIDS" },
+	},{
+		.name		= "DUAL_SIDS2XIDS",
+		.struct_cmd	= WINBINDD_DUAL_SIDS2XIDS,
+		.struct_fn	= winbindd_dual_sids2xids,
 #endif  /* end DISABLED */
-	{ WINBINDD_DUAL_UID2SID,         winbindd_dual_uid2sid,               "DUAL_UID2SID" },
-	{ WINBINDD_DUAL_GID2SID,         winbindd_dual_gid2sid,               "DUAL_GID2SID" },
-	{ WINBINDD_DUAL_UID2NAME,        winbindd_dual_uid2name,              "DUAL_UID2NAME" },
-	{ WINBINDD_DUAL_NAME2UID,        winbindd_dual_name2uid,              "DUAL_NAME2UID" },
-	{ WINBINDD_DUAL_GID2NAME,        winbindd_dual_gid2name,              "DUAL_GID2NAME" },
-	{ WINBINDD_DUAL_NAME2GID,        winbindd_dual_name2gid,              "DUAL_NAME2GID" },
-	{ WINBINDD_DUAL_SET_MAPPING,     winbindd_dual_set_mapping,           "DUAL_SET_MAPPING" },
-	{ WINBINDD_DUAL_SET_HWM,         winbindd_dual_set_hwm,               "DUAL_SET_HWMS" },
-	{ WINBINDD_DUAL_DUMP_MAPS,       winbindd_dual_dump_maps,             "DUAL_DUMP_MAPS" },
-	{ WINBINDD_ALLOCATE_UID,         winbindd_dual_allocate_uid,          "ALLOCATE_UID" },
-	{ WINBINDD_ALLOCATE_GID,         winbindd_dual_allocate_gid,          "ALLOCATE_GID" },
-	/* End of list */
-
-	{ WINBINDD_NUM_CMDS, NULL, "NONE" }
+	},{
+		.name		= "DUAL_UID2SID",
+		.struct_cmd	= WINBINDD_DUAL_UID2SID,
+		.struct_fn	= winbindd_dual_uid2sid,
+	},{
+		.name		= "DUAL_GID2SID",
+		.struct_cmd	= WINBINDD_DUAL_GID2SID,
+		.struct_fn	= winbindd_dual_gid2sid,
+	},{
+		.name		= "DUAL_UID2NAME",
+		.struct_cmd	= WINBINDD_DUAL_UID2NAME,
+		.struct_fn	= winbindd_dual_uid2name,
+	},{
+		.name		= "DUAL_NAME2UID",
+		.struct_cmd	= WINBINDD_DUAL_NAME2UID,
+		.struct_fn	= winbindd_dual_name2uid,
+	},{
+		.name		= "DUAL_GID2NAME",
+		.struct_cmd	= WINBINDD_DUAL_GID2NAME,
+		.struct_fn	= winbindd_dual_gid2name,
+	},{
+		.name		= "DUAL_NAME2GID",
+		.struct_cmd	= WINBINDD_DUAL_NAME2GID,
+		.struct_fn	= winbindd_dual_name2gid,
+	},{
+		.name		= "DUAL_SET_MAPPING",
+		.struct_cmd	= WINBINDD_DUAL_SET_MAPPING,
+		.struct_fn	= winbindd_dual_set_mapping,
+	},{
+		.name		= "DUAL_SET_HWMS",
+		.struct_cmd	= WINBINDD_DUAL_SET_HWM,
+		.struct_fn	= winbindd_dual_set_hwm,
+	},{
+		.name		= "DUAL_DUMP_MAPS",
+		.struct_cmd	= WINBINDD_DUAL_DUMP_MAPS,
+		.struct_fn	= winbindd_dual_dump_maps,
+	},{
+		.name		= "ALLOCATE_UID",
+		.struct_cmd	= WINBINDD_ALLOCATE_UID,
+		.struct_fn	= winbindd_dual_allocate_uid,
+	},{
+		.name		= "ALLOCATE_GID",
+		.struct_cmd	= WINBINDD_ALLOCATE_GID,
+		.struct_fn	= winbindd_dual_allocate_gid,
+	},{
+		.name		= NULL,
+	}
 };
diff --git a/source/winbindd/winbindd_locator.c b/source/winbindd/winbindd_locator.c
index 7db2e2a..67bafc7 100644
--- a/source/winbindd/winbindd_locator.c
+++ b/source/winbindd/winbindd_locator.c
@@ -96,7 +96,11 @@ static enum winbindd_result dual_dsgetdcname(struct winbindd_domain *domain,
 }
 
 static const struct winbindd_child_dispatch_table locator_dispatch_table[] = {
-	{ WINBINDD_DSGETDCNAME, dual_dsgetdcname, "DSGETDCNAME" },
-
-	{ WINBINDD_NUM_CMDS, NULL, "NONE" }
+	{
+		.name		= "DSGETDCNAME",
+		.struct_cmd	= WINBINDD_DSGETDCNAME,
+		.struct_fn	= dual_dsgetdcname,
+	},{
+		.name		= NULL,
+	}
 };


-- 
Samba Shared Repository


More information about the samba-cvs mailing list