]> git.ipfire.org Git - thirdparty/cups.git/blob - scheduler/cert.h
One more fix for STR #4223 - default cups-files.conf location and warn about
[thirdparty/cups.git] / scheduler / cert.h
1 /*
2 * "$Id$"
3 *
4 * Authentication certificate definitions for the CUPS scheduler.
5 *
6 * Copyright 2007-2010 by Apple Inc.
7 * Copyright 1997-2005 by Easy Software Products.
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 * Certificate structure...
18 */
19
20 typedef struct cupsd_cert_s
21 {
22 struct cupsd_cert_s *next; /* Next certificate in list */
23 int pid; /* Process ID (0 for root certificate) */
24 char certificate[33]; /* 32 hex characters, or 128 bits */
25 char username[33]; /* Authenticated username */
26 #ifdef HAVE_GSSAPI
27 krb5_ccache ccache; /* Kerberos credential cache */
28 #endif /* HAVE_GSSAPI */
29 } cupsd_cert_t;
30
31
32 /*
33 * Globals...
34 */
35
36 VAR cupsd_cert_t *Certs /* List of certificates */
37 VALUE(NULL);
38 VAR time_t RootCertTime /* Root certificate update time */
39 VALUE(0);
40
41
42 /*
43 * Prototypes...
44 */
45
46 extern void cupsdAddCert(int pid, const char *username,
47 void *ccache);
48 extern void cupsdDeleteCert(int pid);
49 extern void cupsdDeleteAllCerts(void);
50 extern cupsd_cert_t *cupsdFindCert(const char *certificate);
51 extern void cupsdInitCerts(void);
52
53
54 /*
55 * End of "$Id$".
56 */