Revert manifest to default one
[external/cups.git] / scheduler / policy.h
1 /*
2  * "$Id: policy.h 9352 2010-11-06 04:55:26Z mike $"
3  *
4  *   Policy definitions for the CUPS scheduler.
5  *
6  *   Copyright 2007-2010 by Apple Inc.
7  *   Copyright 1997-2005 by Easy Software Products, all rights reserved.
8  *
9  *   These coded instructions, statements, and computer programs are the
10  *   property of Apple Inc. and are protected by Federal copyright
11  *   law.  Distribution and use rights are outlined in the file "LICENSE.txt"
12  *   which should have been included with this file.  If this file is
13  *   file is missing or damaged, see the license at "http://www.cups.org/".
14  */
15
16
17 /*
18  * Policy structure...
19  */
20
21 typedef struct
22 {
23   char                  *name;          /* Policy name */
24   cups_array_t          *job_access,    /* Private users/groups for jobs */
25                         *job_attrs,     /* Private attributes for jobs */
26                         *sub_access,    /* Private users/groups for subscriptions */
27                         *sub_attrs,     /* Private attributes for subscriptions */
28                         *ops;           /* Operations */
29 } cupsd_policy_t;
30
31 typedef struct cupsd_printer_s cupsd_printer_t;
32
33
34 /*
35  * Globals...
36  */
37
38 VAR cups_array_t        *Policies       VALUE(NULL);
39                                         /* Policies */
40
41
42 /*
43  * Prototypes...
44  */
45
46 extern cupsd_policy_t   *cupsdAddPolicy(const char *policy);
47 extern cupsd_location_t *cupsdAddPolicyOp(cupsd_policy_t *p,
48                                           cupsd_location_t *po,
49                                           ipp_op_t op);
50 extern http_status_t    cupsdCheckPolicy(cupsd_policy_t *p, cupsd_client_t *con,
51                                          const char *owner);
52 extern void             cupsdDeleteAllPolicies(void);
53 extern cupsd_policy_t   *cupsdFindPolicy(const char *policy);
54 extern cupsd_location_t *cupsdFindPolicyOp(cupsd_policy_t *p, ipp_op_t op);
55 extern cups_array_t     *cupsdGetPrivateAttrs(cupsd_policy_t *p,
56                                               cupsd_client_t *con,
57                                               cupsd_printer_t *printer,
58                                               const char *owner);
59
60
61 /*
62  * End of "$Id: policy.h 9352 2010-11-06 04:55:26Z mike $".
63  */