2 * Directory services definitions for the CUPS scheduler.
4 * Copyright 2007-2012 by Apple Inc.
5 * Copyright 1997-2007 by Easy Software Products, all rights reserved.
7 * These coded instructions, statements, and computer programs are the
8 * property of Apple Inc. and are protected by Federal copyright
9 * law. Distribution and use rights are outlined in the file "LICENSE.txt"
10 * which should have been included with this file. If this file is
11 * file is missing or damaged, see the license at "http://www.cups.org/".
18 #define BROWSE_DNSSD 1 /* DNS Service Discovery (aka Bonjour) */
19 #define BROWSE_SMB 2 /* SMB/Samba */
20 #define BROWSE_LPD 4 /* LPD via xinetd or launchd */
21 #define BROWSE_ALL 7 /* All protocols */
28 VAR
int Browsing
VALUE(TRUE
),
29 /* Whether or not browsing is enabled */
30 BrowseWebIF
VALUE(FALSE
),
31 /* Whether the web interface is advertised */
34 /* Protocols to support for local printers */
35 #if defined(HAVE_DNSSD) || defined(HAVE_AVAHI)
36 VAR
char *DNSSDComputerName
VALUE(NULL
),
37 /* Computer/server name */
38 *DNSSDHostName
VALUE(NULL
),
40 *DNSSDSubTypes
VALUE(NULL
);
41 /* Bonjour registration subtypes */
42 VAR cups_array_t
*DNSSDAlias
VALUE(NULL
);
43 /* List of dynamic ServerAlias's */
44 VAR
int DNSSDPort
VALUE(0);
45 /* Port number to register */
46 VAR cups_array_t
*DNSSDPrinters
VALUE(NULL
);
47 /* Printers we have registered */
49 VAR DNSServiceRef DNSSDMaster
VALUE(NULL
);
50 /* Master DNS-SD service reference */
51 # else /* HAVE_AVAHI */
52 VAR AvahiThreadedPoll
*DNSSDMaster
VALUE(NULL
);
53 /* Master polling interface for Avahi */
54 VAR AvahiClient
*DNSSDClient
VALUE(NULL
);
55 /* Client information */
56 # endif /* HAVE_DNSSD */
57 VAR cupsd_srv_t WebIFSrv
VALUE(NULL
);
58 /* Service reference for the web interface */
59 #endif /* HAVE_DNSSD || HAVE_AVAHI */
61 VAR
char *LPDConfigFile
VALUE(NULL
),
62 /* LPD configuration file */
63 *SMBConfigFile
VALUE(NULL
);
64 /* SMB configuration file */
71 extern void cupsdDeregisterPrinter(cupsd_printer_t
*p
, int removeit
);
72 extern void cupsdRegisterPrinter(cupsd_printer_t
*p
);
73 extern void cupsdStartBrowsing(void);
74 extern void cupsdStopBrowsing(void);
75 #if defined(HAVE_DNSSD) || defined(HAVE_AVAHI)
76 extern void cupsdUpdateDNSSDName(void);
77 #endif /* HAVE_DNSSD || HAVE_AVAHI */