svn commit: samba r9720 - in branches/tmp/RPCREWRITE/source/rpc_client: .

jra at samba.org jra at samba.org
Sun Aug 28 22:23:34 GMT 2005


Author: jra
Date: 2005-08-28 22:23:34 +0000 (Sun, 28 Aug 2005)
New Revision: 9720

WebSVN: http://websvn.samba.org/cgi-bin/viewcvs.cgi?view=rev&root=samba&rev=9720

Log:
Easy one...
Jeremy.

Modified:
   branches/tmp/RPCREWRITE/source/rpc_client/cli_wkssvc.c


Changeset:
Modified: branches/tmp/RPCREWRITE/source/rpc_client/cli_wkssvc.c
===================================================================
--- branches/tmp/RPCREWRITE/source/rpc_client/cli_wkssvc.c	2005-08-28 22:20:06 UTC (rev 9719)
+++ branches/tmp/RPCREWRITE/source/rpc_client/cli_wkssvc.c	2005-08-28 22:23:34 UTC (rev 9720)
@@ -33,60 +33,36 @@
  * @return NTSTATUS of rpc call
  */
  
-NTSTATUS cli_wks_query_info(struct cli_state *cli, TALLOC_CTX *mem_ctx,
+NTSTATUS rpccli_wks_query_info(struct rpc_pipe_client *cli, TALLOC_CTX *mem_ctx,
 			    WKS_INFO_100 *wks100)
 {
-	prs_struct buf;
+	prs_struct qbuf;
 	prs_struct rbuf;
-	WKS_Q_QUERY_INFO q_o;
-	WKS_R_QUERY_INFO r_o;
+	WKS_Q_QUERY_INFO q;
+	WKS_R_QUERY_INFO r;
 
 	if (cli == NULL || wks100 == NULL)
 		return NT_STATUS_UNSUCCESSFUL;
 
-	/* init rpc parse structures */
-	prs_init(&buf, RPC_MAX_PDU_FRAG_LEN, mem_ctx, MARSHALL);
-	prs_init(&rbuf, 0, mem_ctx, UNMARSHALL);
-
 	DEBUG(4, ("WksQueryInfo\n"));
 	
 	/* init query structure with rpc call arguments */
-	init_wks_q_query_info(&q_o, cli->desthost, 100);
-	
-	/* marshall data */
-	if (!wks_io_q_query_info("", &q_o, &buf, 0)) {
-		prs_mem_free(&buf);
-		prs_mem_free(&rbuf);
-		return NT_STATUS_UNSUCCESSFUL;
-	}
-	
-	/* actual rpc call over \PIPE\wkssvc */
-	if (!rpc_api_pipe_req(cli, PI_WKSSVC, WKS_QUERY_INFO, &buf, &rbuf)) {
-		prs_mem_free(&buf);
-		prs_mem_free(&rbuf);
-		return NT_STATUS_UNSUCCESSFUL;
-	}
-	
-	prs_mem_free(&buf);
+	init_wks_q_query_info(&q, cli->cli->desthost, 100);
+	r.wks100 = wks100;
 
-	r_o.wks100 = wks100;
-
-	/* get call results from response buffer */
-	if (!wks_io_r_query_info("", &r_o, &rbuf, 0)) {
-		prs_mem_free(&rbuf);
-		return NT_STATUS_UNSUCCESSFUL;
-	}
-	
+	CLI_DO_RPC(cli, mem_ctx, PI_WKSSVC, WKS_QUERY_INFO,
+		q, r,
+		qbuf, rbuf,
+		wks_io_q_query_info,
+		wks_io_r_query_info,
+		NT_STATUS_UNSUCCESSFUL);
+		
 	/* check returnet status code */
-	if (NT_STATUS_IS_ERR(r_o.status)) {
+	if (NT_STATUS_IS_ERR(r.status)) {
 		/* report the error */
-		DEBUG(0,("WKS_R_QUERY_INFO: %s\n", nt_errstr(r_o.status)));
-		prs_mem_free(&rbuf);
-		return r_o.status;
+		DEBUG(0,("WKS_R_QUERY_INFO: %s\n", nt_errstr(r.status)));
+		return r.status;
 	}
 	
-	/* do clean up */
-	prs_mem_free(&rbuf);
-	
 	return NT_STATUS_OK;
 }



More information about the samba-cvs mailing list