[SCM] Samba Shared Repository - branch v3-3-test updated - release-3-2-0pre2-3294-gc9ab295

Michael Adam obnox at samba.org
Fri Jul 18 13:16:07 GMT 2008


The branch, v3-3-test has been updated
       via  c9ab2953c5af0dd3cddbe6c4cdd2b8da2734aa84 (commit)
      from  6aa2391cbe1cbda8269ded767117f53d83b243e1 (commit)

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


- Log -----------------------------------------------------------------
commit c9ab2953c5af0dd3cddbe6c4cdd2b8da2734aa84
Author: Michael Adam <obnox at samba.org>
Date:   Fri Jul 18 15:10:51 2008 +0200

    rpcclient: add ability to fetch single objects with dsgetncchanges command
    
    call as "dsgetncchanges <object_dn> single"
    
    after calling "seal"
    
    Michael

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

Summary of changes:
 source/rpcclient/cmd_drsuapi.c |   20 ++++++++++++++++++--
 1 files changed, 18 insertions(+), 2 deletions(-)


Changeset truncated at 500 lines:

diff --git a/source/rpcclient/cmd_drsuapi.c b/source/rpcclient/cmd_drsuapi.c
index a1604d8..31feece 100644
--- a/source/rpcclient/cmd_drsuapi.c
+++ b/source/rpcclient/cmd_drsuapi.c
@@ -308,6 +308,7 @@ static WERROR cmd_drsuapi_getncchanges(struct rpc_pipe_client *cli,
 	DATA_BLOB session_key;
 
 	int32_t level = 8;
+	bool single = false;
 	int32_t level_out = 0;
 	union drsuapi_DsGetNCChangesRequest req;
 	union drsuapi_DsGetNCChangesCtr ctr;
@@ -326,8 +327,8 @@ static WERROR cmd_drsuapi_getncchanges(struct rpc_pipe_client *cli,
 				  DRSUAPI_DS_REPLICA_NEIGHBOUR_RETURN_OBJECT_PARENTS |
 				  DRSUAPI_DS_REPLICA_NEIGHBOUR_NEVER_SYNCED;
 
-	if (argc > 2) {
-		printf("usage: %s naming_context_dn\n", argv[0]);
+	if (argc > 3) {
+		printf("usage: %s [naming_context_or_object_dn [single]]\n", argv[0]);
 		return WERR_OK;
 	}
 
@@ -335,6 +336,15 @@ static WERROR cmd_drsuapi_getncchanges(struct rpc_pipe_client *cli,
 		nc_dn = argv[1];
 	}
 
+	if (argc == 3) {
+		if (strequal(argv[2], "single")) {
+			single = true;
+		} else {
+			printf("warning: ignoring unknown argument '%s'\n",
+			       argv[2]);
+		}
+	}
+
 	ZERO_STRUCT(info28);
 
 	ZERO_STRUCT(null_sid);
@@ -440,12 +450,18 @@ static WERROR cmd_drsuapi_getncchanges(struct rpc_pipe_client *cli,
 		req.req8.replica_flags		= replica_flags;
 		req.req8.max_object_count	= 402;
 		req.req8.max_ndr_size		= 402116;
+		if (single) {
+			req.req8.extended_op	= DRSUAPI_EXOP_REPL_OBJ;
+		}
 	} else {
 		level = 5;
 		req.req5.naming_context		= &nc;
 		req.req5.replica_flags		= replica_flags;
 		req.req5.max_object_count	= 402;
 		req.req5.max_ndr_size		= 402116;
+		if (single) {
+			req.req5.extended_op	= DRSUAPI_EXOP_REPL_OBJ;
+		}
 	}
 
 	for (y=0; ;y++) {


-- 
Samba Shared Repository


More information about the samba-cvs mailing list