Home | History | Annotate | Download | only in cups
      1 /*
      2  * Administration utility API definitions for CUPS.
      3  *
      4  * Copyright 2007-2016 by Apple Inc.
      5  * Copyright 2001-2007 by Easy Software Products.
      6  *
      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  * missing or damaged, see the license at "http://www.cups.org/".
     12  *
     13  * This file is subject to the Apple OS-Developed Software exception.
     14  */
     15 
     16 #ifndef _CUPS_ADMINUTIL_H_
     17 #  define _CUPS_ADMINUTIL_H_
     18 
     19 /*
     20  * Include necessary headers...
     21  */
     22 
     23 #  include <stdio.h>
     24 #  include "cups.h"
     25 
     26 
     27 /*
     28  * C++ magic...
     29  */
     30 
     31 #  ifdef __cplusplus
     32 extern "C" {
     33 #  endif /* __cplusplus */
     34 
     35 
     36 /*
     37  * Constants...
     38  */
     39 
     40 #  define CUPS_SERVER_DEBUG_LOGGING	"_debug_logging"
     41 #  define CUPS_SERVER_REMOTE_ADMIN	"_remote_admin"
     42 #  define CUPS_SERVER_REMOTE_ANY	"_remote_any"
     43 #  define CUPS_SERVER_SHARE_PRINTERS	"_share_printers"
     44 #  define CUPS_SERVER_USER_CANCEL_ANY	"_user_cancel_any"
     45 
     46 
     47 /*
     48  * Types and structures...
     49  */
     50 
     51 typedef void (*cups_device_cb_t)(const char *device_class,
     52                                  const char *device_id, const char *device_info,
     53                                  const char *device_make_and_model,
     54                                  const char *device_uri,
     55 				 const char *device_location, void *user_data);
     56 					/* Device callback
     57 					 * @since CUPS 1.4/macOS 10.6@ */
     58 
     59 
     60 /*
     61  * Functions...
     62  */
     63 
     64 extern int	cupsAdminExportSamba(const char *dest, const char *ppd,
     65 		                     const char *samba_server,
     66 			             const char *samba_user,
     67 				     const char *samba_password,
     68 				     FILE *logfile) _CUPS_DEPRECATED;
     69 extern char	*cupsAdminCreateWindowsPPD(http_t *http, const char *dest,
     70 		                           char *buffer, int bufsize)
     71 		                           _CUPS_DEPRECATED;
     72 
     73 extern int	cupsAdminGetServerSettings(http_t *http,
     74 			                   int *num_settings,
     75 		                           cups_option_t **settings)
     76 		                           _CUPS_API_1_3;
     77 extern int	cupsAdminSetServerSettings(http_t *http,
     78 		                           int num_settings,
     79 		                           cups_option_t *settings)
     80 		                           _CUPS_API_1_3;
     81 
     82 extern ipp_status_t	cupsGetDevices(http_t *http, int timeout,
     83 			               const char *include_schemes,
     84 			               const char *exclude_schemes,
     85 				       cups_device_cb_t callback,
     86 				       void *user_data) _CUPS_API_1_4;
     87 
     88 
     89 #  ifdef __cplusplus
     90 }
     91 #  endif /* __cplusplus */
     92 
     93 #endif /* !_CUPS_ADMINUTIL_H_ */
     94