-/** Get the netbios name used for making connections */
-char *
-smbc_getNetbiosName(SMBCCTX *c)
-{
- return c->config.netbios_name;
-}
-
-/** Set the netbios name used for making connections */
-void
-smbc_setNetbiosName(SMBCCTX *c, char * netbios_name)
-{
- c->config.netbios_name = netbios_name;
-}
-
-/** Get the workgroup used for making connections */
-char *
-smbc_getWorkgroup(SMBCCTX *c)
-{
- return c->config.workgroup;
-}
-
-/** Set the workgroup used for making connections */
-void
-smbc_setWorkgroup(SMBCCTX *c, char * workgroup)
-{
- c->config.workgroup = workgroup;
-}
-
-/** Get the username used for making connections */
-char *
-smbc_getUser(SMBCCTX *c)
-{
- return c->config.user;
-}
-
-/** Set the username used for making connections */
-void
-smbc_setUser(SMBCCTX *c, char * user)
-{
- c->config.user = user;
-}
-
-/** Get the debug level */
-int
-smbc_getDebug(SMBCCTX *c)
-{
- return c->config.debug;
-}
-
-/** Set the debug level */
-void
-smbc_setDebug(SMBCCTX *c, int debug)
-{
- c->config.debug = debug;
-}
-
-/**
- * Get the timeout used for waiting on connections and response data
- * (in milliseconds)
- */
-int
-smbc_getTimeout(SMBCCTX *c)
-{
- return c->config.timeout;
-}
-
-/**
- * Set the timeout used for waiting on connections and response data
- * (in milliseconds)
- */
-void
-smbc_setTimeout(SMBCCTX *c, int timeout)
-{
- c->config.timeout = timeout;
-}
-
-/** Get whether to log to standard error instead of standard output */
-smbc_bool
-smbc_getOptionDebugToStderr(SMBCCTX *c)
-{
- return c->internal->debug_stderr;
-}
-
-/** Set whether to log to standard error instead of standard output */
-void
-smbc_setOptionDebugToStderr(SMBCCTX *c, smbc_bool b)
-{
- c->internal->debug_stderr = b;
-}
-
-/**
- * Get whether to use new-style time attribute names, e.g. WRITE_TIME rather
- * than the old-style names such as M_TIME. This allows also setting/getting
- * CREATE_TIME which was previously unimplemented. (Note that the old C_TIME
- * was supposed to be CHANGE_TIME but was confused and sometimes referred to
- * CREATE_TIME.)
- */
-smbc_bool
-smbc_getOptionFullTimeNames(SMBCCTX *c)
-{
- return c->internal->full_time_names;
-}
-
-/**
- * Set whether to use new-style time attribute names, e.g. WRITE_TIME rather
- * than the old-style names such as M_TIME. This allows also setting/getting
- * CREATE_TIME which was previously unimplemented. (Note that the old C_TIME
- * was supposed to be CHANGE_TIME but was confused and sometimes referred to
- * CREATE_TIME.)
- */
-void
-smbc_setOptionFullTimeNames(SMBCCTX *c, smbc_bool b)
-{
- c->internal->full_time_names = b;
-}
-
-/**
- * Get the share mode to use for files opened with SMBC_open_ctx(). The
- * default is SMBC_SHAREMODE_DENY_NONE.
- */
-smbc_share_mode
-smbc_getOptionOpenShareMode(SMBCCTX *c)
-{
- return c->internal->share_mode;
-}
-
-/**
- * Set the share mode to use for files opened with SMBC_open_ctx(). The
- * default is SMBC_SHAREMODE_DENY_NONE.
- */
-void
-smbc_setOptionOpenShareMode(SMBCCTX *c, smbc_share_mode share_mode)
-{
- c->internal->share_mode = share_mode;
-}
-
-/** Retrieve a previously set user data handle */
-void *
-smbc_getOptionUserData(SMBCCTX *c)
-{
- return c->internal->user_data;
-}
-
-/** Save a user data handle */
-void
-smbc_setOptionUserData(SMBCCTX *c, void *user_data)
-{
- c->internal->user_data = user_data;
-}
-
-/** Get the encoded value for encryption level. */
-smbc_smb_encrypt_level
-smbc_getOptionSmbEncryptionLevel(SMBCCTX *c)
-{
- return c->internal->smb_encryption_level;
-}
-
-/** Set the encoded value for encryption level. */
-void
-smbc_setOptionSmbEncryptionLevel(SMBCCTX *c, smbc_smb_encrypt_level level)
-{
- c->internal->smb_encryption_level = level;
-}
-
-/**
- * Get from how many local master browsers should the list of workgroups be
- * retrieved. It can take up to 12 minutes or longer after a server becomes a
- * local master browser, for it to have the entire browse list (the list of
- * workgroups/domains) from an entire network. Since a client never knows
- * which local master browser will be found first, the one which is found
- * first and used to retrieve a browse list may have an incomplete or empty
- * browse list. By requesting the browse list from multiple local master
- * browsers, a more complete list can be generated. For small networks (few
- * workgroups), it is recommended that this value be set to 0, causing the
- * browse lists from all found local master browsers to be retrieved and
- * merged. For networks with many workgroups, a suitable value for this
- * variable is probably somewhere around 3. (Default: 3).
- */
-int
-smbc_getOptionBrowseMaxLmbCount(SMBCCTX *c)
-{
- return c->options.browse_max_lmb_count;
-}
-
-/**
- * Set from how many local master browsers should the list of workgroups be
- * retrieved. It can take up to 12 minutes or longer after a server becomes a
- * local master browser, for it to have the entire browse list (the list of
- * workgroups/domains) from an entire network. Since a client never knows
- * which local master browser will be found first, the one which is found
- * first and used to retrieve a browse list may have an incomplete or empty
- * browse list. By requesting the browse list from multiple local master
- * browsers, a more complete list can be generated. For small networks (few
- * workgroups), it is recommended that this value be set to 0, causing the
- * browse lists from all found local master browsers to be retrieved and
- * merged. For networks with many workgroups, a suitable value for this
- * variable is probably somewhere around 3. (Default: 3).
- */
-void
-smbc_setOptionBrowseMaxLmbCount(SMBCCTX *c, int count)
-{
- c->options.browse_max_lmb_count = count;
-}
-
-/**
- * Get whether to url-encode readdir entries.
- *
- * There is a difference in the desired return strings from
- * smbc_readdir() depending upon whether the filenames are to
- * be displayed to the user, or whether they are to be
- * appended to the path name passed to smbc_opendir() to call
- * a further smbc_ function (e.g. open the file with
- * smbc_open()). In the former case, the filename should be
- * in "human readable" form. In the latter case, the smbc_
- * functions expect a URL which must be url-encoded. Those
- * functions decode the URL. If, for example, smbc_readdir()
- * returned a file name of "abc%20def.txt", passing a path
- * with this file name attached to smbc_open() would cause
- * smbc_open to attempt to open the file "abc def.txt" since
- * the %20 is decoded into a space.
- *
- * Set this option to True if the names returned by
- * smbc_readdir() should be url-encoded such that they can be
- * passed back to another smbc_ call. Set it to False if the
- * names returned by smbc_readdir() are to be presented to the
- * user.
- *
- * For backwards compatibility, this option defaults to False.
- */
-smbc_bool
-smbc_getOptionUrlEncodeReaddirEntries(SMBCCTX *c)
-{
- return c->options.urlencode_readdir_entries;
-}
-
-/**
- * Set whether to url-encode readdir entries.
- *
- * There is a difference in the desired return strings from
- * smbc_readdir() depending upon whether the filenames are to
- * be displayed to the user, or whether they are to be
- * appended to the path name passed to smbc_opendir() to call
- * a further smbc_ function (e.g. open the file with
- * smbc_open()). In the former case, the filename should be
- * in "human readable" form. In the latter case, the smbc_
- * functions expect a URL which must be url-encoded. Those
- * functions decode the URL. If, for example, smbc_readdir()
- * returned a file name of "abc%20def.txt", passing a path
- * with this file name attached to smbc_open() would cause
- * smbc_open to attempt to open the file "abc def.txt" since
- * the %20 is decoded into a space.
- *
- * Set this option to True if the names returned by
- * smbc_readdir() should be url-encoded such that they can be
- * passed back to another smbc_ call. Set it to False if the
- * names returned by smbc_readdir() are to be presented to the
- * user.
- *
- * For backwards compatibility, this option defaults to False.
- */
-void
-smbc_setOptionUrlEncodeReaddirEntries(SMBCCTX *c, smbc_bool b)
-{
- c->options.urlencode_readdir_entries = b;
-}
-
-/**
- * Get whether to use the same connection for all shares on a server.
- *
- * Some Windows versions appear to have a limit to the number
- * of concurrent SESSIONs and/or TREE CONNECTions. In
- * one-shot programs (i.e. the program runs and then quickly
- * ends, thereby shutting down all connections), it is
- * probably reasonable to establish a new connection for each
- * share. In long-running applications, the limitation can be
- * avoided by using only a single connection to each server,
- * and issuing a new TREE CONNECT when the share is accessed.
- */
-smbc_bool
-smbc_getOptionOneSharePerServer(SMBCCTX *c)
-{
- return c->options.one_share_per_server;
-}
-
-/**
- * Set whether to use the same connection for all shares on a server.
- *
- * Some Windows versions appear to have a limit to the number
- * of concurrent SESSIONs and/or TREE CONNECTions. In
- * one-shot programs (i.e. the program runs and then quickly
- * ends, thereby shutting down all connections), it is
- * probably reasonable to establish a new connection for each
- * share. In long-running applications, the limitation can be
- * avoided by using only a single connection to each server,
- * and issuing a new TREE CONNECT when the share is accessed.
- */
-void
-smbc_setOptionOneSharePerServer(SMBCCTX *c, smbc_bool b)
-{
- c->options.one_share_per_server = b;
-}
-
-/** Get whether to enable use of kerberos */
-smbc_bool
-smbc_getOptionUseKerberos(SMBCCTX *c)
-{
- return c->flags.bits & SMB_CTX_FLAG_USE_KERBEROS ? True : False;
-}
-
-/** Set whether to enable use of kerberos */
-void
-smbc_setOptionUseKerberos(SMBCCTX *c, smbc_bool b)
-{
- if (b) {
- c->flags.bits |= SMB_CTX_FLAG_USE_KERBEROS;
- } else {
- c->flags.bits &= ~SMB_CTX_FLAG_USE_KERBEROS;
- }
-}
-
-/** Get whether to fallback after kerberos */
-smbc_bool
-smbc_getOptionFallbackAfterKerberos(SMBCCTX *c)
-{
- return c->flags.bits & SMB_CTX_FLAG_FALLBACK_AFTER_KERBEROS ? True : False;
-}
-
-/** Set whether to fallback after kerberos */
-void
-smbc_setOptionFallbackAfterKerberos(SMBCCTX *c, smbc_bool b)
-{
- if (b) {
- c->flags.bits |= SMB_CTX_FLAG_FALLBACK_AFTER_KERBEROS;
- } else {
- c->flags.bits &= ~SMB_CTX_FLAG_FALLBACK_AFTER_KERBEROS;
- }
-}
-
-/** Get whether to automatically select anonymous login */
-smbc_bool
-smbc_getOptionNoAutoAnonymousLogin(SMBCCTX *c)
-{
- return c->flags.bits & SMBCCTX_FLAG_NO_AUTO_ANONYMOUS_LOGON ? True : False;
-}
-
-/** Set whether to automatically select anonymous login */
-void
-smbc_setOptionNoAutoAnonymousLogin(SMBCCTX *c, smbc_bool b)
-{
- if (b) {
- c->flags.bits |= SMBCCTX_FLAG_NO_AUTO_ANONYMOUS_LOGON;
- } else {
- c->flags.bits &= ~SMBCCTX_FLAG_NO_AUTO_ANONYMOUS_LOGON;
- }
-}
-
-/** Get the function for obtaining authentication data */
-smbc_get_auth_data_fn
-smbc_getFunctionAuthData(SMBCCTX *c)
-{
- return c->server.get_auth_data_fn;
-}
-
-/** Set the function for obtaining authentication data */
-void
-smbc_setFunctionAuthData(SMBCCTX *c, smbc_get_auth_data_fn fn)
-{
- c->internal->auth_fn_with_context = NULL;
- c->server.get_auth_data_fn = fn;
-}
-
-/** Get the new-style authentication function which includes the context. */
-smbc_get_auth_data_with_context_fn
-smbc_getFunctionAuthDataWithContext(SMBCCTX *c)
-{
- return c->internal->auth_fn_with_context;
-}
-
-/** Set the new-style authentication function which includes the context. */
-void
-smbc_setFunctionAuthDataWithContext(SMBCCTX *c,
- smbc_get_auth_data_with_context_fn fn)
-{
- c->server.get_auth_data_fn = NULL;
- c->internal->auth_fn_with_context = fn;
-}
-
-/** Get the function for checking if a server is still good */
-smbc_check_server_fn
-smbc_getFunctionCheckServer(SMBCCTX *c)
-{
- return c->server.check_server_fn;
-}
-
-/** Set the function for checking if a server is still good */
-void
-smbc_setFunctionCheckServer(SMBCCTX *c, smbc_check_server_fn fn)
-{
- c->server.check_server_fn = fn;
-}
-
-/** Get the function for removing a server if unused */
-smbc_remove_unused_server_fn
-smbc_getFunctionRemoveUnusedServer(SMBCCTX *c)
-{
- return c->server.remove_unused_server_fn;
-}
-
-/** Set the function for removing a server if unused */
-void
-smbc_setFunctionRemoveUnusedServer(SMBCCTX *c,
- smbc_remove_unused_server_fn fn)
-{
- c->server.remove_unused_server_fn = fn;
-}
-
-/** Get the function to store private data of the server cache */
-struct
-smbc_server_cache * smbc_getServerCacheData(SMBCCTX *c)
-{
- return c->cache.server_cache_data;
-}
-
-/** Set the function to store private data of the server cache */
-void
-smbc_setServerCacheData(SMBCCTX *c, struct smbc_server_cache * cache)
-{
- c->cache.server_cache_data = cache;
-}
-
-
-/** Get the function for adding a cached server */
-smbc_add_cached_srv_fn
-smbc_getFunctionAddCachedServer(SMBCCTX *c)
-{
- return c->cache.add_cached_server_fn;
-}
-
-/** Set the function for adding a cached server */
-void
-smbc_setFunctionAddCachedServer(SMBCCTX *c, smbc_add_cached_srv_fn fn)
-{
- c->cache.add_cached_server_fn = fn;
-}
-
-/** Get the function for server cache lookup */
-smbc_get_cached_srv_fn
-smbc_getFunctionGetCachedServer(SMBCCTX *c)
-{
- return c->cache.get_cached_server_fn;
-}
-
-/** Set the function for server cache lookup */
-void
-smbc_setFunctionGetCachedServer(SMBCCTX *c, smbc_get_cached_srv_fn fn)
-{
- c->cache.get_cached_server_fn = fn;
-}
-
-/** Get the function for server cache removal */
-smbc_remove_cached_srv_fn
-smbc_getFunctionRemoveCachedServer(SMBCCTX *c)
-{
- return c->cache.remove_cached_server_fn;
-}
-
-/** Set the function for server cache removal */
-void
-smbc_setFunctionRemoveCachedServer(SMBCCTX *c,
- smbc_remove_cached_srv_fn fn)
-{
- c->cache.remove_cached_server_fn = fn;
-}
-
-/**
- * Get the function for server cache purging. This function tries to
- * remove all cached servers (e.g. on disconnect)
- */
-smbc_purge_cached_srv_fn
-smbc_getFunctionPurgeCachedServers(SMBCCTX *c)
-{
- return c->cache.purge_cached_servers_fn;
-}
-
-/**
- * Set the function for server cache purging. This function tries to
- * remove all cached servers (e.g. on disconnect)
- */
-void
-smbc_setFunctionPurgeCachedServers(SMBCCTX *c, smbc_purge_cached_srv_fn fn)
-{
- c->cache.purge_cached_servers_fn = fn;
-}
-
-/**
- * Callable functions for files.
- */
-
-smbc_open_fn
-smbc_getFunctionOpen(SMBCCTX *c)
-{
- return c->posix_emu.open_fn;
-}
-
-void
-smbc_setFunctionOpen(SMBCCTX *c, smbc_open_fn fn)
-{
- c->posix_emu.open_fn = fn;
-}
-
-smbc_creat_fn
-smbc_getFunctionCreat(SMBCCTX *c)
-{
- return c->posix_emu.creat_fn;
-}
-
-void
-smbc_setFunctionCreat(SMBCCTX *c, smbc_creat_fn fn)
-{
- c->posix_emu.creat_fn = fn;
-}
-
-smbc_read_fn
-smbc_getFunctionRead(SMBCCTX *c)
-{
- return c->posix_emu.read_fn;
-}
-
-void
-smbc_setFunctionRead(SMBCCTX *c, smbc_read_fn fn)
-{
- c->posix_emu.read_fn = fn;
-}
-
-smbc_write_fn
-smbc_getFunctionWrite(SMBCCTX *c)
-{
- return c->posix_emu.write_fn;
-}
-
-void
-smbc_setFunctionWrite(SMBCCTX *c, smbc_write_fn fn)
-{
- c->posix_emu.write_fn = fn;
-}
-
-smbc_unlink_fn
-smbc_getFunctionUnlink(SMBCCTX *c)
-{
- return c->posix_emu.unlink_fn;
-}
-
-void
-smbc_setFunctionUnlink(SMBCCTX *c, smbc_unlink_fn fn)
-{
- c->posix_emu.unlink_fn = fn;
-}
-
-smbc_rename_fn
-smbc_getFunctionRename(SMBCCTX *c)
-{
- return c->posix_emu.rename_fn;
-}
-
-void
-smbc_setFunctionRename(SMBCCTX *c, smbc_rename_fn fn)
-{
- c->posix_emu.rename_fn = fn;
-}
-
-smbc_lseek_fn
-smbc_getFunctionLseek(SMBCCTX *c)
-{
- return c->posix_emu.lseek_fn;
-}
-
-void
-smbc_setFunctionLseek(SMBCCTX *c, smbc_lseek_fn fn)
-{
- c->posix_emu.lseek_fn = fn;
-}
-
-smbc_stat_fn
-smbc_getFunctionStat(SMBCCTX *c)
-{
- return c->posix_emu.stat_fn;
-}
-
-void
-smbc_setFunctionStat(SMBCCTX *c, smbc_stat_fn fn)
-{
- c->posix_emu.stat_fn = fn;
-}
-
-smbc_fstat_fn
-smbc_getFunctionFstat(SMBCCTX *c)
-{
- return c->posix_emu.fstat_fn;
-}
-
-void
-smbc_setFunctionFstat(SMBCCTX *c, smbc_fstat_fn fn)
-{
- c->posix_emu.fstat_fn = fn;
-}
-
-smbc_ftruncate_fn
-smbc_getFunctionFtruncate(SMBCCTX *c)
-{
- return c->internal->posix_emu.ftruncate_fn;
-}
-
-void
-smbc_setFunctionFtruncate(SMBCCTX *c, smbc_ftruncate_fn fn)
-{
- c->internal->posix_emu.ftruncate_fn = fn;
-}
-
-smbc_close_fn
-smbc_getFunctionClose(SMBCCTX *c)
-{
- return c->posix_emu.close_fn;
-}
-
-void
-smbc_setFunctionClose(SMBCCTX *c, smbc_close_fn fn)
-{
- c->posix_emu.close_fn = fn;
-}
-
-
-/**
- * Callable functions for directories.
- */
-
-smbc_opendir_fn
-smbc_getFunctionOpendir(SMBCCTX *c)
-{
- return c->posix_emu.opendir_fn;
-}
-
-void
-smbc_setFunctionOpendir(SMBCCTX *c, smbc_opendir_fn fn)
-{
- c->posix_emu.opendir_fn = fn;
-}
-
-smbc_closedir_fn
-smbc_getFunctionClosedir(SMBCCTX *c)
-{
- return c->posix_emu.closedir_fn;
-}
-
-void
-smbc_setFunctionClosedir(SMBCCTX *c, smbc_closedir_fn fn)
-{
- c->posix_emu.closedir_fn = fn;
-}
-
-smbc_readdir_fn
-smbc_getFunctionReaddir(SMBCCTX *c)
-{
- return c->posix_emu.readdir_fn;
-}
-
-void
-smbc_setFunctionReaddir(SMBCCTX *c, smbc_readdir_fn fn)
-{
- c->posix_emu.readdir_fn = fn;
-}
-
-smbc_getdents_fn
-smbc_getFunctionGetdents(SMBCCTX *c)
-{
- return c->posix_emu.getdents_fn;
-}
-
-void
-smbc_setFunctionGetdents(SMBCCTX *c, smbc_getdents_fn fn)
-{
- c->posix_emu.getdents_fn = fn;
-}
-
-smbc_mkdir_fn
-smbc_getFunctionMkdir(SMBCCTX *c)
-{
- return c->posix_emu.mkdir_fn;
-}
-
-void
-smbc_setFunctionMkdir(SMBCCTX *c, smbc_mkdir_fn fn)
-{
- c->posix_emu.mkdir_fn = fn;
-}
-
-smbc_rmdir_fn
-smbc_getFunctionRmdir(SMBCCTX *c)
-{
- return c->posix_emu.rmdir_fn;
-}
-
-void
-smbc_setFunctionRmdir(SMBCCTX *c, smbc_rmdir_fn fn)
-{
- c->posix_emu.rmdir_fn = fn;
-}
-
-smbc_telldir_fn
-smbc_getFunctionTelldir(SMBCCTX *c)
-{
- return c->posix_emu.telldir_fn;
-}
-
-void
-smbc_setFunctionTelldir(SMBCCTX *c, smbc_telldir_fn fn)
-{
- c->posix_emu.telldir_fn = fn;
-}
-
-smbc_lseekdir_fn
-smbc_getFunctionLseekdir(SMBCCTX *c)
-{
- return c->posix_emu.lseekdir_fn;
-}
-
-void
-smbc_setFunctionLseekdir(SMBCCTX *c, smbc_lseekdir_fn fn)
-{
- c->posix_emu.lseekdir_fn = fn;
-}
-
-smbc_fstatdir_fn
-smbc_getFunctionFstatdir(SMBCCTX *c)
-{
- return c->posix_emu.fstatdir_fn;
-}
-
-void
-smbc_setFunctionFstatdir(SMBCCTX *c, smbc_fstatdir_fn fn)
-{
- c->posix_emu.fstatdir_fn = fn;
-}
-
-
-/**
- * Callable functions applicable to both files and directories.
- */
-
-smbc_chmod_fn
-smbc_getFunctionChmod(SMBCCTX *c)
-{
- return c->posix_emu.chmod_fn;
-}
-
-void
-smbc_setFunctionChmod(SMBCCTX *c, smbc_chmod_fn fn)
-{
- c->posix_emu.chmod_fn = fn;
-}
-
-smbc_utimes_fn
-smbc_getFunctionUtimes(SMBCCTX *c)
-{
- return c->posix_emu.utimes_fn;
-}
-
-void
-smbc_setFunctionUtimes(SMBCCTX *c, smbc_utimes_fn fn)
-{
- c->posix_emu.utimes_fn = fn;
-}
-
-smbc_setxattr_fn
-smbc_getFunctionSetxattr(SMBCCTX *c)
-{
- return c->posix_emu.setxattr_fn;
-}
-
-void
-smbc_setFunctionSetxattr(SMBCCTX *c, smbc_setxattr_fn fn)
-{
- c->posix_emu.setxattr_fn = fn;
-}
-
-smbc_getxattr_fn
-smbc_getFunctionGetxattr(SMBCCTX *c)
-{
- return c->posix_emu.getxattr_fn;
-}
-
-void
-smbc_setFunctionGetxattr(SMBCCTX *c, smbc_getxattr_fn fn)
-{
- c->posix_emu.getxattr_fn = fn;
-}
-
-smbc_removexattr_fn
-smbc_getFunctionRemovexattr(SMBCCTX *c)
-{
- return c->posix_emu.removexattr_fn;
-}
-
-void
-smbc_setFunctionRemovexattr(SMBCCTX *c, smbc_removexattr_fn fn)
-{
- c->posix_emu.removexattr_fn = fn;
-}
-
-smbc_listxattr_fn
-smbc_getFunctionListxattr(SMBCCTX *c)
-{
- return c->posix_emu.listxattr_fn;
-}
-
-void
-smbc_setFunctionListxattr(SMBCCTX *c, smbc_listxattr_fn fn)
-{
- c->posix_emu.listxattr_fn = fn;
-}
-
-
-/**
- * Callable functions related to printing
- */
-
-smbc_print_file_fn
-smbc_getFunctionPrintFile(SMBCCTX *c)
-{
- return c->printing.print_file_fn;
-}
-
-void
-smbc_setFunctionPrintFile(SMBCCTX *c, smbc_print_file_fn fn)
-{
- c->printing.print_file_fn = fn;
-}
-
-smbc_open_print_job_fn
-smbc_getFunctionOpenPrintJob(SMBCCTX *c)
-{
- return c->printing.open_print_job_fn;
-}
-
-void
-smbc_setFunctionOpenPrintJob(SMBCCTX *c,
- smbc_open_print_job_fn fn)
-{
- c->printing.open_print_job_fn = fn;
-}
-
-smbc_list_print_jobs_fn
-smbc_getFunctionListPrintJobs(SMBCCTX *c)
-{
- return c->printing.list_print_jobs_fn;
-}
-
-void
-smbc_setFunctionListPrintJobs(SMBCCTX *c,
- smbc_list_print_jobs_fn fn)
-{
- c->printing.list_print_jobs_fn = fn;
-}
-
-smbc_unlink_print_job_fn
-smbc_getFunctionUnlinkPrintJob(SMBCCTX *c)
-{
- return c->printing.unlink_print_job_fn;
-}
-
-void
-smbc_setFunctionUnlinkPrintJob(SMBCCTX *c,
- smbc_unlink_print_job_fn fn)
-{
- c->printing.unlink_print_job_fn = fn;
-}
-