]> git.ipfire.org Git - thirdparty/cups.git/blob - scheduler/cert.h
Merge CUPS 1.4svn-r7319.
[thirdparty/cups.git] / scheduler / cert.h
1 /*
2 * "$Id: cert.h 6649 2007-07-11 21:46:42Z mike $"
3 *
4 * Authentication certificate definitions for the Common UNIX
5 * Printing System (CUPS).
6 *
7 * Copyright 2007-2008 by Apple Inc.
8 * Copyright 1997-2005 by Easy Software Products.
9 *
10 * These coded instructions, statements, and computer programs are the
11 * property of Apple Inc. and are protected by Federal copyright
12 * law. Distribution and use rights are outlined in the file "LICENSE.txt"
13 * which should have been included with this file. If this file is
14 * file is missing or damaged, see the license at "http://www.cups.org/".
15 */
16
17 /*
18 * Certificate structure...
19 */
20
21 typedef struct cupsd_cert_s
22 {
23 struct cupsd_cert_s *next; /* Next certificate in list */
24 int pid; /* Process ID (0 for root certificate) */
25 char certificate[33]; /* 32 hex characters, or 128 bits */
26 char username[33]; /* Authenticated username */
27 #ifdef HAVE_GSSAPI
28 krb5_ccache ccache; /* Kerberos credential cache */
29 #endif /* HAVE_GSSAPI */
30 } cupsd_cert_t;
31
32
33 /*
34 * Globals...
35 */
36
37 VAR cupsd_cert_t *Certs /* List of certificates */
38 VALUE(NULL);
39 VAR time_t RootCertTime /* Root certificate update time */
40 VALUE(0);
41
42
43 /*
44 * Prototypes...
45 */
46
47 extern void cupsdAddCert(int pid, const char *username,
48 void *ccache);
49 extern void cupsdDeleteCert(int pid);
50 extern void cupsdDeleteAllCerts(void);
51 extern const char *cupsdFindCert(const char *certificate);
52 extern void cupsdInitCerts(void);
53
54
55 /*
56 * End of "$Id: cert.h 6649 2007-07-11 21:46:42Z mike $".
57 */