diff options
author | Matthew Chapman <matty@samba.org> | 1999-04-23 23:49:46 +0000 |
---|---|---|
committer | Matthew Chapman <matty@samba.org> | 1999-04-23 23:49:46 +0000 |
commit | efd4ae27a6da1ae869bc93f93ce0e65cb2401f79 (patch) | |
tree | 51b1c981c26b837f37f9edc769bf61fe56ae705e /source3 | |
parent | 16758a425265afaf6d4ba2636fdafbdb5b26b708 (diff) | |
download | samba-efd4ae27a6da1ae869bc93f93ce0e65cb2401f79.tar.gz samba-efd4ae27a6da1ae869bc93f93ce0e65cb2401f79.tar.bz2 samba-efd4ae27a6da1ae869bc93f93ce0e65cb2401f79.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 568c40cc65e46590ba1e9850662934f1a28bd83d)
Diffstat (limited to 'source3')
-rw-r--r-- | source3/include/rpc_atsvc.h | 155 |
1 files changed, 155 insertions, 0 deletions
diff --git a/source3/include/rpc_atsvc.h b/source3/include/rpc_atsvc.h new file mode 100644 index 0000000000..2b983f438e --- /dev/null +++ b/source3/include/rpc_atsvc.h @@ -0,0 +1,155 @@ +/* + Unix SMB/Netbios implementation. + Version 1.9. + Interface header: Scheduler service + Copyright (C) Matthew Chapman 1999 + Copyright (C) Luke Kenneth Casson Leighton 1996-1999 + Copyright (C) Andrew Tridgell 1992-1999 + + This program is free software; you can redistribute it and/or modify + it under the terms of the GNU General Public License as published by + the Free Software Foundation; either version 2 of the License, or + (at your option) any later version. + + This program is distributed in the hope that it will be useful, + but WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + GNU General Public License for more details. + + You should have received a copy of the GNU General Public License + along with this program; if not, write to the Free Software + Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. +*/ + +#ifndef _RPC_ATSVC_H +#define _RPC_ATSVC_H + +#define AT_ADD_JOB 0x00 +#define AT_DEL_JOB 0x01 +#define AT_ENUM_JOBS 0x02 +#define AT_QUERY_JOB 0x03 + + +#define JOB_PERIODIC 0x01 +#define JOB_EXEC_ERR 0x02 +#define JOB_RUNS_TODAY 0x04 +#define JOB_INCLUDE_TODAY 0x08 +#define JOB_NONINTERACTIVE 0x10 + +/* AT_JOB_INFO */ +typedef struct at_job_info_info +{ + uint32 time; /* milliseconds after midnight */ + uint32 monthdays; /* bitmask of days of month */ + uint8 weekdays; /* bitmask of days of week */ + uint8 flags; /* JOB_xx */ + + uint32 ptr_command; + +} AT_JOB_INFO; + +/* AT_Q_ADD_JOB */ +typedef struct q_at_add_job_info +{ + uint32 ptr_srv_name; + UNISTR2 uni_srv_name; + + AT_JOB_INFO info; + UNISTR2 command; + +} AT_Q_ADD_JOB; + +/* AT_R_ADD_JOB */ +typedef struct r_at_add_job_info +{ + uint32 jobid; + uint32 status; + +} AT_R_ADD_JOB; + + +/* AT_Q_DEL_JOB */ +typedef struct q_at_del_job_info +{ + uint32 ptr_srv_name; + UNISTR2 uni_srv_name; + + uint32 min_jobid; + uint32 max_jobid; + +} AT_Q_DEL_JOB; + +/* AT_R_DEL_JOB */ +typedef struct r_at_del_job_info +{ + uint32 status; + +} AT_R_DEL_JOB; + + +/* AT_Q_ENUM_JOBS */ +typedef struct q_at_enum_jobs_info +{ + uint32 ptr_srv_name; + UNISTR2 uni_srv_name; + + uint32 unknown0; /* 0 */ + uint32 unknown1; /* 0 */ + uint32 max_len; /* preferred max length */ + + uint32 ptr_resume; + uint32 hnd_resume; /* resume handle */ + +} AT_Q_ENUM_JOBS; + +/* AT_ENUM_INFO */ +typedef struct q_at_enum_info_info +{ + uint32 jobid; + AT_JOB_INFO info; + +} AT_ENUM_INFO; + +#define AT_MAX_JOBS 256 + +/* AT_R_ENUM_JOBS */ +typedef struct r_at_enum_jobs_info +{ + uint32 num_entries; /* entries returned */ + uint32 ptr_entries; + uint32 num_entries2; + + AT_ENUM_INFO info[AT_MAX_JOBS]; + UNISTR2 command[AT_MAX_JOBS]; + + uint32 total_entries; /* total entries */ + uint32 ptr_resume; + uint32 hnd_resume; /* resume handle */ + + uint32 status; + +} AT_R_ENUM_JOBS; + + +/* AT_Q_QUERY_JOB */ +typedef struct q_at_query_job_info +{ + uint32 ptr_srv_name; + UNISTR2 uni_srv_name; + + uint32 jobid; + +} AT_Q_QUERY_JOB; + +/* AT_R_QUERY_JOB */ +typedef struct r_at_query_job_info +{ + uint32 ptr_info; + AT_JOB_INFO info; + UNISTR2 command; + + uint32 status; + +} AT_R_QUERY_JOB; + +#endif /* _RPC_ATSVC_H */ |