/*
- * "$Id: config.h 6649 2007-07-11 21:46:42Z mike $"
+ * Configuration file for CUPS on Windows.
*
- * Configuration file for the Common UNIX Printing System (CUPS).
+ * Copyright 2007-2016 by Apple Inc.
+ * Copyright 1997-2007 by Easy Software Products.
*
- * Copyright 2007-2009 by Apple Inc.
- * Copyright 1997-2007 by Easy Software Products.
- *
- * These coded instructions, statements, and computer programs are the
- * property of Apple Inc. and are protected by Federal copyright
- * law. Distribution and use rights are outlined in the file "LICENSE.txt"
- * which should have been included with this file. If this file is
- * file is missing or damaged, see the license at "http://www.cups.org/".
+ * These coded instructions, statements, and computer programs are the
+ * property of Apple Inc. and are protected by Federal copyright
+ * law. Distribution and use rights are outlined in the file "LICENSE.txt"
+ * which should have been included with this file. If this file is
+ * file is missing or damaged, see the license at "http://www.cups.org/".
*/
#ifndef _CUPS_CONFIG_H_
#include <stdlib.h>
#include <string.h>
#include <stdarg.h>
-#include <ctype.h>
#include <io.h>
+#include <direct.h>
/*
- * Microsoft also renames the POSIX functions to _name, and introduces
+ * Microsoft renames the POSIX functions to _name, and introduces
* a broken compatibility layer using the original names. As a result,
* random crashes can occur when, for example, strdup() allocates memory
* from a different heap than used by malloc() and free().
#define close _close
#define fileno _fileno
#define lseek _lseek
+#define mkdir(d,p) _mkdir(d)
#define open _open
#define read _read
+#define rmdir _rmdir
#define snprintf _snprintf
#define strdup _strdup
#define unlink _unlink
#define write _write
+/*
+ * Map the POSIX strcasecmp() and strncasecmp() functions to the Win32 stricmp()
+ * and strnicmp() functions...
+ */
+
+#define strcasecmp stricmp
+#define strncasecmp strnicmp
+
+
+/*
+ * Map the POSIX sleep() and usleep() functions to the Win32 Sleep() function...
+ */
+
+typedef unsigned long useconds_t;
+#define sleep(X) Sleep(1000 * (X))
+#define usleep(X) Sleep((X)/1000)
+
+
+/*
+ * Map various parameters to Posix style system calls
+ */
+
+# define F_OK 00
+# define W_OK 02
+# define R_OK 04
+# define O_RDONLY _O_RDONLY
+# define O_WRONLY _O_WRONLY
+# define O_CREAT _O_CREAT
+# define O_TRUNC _O_TRUNC
+
+
/*
* Compiler stuff...
*/
* Version of software...
*/
-#define CUPS_SVERSION "CUPS v1.4b3"
-#define CUPS_MINIMAL "CUPS/1.4b3"
+#define CUPS_SVERSION "CUPS v2.2"
+#define CUPS_MINIMAL "CUPS/2.2"
/*
* Default user and groups...
*/
-#define CUPS_DEFAULT_USER "lp"
-#define CUPS_DEFAULT_GROUP "sys"
-#define CUPS_DEFAULT_SYSTEM_GROUPS "admin"
-#define CUPS_DEFAULT_PRINTOPERATOR_AUTH "@admin @lpadmin"
+#define CUPS_DEFAULT_USER ""
+#define CUPS_DEFAULT_GROUP ""
+#define CUPS_DEFAULT_SYSTEM_GROUPS ""
+#define CUPS_DEFAULT_PRINTOPERATOR_AUTH ""
/*
* Default file permissions...
*/
-#define CUPS_DEFAULT_CONFIG_FILE_PERM 0644
+#define CUPS_DEFAULT_CONFIG_FILE_PERM 0640
#define CUPS_DEFAULT_LOG_FILE_PERM 0644
*/
#define CUPS_DEFAULT_BROWSING 1
-#define CUPS_DEFAULT_BROWSE_LOCAL_PROTOCOLS "CUPS dnssd"
-#define CUPS_DEFAULT_BROWSE_REMOTE_PROTOCOLS ""
-#define CUPS_DEFAULT_BROWSE_SHORT_NAMES 1
+#define CUPS_DEFAULT_BROWSE_LOCAL_PROTOCOLS ""
#define CUPS_DEFAULT_DEFAULT_SHARED 1
-#define CUPS_DEFAULT_IMPLICIT_CLASSES 1
-#define CUPS_DEFAULT_USE_NETWORK_DEFAULT 0
/*
/*
- * Do we have domain socket support?
+ * Do we have domain socket support, and if so what is the default one?
*/
#undef CUPS_DEFAULT_DOMAINSOCKET
+/*
+ * Default WebInterface value...
+ */
+
+#undef CUPS_DEFAULT_WEBIF
+
+
/*
* Where are files stored?
*
/*
- * Do we have various image libraries?
+ * Do we have posix_spawn?
*/
-/* #undef HAVE_LIBPNG */
-/* #undef HAVE_LIBZ */
-/* #undef HAVE_LIBJPEG */
-/* #undef HAVE_LIBTIFF */
+/* #undef HAVE_POSIX_SPAWN */
+
+
+/*
+ * Do we have ZLIB?
+ */
+
+#define HAVE_LIBZ 1
+#define HAVE_INFLATECOPY 1
/*
* Do we have PAM stuff?
*/
-#ifndef HAVE_LIBPAM
#define HAVE_LIBPAM 0
-#endif /* !HAVE_LIBPAM */
-
/* #undef HAVE_PAM_PAM_APPL_H */
/* #undef HAVE_PAM_SET_ITEM */
/* #undef HAVE_PAM_SETCRED */
/* #undef HAVE_CRYPT_H */
+/*
+ * Use <stdint.h>?
+ */
+
+/* #undef HAVE_STDINT_H */
+
+
/*
* Use <string.h>, <strings.h>, and/or <bstring.h>?
*/
* Do we have the strXXX() functions?
*/
-#define HAVE_STRDUP
-#define HAVE_STRCASECMP
-#define HAVE_STRNCASECMP
+#define HAVE_STRDUP 1
/* #undef HAVE_STRLCAT */
/* #undef HAVE_STRLCPY */
/* #undef HAVE_GETEUID */
+/*
+ * Do we have the setpgid() function?
+ */
+
+/* #undef HAVE_SETPGID */
+
+
/*
* Do we have the vsyslog() function?
*/
/* #undef HAVE_CDSASSL */
/* #undef HAVE_GNUTLS */
-/* #undef HAVE_LIBSSL */
-/* #undef HAVE_SSL */
+#define HAVE_SSPISSL
+#define HAVE_SSL
+
+
+/*
+ * Do we have the gnutls_transport_set_pull_timeout_function function?
+ */
+
+/* #undef HAVE_GNUTLS_TRANSPORT_SET_PULL_TIMEOUT_FUNCTION */
+
+
+/*
+ * Do we have the gnutls_priority_set_direct function?
+ */
+
+/* #undef HAVE_GNUTLS_PRIORITY_SET_DIRECT */
/*
*/
/* #undef HAVE_AUTHORIZATION_H */
-/* #undef HAVE_SECPOLICY_H */
-/* #undef HAVE_SECPOLICYPRIV_H */
/* #undef HAVE_SECBASEPRIV_H */
+/* #undef HAVE_SECCERTIFICATE_H */
/* #undef HAVE_SECIDENTITYSEARCHPRIV_H */
+/* #undef HAVE_SECITEM_H */
+/* #undef HAVE_SECITEMPRIV_H */
+/* #undef HAVE_SECPOLICY_H */
+/* #undef HAVE_SECPOLICYPRIV_H */
+/* #undef HAVE_SECURETRANSPORTPRIV_H */
/*
- * Do we have the SecIdentitySearchCreateWithPolicy function?
+ * Do we have the cssmErrorString function?
*/
-/* #undef HAVE_SECIDENTITYSEARCHCREATEWITHPOLICY */
+/* #undef HAVE_CSSMERRORSTRING */
/*
- * Do we have the SLP library?
+ * Do we have the SecGenerateSelfSignedCertificate function?
*/
-/* #undef HAVE_LIBSLP */
+/* #undef HAVE_SECGENERATESELFSIGNEDCERTIFICATE */
/*
- * Do we have an LDAP library?
+ * Do we have the SecKeychainOpen function?
*/
-/* #undef HAVE_LDAP */
-/* #undef HAVE_OPENLDAP */
-/* #undef HAVE_MOZILLA_LDAP */
-/* #undef HAVE_LDAP_SSL_H */
-/* #undef HAVE_LDAP_SSL */
-/* #undef HAVE_LDAP_REBIND_PROC */
+/* #undef HAVE_SECKEYCHAINOPEN */
/*
/*
- * Do we have DNS Service Discovery (aka Bonjour)?
+ * Do we have mDNSResponder for DNS Service Discovery (aka Bonjour)?
*/
-/* #undef HAVE_DNSSD */
+#define HAVE_DNSSD 1
/*
- * Do we have Darwin's CoreFoundation and SystemConfiguration frameworks?
+ * Do we have Avahi for DNS Service Discovery (aka Bonjour)?
*/
-/* #undef HAVE_COREFOUNDATION */
-/* #undef HAVE_SYSTEMCONFIGURATION */
+#undef HAVE_AVAHI
/*
* Do we have <sys/ioctl.h>?
*/
-/* #undef HAVE_SYS_IOCTL_H */
+#undef HAVE_SYS_IOCTL_H
/*
- * Do we have mkstemp() and/or mkstemps()?
+ * Does the "stat" structure contain the "st_gen" member?
*/
-/* #undef HAVE_MKSTEMP */
-/* #undef HAVE_MKSTEMPS */
+/* #undef HAVE_ST_GEN */
/*
/* #undef HAVE_STRUCT_SOCKADDR_SA_LEN */
-/*
- * Do we have the AIX usersec.h header file?
- */
-
-/* #undef HAVE_USERSEC_H */
-
-
/*
* Do we have pthread support?
*/
/* #undef HAVE_LAUNCH_H */
/* #undef HAVE_LAUNCHD */
-#define CUPS_DEFAULT_LAUNCHD_CONF ""
+
+
+/*
+ * Do we have systemd support?
+ */
+
+/* #undef HAVE_SYSTEMD */
/*
/*
- * Location of the poppler/Xpdf pdftops program...
+ * Do we have CoreFoundation public and private headers?
*/
-/* #undef HAVE_PDFTOPS */
-#define CUPS_PDFTOPS ""
+/* #undef HAVE_COREFOUNDATION_H */
+/* #undef HAVE_CFPRIV_H */
+/* #undef HAVE_CFBUNDLEPRIV_H */
/*
- * Location of the Ghostscript gs program...
+ * Do we have ApplicationServices public headers?
*/
-/* #undef HAVE_GHOSTSCRIPT */
-#define CUPS_GHOSTSCRIPT ""
+/* #undef HAVE_APPLICATIONSERVICES_H */
/*
- * Do we have Darwin's CoreFoundation and SystemConfiguration frameworks?
+ * Do we have the SCDynamicStoreCopyComputerName function?
*/
-/* #undef HAVE_COREFOUNDATION */
-/* #undef HAVE_SYSTEMCONFIGURATION */
+/* #undef HAVE_SCDYNAMICSTORECOPYCOMPUTERNAME */
/*
- * Do we have CoreFoundation public and private headers?
+ * Do we have the getgrouplist() function?
*/
-/* #undef HAVE_COREFOUNDATION_H */
-/* #undef HAVE_CFPRIV_H */
-/* #undef HAVE_CFBUNDLEPRIV_H */
+#undef HAVE_GETGROUPLIST
/*
- * Do we have MacOSX 10.4's mbr_XXX functions()?
+ * Do we have macOS 10.4's mbr_XXX functions?
*/
/* #undef HAVE_MEMBERSHIP_H */
/*
- * Do we have Darwin's notify_post() header and function?
+ * Do we have Darwin's notify_post header and function?
*/
/* #undef HAVE_NOTIFY_H */
/* #undef HAVE_DBUS */
/* #undef HAVE_DBUS_MESSAGE_ITER_INIT_APPEND */
-
-
-/*
- * Do we have the AppleTalk/at_proto.h header?
- */
-
-/* #undef HAVE_APPLETALK_AT_PROTO_H */
+/* #undef HAVE_DBUS_THREADS_INIT */
/*
* Do we have the GSSAPI support library (for Kerberos support)?
*/
+/* #undef HAVE_GSS_ACQUIRE_CRED_EX_F */
+/* #undef HAVE_GSS_C_NT_HOSTBASED_SERVICE */
+/* #undef HAVE_GSS_GSSAPI_H */
+/* #undef HAVE_GSS_GSSAPI_SPI_H */
/* #undef HAVE_GSSAPI */
-/* #undef HAVE_GSSAPI_H */
/* #undef HAVE_GSSAPI_GSSAPI_H */
-/* #undef HAVE_GSSAPI_GSSAPI_GENERIC_H */
-/* #undef HAVE_GSSAPI_GSSAPI_KRB5_H */
-/* #undef HAVE_GSSKRB5_REGISTER_ACCEPTOR_IDENTITY */
-/* #undef HAVE_GSS_C_NT_HOSTBASED_SERVICE */
-/* #undef HAVE_KRB5_CC_NEW_UNIQUE */
-/* #undef HAVE_KRB5_IPC_CLIENT_SET_TARGET_UID */
-/* #undef HAVE_KRB5_H */
-/* #undef HAVE_HEIMDAL */
+/* #undef HAVE_GSSAPI_H */
/*
* Default GSS service name...
*/
-#define CUPS_DEFAULT_GSSSERVICENAME "ipp"
+#define CUPS_DEFAULT_GSSSERVICENAME "host"
/*
* Which random number generator function to use...
*/
+/* #undef HAVE_ARC4RANDOM */
/* #undef HAVE_RANDOM */
-/* #undef HAVE_MRAND48 */
/* #undef HAVE_LRAND48 */
+#ifdef HAVE_ARC4RANDOM
+# define CUPS_RAND() arc4random()
+# define CUPS_SRAND(v) arc4random_stir()
+#elif defined(HAVE_RANDOM)
+# define CUPS_RAND() random()
+# define CUPS_SRAND(v) srandom(v)
+#elif defined(HAVE_LRAND48)
+# define CUPS_RAND() lrand48()
+# define CUPS_SRAND(v) srand48(v)
+#else
+# define CUPS_RAND() rand()
+# define CUPS_SRAND(v) srand(v)
+#endif /* HAVE_ARC4RANDOM */
+
/*
* Do we have vproc_transaction_begin/end?
* Do we have libusb?
*/
-/* #undef HAVE_USB_H */
+/* #undef HAVE_LIBUSB */
/*
/* #undef HAVE_TCPD_H */
-#endif /* !_CUPS_CONFIG_H_ */
+/*
+ * Do we have <iconv.h>?
+ */
+
+/* #undef HAVE_ICONV_H */
+
+
+/*
+ * Do we have statfs or statvfs and one of the corresponding headers?
+ */
+
+/* #undef HAVE_STATFS */
+/* #undef HAVE_STATVFS */
+/* #undef HAVE_SYS_MOUNT_H */
+/* #undef HAVE_SYS_STATFS_H */
+/* #undef HAVE_SYS_STATVFS_H */
+/* #undef HAVE_SYS_VFS_H */
+
+
+/*
+ * Location of macOS localization bundle, if any.
+ */
+
+/* #undef CUPS_BUNDLEDIR */
+
/*
- * End of "$Id: config.h 6649 2007-07-11 21:46:42Z mike $".
+ * Do we have XPC?
*/
+
+/* #undef HAVE_XPC */
+/* #undef HAVE_XPC_PRIVATE_H */
+
+
+/*
+ * Do we have Mini-XML?
+ */
+
+/* #undef HAVE_MXML_H */
+
+
+/*
+ * Do we have the C99 abs() function?
+ */
+
+/* #undef HAVE_ABS */
+#if !defined(HAVE_ABS) && !defined(abs)
+# if defined(__GNUC__) || __STDC_VERSION__ >= 199901L
+# define abs(x) _cups_abs(x)
+static inline int _cups_abs(int i) { return (i < 0 ? -i : i); }
+# elif defined(_MSC_VER)
+# define abs(x) _cups_abs(x)
+static __inline int _cups_abs(int i) { return (i < 0 ? -i : i); }
+# else
+# define abs(x) ((x) < 0 ? -(x) : (x))
+# endif /* __GNUC__ || __STDC_VERSION__ */
+#endif /* !HAVE_ABS && !abs */
+
+#endif /* !_CUPS_CONFIG_H_ */