Book a Demo!
CoCalc Logo Icon
StoreFeaturesDocsShareSupportNewsAboutPoliciesSign UpSign In
srohatgi01
GitHub Repository: srohatgi01/cups
Path: blob/master/scheduler/cert.h
1090 views
1
/*
2
* Authentication certificate definitions for the CUPS scheduler.
3
*
4
* Copyright 2007-2012 by Apple Inc.
5
* Copyright 1997-2005 by Easy Software Products.
6
*
7
* Licensed under Apache License v2.0. See the file "LICENSE" for more information.
8
*/
9
10
/*
11
* Certificate structure...
12
*/
13
14
typedef struct cupsd_cert_s
15
{
16
struct cupsd_cert_s *next; /* Next certificate in list */
17
int pid; /* Process ID (0 for root certificate) */
18
char certificate[33]; /* 32 hex characters, or 128 bits */
19
char username[33]; /* Authenticated username */
20
int type; /* AuthType for username */
21
} cupsd_cert_t;
22
23
24
/*
25
* Globals...
26
*/
27
28
VAR cupsd_cert_t *Certs /* List of certificates */
29
VALUE(NULL);
30
VAR time_t RootCertTime /* Root certificate update time */
31
VALUE(0);
32
33
34
/*
35
* Prototypes...
36
*/
37
38
extern void cupsdAddCert(int pid, const char *username, int type);
39
extern void cupsdDeleteCert(int pid);
40
extern void cupsdDeleteAllCerts(void);
41
extern cupsd_cert_t *cupsdFindCert(const char *certificate);
42
extern void cupsdInitCerts(void);
43
44