xref: /aosp_15_r20/external/libcups/scheduler/dirsvc.h (revision 5e7646d21f1134fb0638875d812ef646c12ab91e)
1*5e7646d2SAndroid Build Coastguard Worker /*
2*5e7646d2SAndroid Build Coastguard Worker  * Directory services definitions for the CUPS scheduler.
3*5e7646d2SAndroid Build Coastguard Worker  *
4*5e7646d2SAndroid Build Coastguard Worker  * Copyright 2007-2017 by Apple Inc.
5*5e7646d2SAndroid Build Coastguard Worker  * Copyright 1997-2007 by Easy Software Products, all rights reserved.
6*5e7646d2SAndroid Build Coastguard Worker  *
7*5e7646d2SAndroid Build Coastguard Worker  * Licensed under Apache License v2.0.  See the file "LICENSE" for more information.
8*5e7646d2SAndroid Build Coastguard Worker  */
9*5e7646d2SAndroid Build Coastguard Worker 
10*5e7646d2SAndroid Build Coastguard Worker /*
11*5e7646d2SAndroid Build Coastguard Worker  * Browse protocols...
12*5e7646d2SAndroid Build Coastguard Worker  */
13*5e7646d2SAndroid Build Coastguard Worker 
14*5e7646d2SAndroid Build Coastguard Worker #define BROWSE_DNSSD	1		/* DNS Service Discovery (aka Bonjour) */
15*5e7646d2SAndroid Build Coastguard Worker #define BROWSE_SMB	2		/* SMB/Samba */
16*5e7646d2SAndroid Build Coastguard Worker #define BROWSE_LPD	4		/* LPD via xinetd or launchd */
17*5e7646d2SAndroid Build Coastguard Worker #define BROWSE_ALL	7		/* All protocols */
18*5e7646d2SAndroid Build Coastguard Worker 
19*5e7646d2SAndroid Build Coastguard Worker 
20*5e7646d2SAndroid Build Coastguard Worker /*
21*5e7646d2SAndroid Build Coastguard Worker  * Globals...
22*5e7646d2SAndroid Build Coastguard Worker  */
23*5e7646d2SAndroid Build Coastguard Worker 
24*5e7646d2SAndroid Build Coastguard Worker VAR int			Browsing	VALUE(TRUE),
25*5e7646d2SAndroid Build Coastguard Worker 					/* Whether or not browsing is enabled */
26*5e7646d2SAndroid Build Coastguard Worker 			BrowseWebIF	VALUE(FALSE),
27*5e7646d2SAndroid Build Coastguard Worker 					/* Whether the web interface is advertised */
28*5e7646d2SAndroid Build Coastguard Worker 			BrowseLocalProtocols
29*5e7646d2SAndroid Build Coastguard Worker 					VALUE(BROWSE_ALL);
30*5e7646d2SAndroid Build Coastguard Worker 					/* Protocols to support for local printers */
31*5e7646d2SAndroid Build Coastguard Worker #if defined(HAVE_DNSSD) || defined(HAVE_AVAHI)
32*5e7646d2SAndroid Build Coastguard Worker VAR char		*DNSSDComputerName VALUE(NULL),
33*5e7646d2SAndroid Build Coastguard Worker 					/* Computer/server name */
34*5e7646d2SAndroid Build Coastguard Worker 			*DNSSDHostName	VALUE(NULL),
35*5e7646d2SAndroid Build Coastguard Worker 					/* Hostname */
36*5e7646d2SAndroid Build Coastguard Worker 			*DNSSDSubTypes VALUE(NULL);
37*5e7646d2SAndroid Build Coastguard Worker 					/* Bonjour registration subtypes */
38*5e7646d2SAndroid Build Coastguard Worker VAR cups_array_t	*DNSSDAlias	VALUE(NULL);
39*5e7646d2SAndroid Build Coastguard Worker 					/* List of dynamic ServerAlias's */
40*5e7646d2SAndroid Build Coastguard Worker VAR int			DNSSDPort	VALUE(0);
41*5e7646d2SAndroid Build Coastguard Worker 					/* Port number to register */
42*5e7646d2SAndroid Build Coastguard Worker VAR cups_array_t	*DNSSDPrinters	VALUE(NULL);
43*5e7646d2SAndroid Build Coastguard Worker 					/* Printers we have registered */
44*5e7646d2SAndroid Build Coastguard Worker #  ifdef HAVE_DNSSD
45*5e7646d2SAndroid Build Coastguard Worker VAR DNSServiceRef	DNSSDMaster	VALUE(NULL);
46*5e7646d2SAndroid Build Coastguard Worker 					/* Master DNS-SD service reference */
47*5e7646d2SAndroid Build Coastguard Worker #  else /* HAVE_AVAHI */
48*5e7646d2SAndroid Build Coastguard Worker VAR AvahiThreadedPoll	*DNSSDMaster	VALUE(NULL);
49*5e7646d2SAndroid Build Coastguard Worker 					/* Master polling interface for Avahi */
50*5e7646d2SAndroid Build Coastguard Worker VAR AvahiClient		*DNSSDClient	VALUE(NULL);
51*5e7646d2SAndroid Build Coastguard Worker 					/* Client information */
52*5e7646d2SAndroid Build Coastguard Worker #  endif /* HAVE_DNSSD */
53*5e7646d2SAndroid Build Coastguard Worker VAR cupsd_srv_t		WebIFSrv	VALUE(NULL);
54*5e7646d2SAndroid Build Coastguard Worker 					/* Service reference for the web interface */
55*5e7646d2SAndroid Build Coastguard Worker #endif /* HAVE_DNSSD || HAVE_AVAHI */
56*5e7646d2SAndroid Build Coastguard Worker 
57*5e7646d2SAndroid Build Coastguard Worker VAR char		*LPDConfigFile	VALUE(NULL),
58*5e7646d2SAndroid Build Coastguard Worker 					/* LPD configuration file */
59*5e7646d2SAndroid Build Coastguard Worker 			*SMBConfigFile	VALUE(NULL);
60*5e7646d2SAndroid Build Coastguard Worker 					/* SMB configuration file */
61*5e7646d2SAndroid Build Coastguard Worker 
62*5e7646d2SAndroid Build Coastguard Worker 
63*5e7646d2SAndroid Build Coastguard Worker /*
64*5e7646d2SAndroid Build Coastguard Worker  * Prototypes...
65*5e7646d2SAndroid Build Coastguard Worker  */
66*5e7646d2SAndroid Build Coastguard Worker 
67*5e7646d2SAndroid Build Coastguard Worker extern void	cupsdDeregisterPrinter(cupsd_printer_t *p, int removeit);
68*5e7646d2SAndroid Build Coastguard Worker extern void	cupsdRegisterPrinter(cupsd_printer_t *p);
69*5e7646d2SAndroid Build Coastguard Worker extern void	cupsdStartBrowsing(void);
70*5e7646d2SAndroid Build Coastguard Worker extern void	cupsdStopBrowsing(void);
71*5e7646d2SAndroid Build Coastguard Worker #if defined(HAVE_DNSSD) || defined(HAVE_AVAHI)
72*5e7646d2SAndroid Build Coastguard Worker extern void	cupsdUpdateDNSSDName(void);
73*5e7646d2SAndroid Build Coastguard Worker #endif /* HAVE_DNSSD || HAVE_AVAHI */
74