preparing for release of alpha.0.8
[Samba.git] / source / include / rpc_atsvc.h
blob2b983f438e57b72c6f74cb62f942543766c52892
1 /*
2 Unix SMB/Netbios implementation.
3 Version 1.9.
4 Interface header: Scheduler service
5 Copyright (C) Matthew Chapman 1999
6 Copyright (C) Luke Kenneth Casson Leighton 1996-1999
7 Copyright (C) Andrew Tridgell 1992-1999
9 This program is free software; you can redistribute it and/or modify
10 it under the terms of the GNU General Public License as published by
11 the Free Software Foundation; either version 2 of the License, or
12 (at your option) any later version.
14 This program is distributed in the hope that it will be useful,
15 but WITHOUT ANY WARRANTY; without even the implied warranty of
16 MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
17 GNU General Public License for more details.
19 You should have received a copy of the GNU General Public License
20 along with this program; if not, write to the Free Software
21 Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
24 #ifndef _RPC_ATSVC_H
25 #define _RPC_ATSVC_H
27 #define AT_ADD_JOB 0x00
28 #define AT_DEL_JOB 0x01
29 #define AT_ENUM_JOBS 0x02
30 #define AT_QUERY_JOB 0x03
33 #define JOB_PERIODIC 0x01
34 #define JOB_EXEC_ERR 0x02
35 #define JOB_RUNS_TODAY 0x04
36 #define JOB_INCLUDE_TODAY 0x08
37 #define JOB_NONINTERACTIVE 0x10
39 /* AT_JOB_INFO */
40 typedef struct at_job_info_info
42 uint32 time; /* milliseconds after midnight */
43 uint32 monthdays; /* bitmask of days of month */
44 uint8 weekdays; /* bitmask of days of week */
45 uint8 flags; /* JOB_xx */
47 uint32 ptr_command;
49 } AT_JOB_INFO;
51 /* AT_Q_ADD_JOB */
52 typedef struct q_at_add_job_info
54 uint32 ptr_srv_name;
55 UNISTR2 uni_srv_name;
57 AT_JOB_INFO info;
58 UNISTR2 command;
60 } AT_Q_ADD_JOB;
62 /* AT_R_ADD_JOB */
63 typedef struct r_at_add_job_info
65 uint32 jobid;
66 uint32 status;
68 } AT_R_ADD_JOB;
71 /* AT_Q_DEL_JOB */
72 typedef struct q_at_del_job_info
74 uint32 ptr_srv_name;
75 UNISTR2 uni_srv_name;
77 uint32 min_jobid;
78 uint32 max_jobid;
80 } AT_Q_DEL_JOB;
82 /* AT_R_DEL_JOB */
83 typedef struct r_at_del_job_info
85 uint32 status;
87 } AT_R_DEL_JOB;
90 /* AT_Q_ENUM_JOBS */
91 typedef struct q_at_enum_jobs_info
93 uint32 ptr_srv_name;
94 UNISTR2 uni_srv_name;
96 uint32 unknown0; /* 0 */
97 uint32 unknown1; /* 0 */
98 uint32 max_len; /* preferred max length */
100 uint32 ptr_resume;
101 uint32 hnd_resume; /* resume handle */
103 } AT_Q_ENUM_JOBS;
105 /* AT_ENUM_INFO */
106 typedef struct q_at_enum_info_info
108 uint32 jobid;
109 AT_JOB_INFO info;
111 } AT_ENUM_INFO;
113 #define AT_MAX_JOBS 256
115 /* AT_R_ENUM_JOBS */
116 typedef struct r_at_enum_jobs_info
118 uint32 num_entries; /* entries returned */
119 uint32 ptr_entries;
120 uint32 num_entries2;
122 AT_ENUM_INFO info[AT_MAX_JOBS];
123 UNISTR2 command[AT_MAX_JOBS];
125 uint32 total_entries; /* total entries */
126 uint32 ptr_resume;
127 uint32 hnd_resume; /* resume handle */
129 uint32 status;
131 } AT_R_ENUM_JOBS;
134 /* AT_Q_QUERY_JOB */
135 typedef struct q_at_query_job_info
137 uint32 ptr_srv_name;
138 UNISTR2 uni_srv_name;
140 uint32 jobid;
142 } AT_Q_QUERY_JOB;
144 /* AT_R_QUERY_JOB */
145 typedef struct r_at_query_job_info
147 uint32 ptr_info;
148 AT_JOB_INFO info;
149 UNISTR2 command;
151 uint32 status;
153 } AT_R_QUERY_JOB;
155 #endif /* _RPC_ATSVC_H */