summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--source3/include/proto.h15
-rw-r--r--source3/rpc_client/cli_brs.c18
-rw-r--r--source3/rpcclient/cmd_brs.c14
3 files changed, 20 insertions, 27 deletions
diff --git a/source3/include/proto.h b/source3/include/proto.h
index fac04a152f..7a6afbe792 100644
--- a/source3/include/proto.h
+++ b/source3/include/proto.h
@@ -1769,21 +1769,18 @@ BOOL profile_setup(BOOL rdonly);
/*The following definitions come from rpc_client/cli_atsvc.c */
-BOOL at_add_job(struct cli_state *cli, uint16 fnum,
- char *server_name, AT_JOB_INFO *info, char *command,
+BOOL at_add_job(
+ char *srv_name, AT_JOB_INFO *info, char *command,
uint32 *jobid);
-BOOL at_del_job(struct cli_state *cli, uint16 fnum,
- char *server_name, uint32 min_jobid, uint32 max_jobid);
-BOOL at_enum_jobs(struct cli_state *cli, uint16 fnum,
- char *server_name, uint32 *num_jobs,
+BOOL at_del_job( char *srv_name, uint32 min_jobid, uint32 max_jobid);
+BOOL at_enum_jobs( char *srv_name, uint32 *num_jobs,
AT_ENUM_INFO *jobs, char ***commands);
-BOOL at_query_job(struct cli_state *cli, uint16 fnum, char *server_name,
+BOOL at_query_job(char *srv_name,
uint32 jobid, AT_JOB_INFO *job, fstring command);
/*The following definitions come from rpc_client/cli_brs.c */
-BOOL do_brs_query_info(struct cli_state *cli, uint16 fnum,
- const char *server_name, uint32 switch_value,
+BOOL brs_query_info( const char *srv_name, uint32 switch_value,
void *id);
/*The following definitions come from rpc_client/cli_connect.c */
diff --git a/source3/rpc_client/cli_brs.c b/source3/rpc_client/cli_brs.c
index 01fc043953..f4e055f394 100644
--- a/source3/rpc_client/cli_brs.c
+++ b/source3/rpc_client/cli_brs.c
@@ -33,8 +33,7 @@ extern int DEBUGLEVEL;
/****************************************************************************
do a BRS Query
****************************************************************************/
-BOOL do_brs_query_info(struct cli_state *cli, uint16 fnum,
- const char *server_name, uint32 switch_value,
+BOOL brs_query_info( const char *srv_name, uint32 switch_value,
void *id)
{
prs_struct rbuf;
@@ -42,7 +41,14 @@ BOOL do_brs_query_info(struct cli_state *cli, uint16 fnum,
BRS_Q_QUERY_INFO q_o;
BOOL valid_info = False;
- if (server_name == NULL || id == NULL) return False;
+ struct cli_connection *con = NULL;
+
+ if (!cli_connection_init(srv_name, PIPE_BROWSER, &con))
+ {
+ return False;
+ }
+
+ if (id == NULL) return False;
prs_init(&buf , 1024, 4, SAFETY_MARGIN, False);
prs_init(&rbuf, 0 , 4, SAFETY_MARGIN, True );
@@ -52,13 +58,13 @@ BOOL do_brs_query_info(struct cli_state *cli, uint16 fnum,
DEBUG(4,("BRS Query Info\n"));
/* store the parameters */
- make_brs_q_query_info(&q_o, server_name, switch_value);
+ make_brs_q_query_info(&q_o, srv_name, switch_value);
/* turn parameters into data stream */
brs_io_q_query_info("", &q_o, &buf, 0);
/* send the data on \PIPE\ */
- if (rpc_api_pipe_req(cli, fnum, BRS_QUERY_INFO, &buf, &rbuf))
+ if (rpc_con_pipe_req(con, BRS_QUERY_INFO, &buf, &rbuf))
{
BRS_R_QUERY_INFO r_o;
BOOL p;
@@ -84,6 +90,8 @@ BOOL do_brs_query_info(struct cli_state *cli, uint16 fnum,
prs_mem_free(&rbuf);
prs_mem_free(&buf );
+ cli_connection_unlink(con);
+
return valid_info;
}
diff --git a/source3/rpcclient/cmd_brs.c b/source3/rpcclient/cmd_brs.c
index ff8e1cf66a..ca1dbe036c 100644
--- a/source3/rpcclient/cmd_brs.c
+++ b/source3/rpcclient/cmd_brs.c
@@ -33,8 +33,6 @@ extern int DEBUGLEVEL;
#define DEBUG_TESTING
-extern struct cli_state *smb_cli;
-
extern FILE* out_hnd;
@@ -43,7 +41,6 @@ Browser get info query
****************************************************************************/
void cmd_brs_query_info(struct client_info *info, int argc, char *argv[])
{
- uint16 nt_pipe_fnum;
fstring dest_brs;
BRS_INFO_100 ctr;
uint32 info_level = 100;
@@ -64,17 +61,8 @@ void cmd_brs_query_info(struct client_info *info, int argc, char *argv[])
DEBUG(4,("cmd_brs_query_info: server:%s info level: %d\n",
dest_brs, info_level));
- DEBUG(5, ("cmd_brs_query_info: smb_cli->fd:%d\n", smb_cli->fd));
-
- /* open LSARPC session. */
- res = res ? cli_nt_session_open(smb_cli, PIPE_BROWSER, &nt_pipe_fnum) : False;
-
/* send info level: receive requested info. hopefully. */
- res = res ? do_brs_query_info(smb_cli, nt_pipe_fnum,
- dest_brs, info_level, &ctr) : False;
-
- /* close the session */
- cli_nt_session_close(smb_cli, nt_pipe_fnum);
+ res = res ? brs_query_info( dest_brs, info_level, &ctr) : False;
if (res)
{