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;
 }

Reply via email to