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