summaryrefslogtreecommitdiff
path: root/source3/include
diff options
context:
space:
mode:
authorMatthew Chapman <matty@samba.org>1999-04-23 14:47:45 +0000
committerMatthew Chapman <matty@samba.org>1999-04-23 14:47:45 +0000
commit7fe5ba774b27b01b91f0d7cc25abf8383b9afca6 (patch)
treeab1fecb49271ba15d5f6f037a2a0b318734ba6f2 /source3/include
parent9837c863c21bceea2a5e603042624001a5df09dd (diff)
downloadsamba-7fe5ba774b27b01b91f0d7cc25abf8383b9afca6.tar.gz
samba-7fe5ba774b27b01b91f0d7cc25abf8383b9afca6.tar.bz2
samba-7fe5ba774b27b01b91f0d7cc25abf8383b9afca6.zip
Adding scheduler control pipe (\atsvc), client-side routines, and rpcclient
command "at" (compatible with NT's "at" command - see rpcclient commit) - useful for remote NT administration. (This used to be commit cf30a472f702d7b50c3a85e2cf2f55b46a2bd452)
Diffstat (limited to 'source3/include')
-rw-r--r--source3/include/ntdomain.h1
-rw-r--r--source3/include/nterr.h2
-rw-r--r--source3/include/proto.h39
-rw-r--r--source3/include/smb.h1
4 files changed, 43 insertions, 0 deletions
diff --git a/source3/include/ntdomain.h b/source3/include/ntdomain.h
index 5592a59eaa..c4eccfc466 100644
--- a/source3/include/ntdomain.h
+++ b/source3/include/ntdomain.h
@@ -42,6 +42,7 @@
#include "rpc_srvsvc.h"
#include "rpc_svcctl.h"
#include "rpc_wkssvc.h"
+#include "rpc_atsvc.h"
/*
* A bunch of stuff that was put into smb.h
diff --git a/source3/include/nterr.h b/source3/include/nterr.h
index a94464a013..2b5285a41f 100644
--- a/source3/include/nterr.h
+++ b/source3/include/nterr.h
@@ -505,3 +505,5 @@
#define NT_STATUS_QUOTA_LIST_INCONSISTENT (614)
#define NT_STATUS_FILE_IS_OFFLINE (615)
#define NT_STATUS_NOTIFY_ENUM_DIR (0x10C)
+#define NT_STATUS_MORE_ENTRIES (0x105)
+#define NT_STATUS_NO_SUCH_JOB (0xEDE) /* scheduler */
diff --git a/source3/include/proto.h b/source3/include/proto.h
index f7f3b69622..0fb5962094 100644
--- a/source3/include/proto.h
+++ b/source3/include/proto.h
@@ -1588,6 +1588,19 @@ void load_printers(void);
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,
+ 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,
+ AT_ENUM_INFO *jobs, fstring *commands);
+BOOL at_query_job(struct cli_state *cli, uint16 fnum, char *server_name,
+ uint32 jobid, AT_JOB_INFO *job, fstring command);
+
/*The following definitions come from rpc_client/cli_login.c */
BOOL cli_nt_setup_creds(struct cli_state *cli, uint16 fnum,
@@ -1893,6 +1906,24 @@ BOOL do_wks_query_info(struct cli_state *cli, uint16 fnum,
char *server_name, uint32 switch_value,
WKS_INFO_100 *wks100);
+/*The following definitions come from rpc_parse/parse_at.c */
+
+void make_at_q_add_job(AT_Q_ADD_JOB *q_a, char *server,
+ AT_JOB_INFO *info, char *command);
+void at_io_job_info(char *desc, AT_JOB_INFO *info, prs_struct *ps, int depth);
+void at_io_q_add_job(char *desc, AT_Q_ADD_JOB *q_a, prs_struct *ps, int depth);
+void at_io_r_add_job(char *desc, AT_R_ADD_JOB *r_a, prs_struct *ps, int depth);
+void make_at_q_del_job(AT_Q_DEL_JOB *q_a, char *server, uint32 min_jobid,
+ uint32 max_jobid);
+void at_io_q_del_job(char *desc, AT_Q_DEL_JOB *q_d, prs_struct *ps, int depth);
+void at_io_r_del_job(char *desc, AT_R_DEL_JOB *r_d, prs_struct *ps, int depth);
+void make_at_q_enum_jobs(AT_Q_ENUM_JOBS *q_e, char *server);
+void at_io_q_enum_jobs(char *desc, AT_Q_ENUM_JOBS *q_e, prs_struct *ps, int depth);
+void at_io_r_enum_jobs(char *desc, AT_R_ENUM_JOBS *r_e, prs_struct *ps, int depth);
+void make_at_q_query_job(AT_Q_QUERY_JOB *q_q, char *server, uint32 jobid);
+void at_io_q_query_job(char *desc, AT_Q_QUERY_JOB *q_q, prs_struct *ps, int depth);
+void at_io_r_query_job(char *desc, AT_R_QUERY_JOB *r_q, prs_struct *ps, int depth);
+
/*The following definitions come from rpc_parse/parse_lsa.c */
void make_lsa_trans_name(LSA_TRANS_NAME *trn, UNISTR2 *uni_name,
@@ -2842,6 +2873,10 @@ BOOL api_svcctl_rpc(pipes_struct *p, prs_struct *data);
BOOL api_wkssvc_rpc(pipes_struct *p, prs_struct *data);
+/*The following definitions come from rpcclient/cmd_atsvc.c */
+
+void cmd_at(struct client_info *info);
+
/*The following definitions come from rpcclient/cmd_lsarpc.c */
void cmd_lsa_query_info(struct client_info *info);
@@ -2977,6 +3012,10 @@ char *get_svc_start_type_str(uint32 type);
void display_query_svc_cfg(FILE *out_hnd, enum action_type action,
QUERY_SERVICE_CONFIG *cfg);
void display_svc_info(FILE *out_hnd, enum action_type action, ENUM_SRVC_STATUS *svc);
+void display_at_enum_info(FILE *out_hnd, enum action_type action,
+ uint32 num_jobs, AT_ENUM_INFO *jobs, fstring *commands);
+void display_at_job_info(FILE *out_hnd, enum action_type action,
+ AT_JOB_INFO *job, fstring command);
/*The following definitions come from rpcclient/rpcclient.c */
diff --git a/source3/include/smb.h b/source3/include/smb.h
index 789b3a81de..605218d51f 100644
--- a/source3/include/smb.h
+++ b/source3/include/smb.h
@@ -359,6 +359,7 @@ typedef char fstring[FSTRING_LEN];
#define PIPE_NTSVCS "\\PIPE\\ntsvcs"
#define PIPE_LSASS "\\PIPE\\lsass"
#define PIPE_LSARPC "\\PIPE\\lsarpc"
+#define PIPE_ATSVC "\\PIPE\\atsvc"
/* 64 bit time (100usec) since ????? - cifs6.txt, section 3.5, page 30 */