From f833b19f49f645f6af38b796645f6d2a5dedd4b4 Mon Sep 17 00:00:00 2001 From: Gerald Carter Date: Mon, 29 Jul 2002 13:11:16 +0000 Subject: [PATCH] removed two unneeded files after Richard backed out these changes. --- source/libsmb/libsmb_cache.c | 191 ---------------------------- source/libsmb/libsmb_compat.c | 285 ------------------------------------------ 2 files changed, 476 deletions(-) delete mode 100644 source/libsmb/libsmb_cache.c delete mode 100644 source/libsmb/libsmb_compat.c diff --git a/source/libsmb/libsmb_cache.c b/source/libsmb/libsmb_cache.c deleted file mode 100644 index 34b818ee748..00000000000 --- a/source/libsmb/libsmb_cache.c +++ /dev/null @@ -1,191 +0,0 @@ -/* - Unix SMB/CIFS implementation. - SMB client library implementation (server cache) - Copyright (C) Andrew Tridgell 1998 - Copyright (C) Richard Sharpe 2000 - Copyright (C) John Terpstra 2000 - Copyright (C) Tom Jansen (Ninja ISD) 2002 - - This program is free software; you can redistribute it and/or modify - it under the terms of the GNU General Public License as published by - the Free Software Foundation; either version 2 of the License, or - (at your option) any later version. - - This program is distributed in the hope that it will be useful, - but WITHOUT ANY WARRANTY; without even the implied warranty of - MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - GNU General Public License for more details. - - You should have received a copy of the GNU General Public License - along with this program; if not, write to the Free Software - Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. -*/ - -#include "includes.h" - -/* - * Define this to get the real SMBCFILE and SMBCSRV structures - */ -#define _SMBC_INTERNAL -#include "libsmbclient.h" - -/* - * Structure we use if internal caching mechanism is used - * nothing fancy here. - */ -struct smbc_server_cache { - char *server_name; - char *share_name; - char *workgroup; - char *username; - SMBCSRV *server; - - struct smbc_server_cache *next, *prev; -}; - - - -/* - * Add a new connection to the server cache. - * This function is only used if the external cache is not enabled - */ -static int smbc_add_cached_server(SMBCCTX * context, SMBCSRV * new, - char * server, char * share, - char * workgroup, char * username) -{ - struct smbc_server_cache * srvcache = NULL; - - if (!(srvcache = malloc(sizeof(*srvcache)))) { - errno = ENOMEM; - DEBUG(3, ("Not enough space for server cache allocation\n")); - return 1; - } - - ZERO_STRUCTP(srvcache); - - srvcache->server = new; - - srvcache->server_name = strdup(server); - if (!srvcache->server_name) { - errno = ENOMEM; - goto failed; - } - - srvcache->share_name = strdup(share); - if (!srvcache->share_name) { - errno = ENOMEM; - goto failed; - } - - srvcache->workgroup = strdup(workgroup); - if (!srvcache->workgroup) { - errno = ENOMEM; - goto failed; - } - - srvcache->username = strdup(username); - if (!srvcache->username) { - errno = ENOMEM; - goto failed; - } - - DLIST_ADD(((struct smbc_server_cache *)context->server_cache), srvcache); - return 0; - - failed: - SAFE_FREE(srvcache->server_name); - SAFE_FREE(srvcache->share_name); - SAFE_FREE(srvcache->workgroup); - SAFE_FREE(srvcache->username); - - return 1; -} - - - -/* - * Search the server cache for a server - * returns server_fd on success, -1 on error (not found) - * This function is only used if the external cache is not enabled - */ -static SMBCSRV * smbc_get_cached_server(SMBCCTX * context, char * server, - char * share, char * workgroup, char * user) -{ - struct smbc_server_cache * srv = NULL; - - /* Search the cache lines */ - for (srv=((struct smbc_server_cache *)context->server_cache);srv;srv=srv->next) { - if (strcmp(server,srv->server_name) == 0 && - strcmp(share,srv->share_name) == 0 && - strcmp(workgroup,srv->workgroup) == 0 && - strcmp(user, srv->username) == 0) - return srv->server; - } - - return NULL; -} - - -/* - * Search the server cache for a server and remove it - * returns 0 on success - * This function is only used if the external cache is not enabled - */ -static int smbc_remove_cached_server(SMBCCTX * context, SMBCSRV * server) -{ - struct smbc_server_cache * srv = NULL; - - for (srv=((struct smbc_server_cache *)context->server_cache);srv;srv=srv->next) { - if (server == srv->server) { - - /* remove this sucker */ - DLIST_REMOVE(((struct smbc_server_cache *)context->server_cache), srv); - SAFE_FREE(srv->server_name); - SAFE_FREE(srv->share_name); - SAFE_FREE(srv->workgroup); - SAFE_FREE(srv->username); - SAFE_FREE(srv); - return 0; - } - } - /* server not found */ - return 1; -} - - -/* - * Try to remove all the servers in cache - * returns 1 on failure and 0 if all servers could be removed. - */ -static int smbc_purge_cached(SMBCCTX * context) -{ - struct smbc_server_cache * srv = NULL; - int could_not_purge_all = 0; - - for (srv=((struct smbc_server_cache *) context->server_cache);srv;srv=srv->next) { - if (smbc_remove_unused_server(context, srv->server)) { - /* could not be removed */ - could_not_purge_all = 1; - } - } - return could_not_purge_all; -} - - - -/* - * This functions initializes all server-cache related functions - * to the default (internal) system. - * - * We use this to make the rest of the cache system static. - */ - -int smbc_default_cache_functions(SMBCCTX * context) -{ - context->callbacks.add_cached_srv_fn = smbc_add_cached_server; - context->callbacks.get_cached_srv_fn = smbc_get_cached_server; - context->callbacks.remove_cached_srv_fn = smbc_remove_cached_server; - context->callbacks.purge_cached_fn = smbc_purge_cached; - - return 0; -} diff --git a/source/libsmb/libsmb_compat.c b/source/libsmb/libsmb_compat.c deleted file mode 100644 index dbfd8603584..00000000000 --- a/source/libsmb/libsmb_compat.c +++ /dev/null @@ -1,285 +0,0 @@ -/* - Unix SMB/CIFS implementation. - SMB client library implementation (Old interface compatibility) - Copyright (C) Andrew Tridgell 1998 - Copyright (C) Richard Sharpe 2000 - Copyright (C) John Terpstra 2000 - Copyright (C) Tom Jansen (Ninja ISD) 2002 - - This program is free software; you can redistribute it and/or modify - it under the terms of the GNU General Public License as published by - the Free Software Foundation; either version 2 of the License, or - (at your option) any later version. - - This program is distributed in the hope that it will be useful, - but WITHOUT ANY WARRANTY; without even the implied warranty of - MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - GNU General Public License for more details. - - You should have received a copy of the GNU General Public License - along with this program; if not, write to the Free Software - Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. -*/ - - -#include "includes.h" - -/* - * Define this to get the real SMBCFILE and SMBCSRV structures - */ -#define _SMBC_INTERNAL -#include "libsmbclient.h" - -struct smbc_compat_fdlist { - SMBCFILE * file; - int fd; - struct smbc_compat_fdlist *next, *prev; -}; - -static SMBCCTX * statcont = NULL; -static int smbc_compat_initialized = 0; -static int smbc_currentfd = 10000; -static struct smbc_compat_fdlist * smbc_compat_fdlist = NULL; - - -/* Find an fd and return the SMBCFILE * or NULL on failure */ -static SMBCFILE * find_fd(int fd) -{ - struct smbc_compat_fdlist * f = smbc_compat_fdlist; - while (f) { - if (f->fd == fd) - return f->file; - f = f->next; - } - return NULL; -} - -/* Add an fd, returns 0 on success, -1 on error with errno set */ -static int add_fd(SMBCFILE * file) -{ - struct smbc_compat_fdlist * f = malloc(sizeof(struct smbc_compat_fdlist)); - if (!f) { - errno = ENOMEM; - return -1; - } - - f->fd = smbc_currentfd++; - f->file = file; - - DLIST_ADD(smbc_compat_fdlist, f); - - return f->fd; -} - - - -/* Delete an fd, returns 0 on success */ -static int del_fd(int fd) -{ - struct smbc_compat_fdlist * f = smbc_compat_fdlist; - while (f) { - if (f->fd == fd) - break; - f = f->next; - } - if (f) { - /* found */ - DLIST_REMOVE(smbc_compat_fdlist, f); - SAFE_FREE(f); - return 0; - } - return 1; -} - - - -int smbc_init(smbc_get_auth_data_fn fn, int debug) -{ - if (!smbc_compat_initialized) { - statcont = smbc_new_context(); - if (!statcont) - return -1; - - statcont->debug = debug; - statcont->callbacks.auth_fn = fn; - - if (!smbc_init_context(statcont)) { - smbc_free_context(statcont, False); - return -1; - } - - smbc_compat_initialized = 1; - - return 0; - } - return 0; -} - - -int smbc_open(const char *furl, int flags, mode_t mode) -{ - SMBCFILE * file; - int fd; - - file = statcont->open(statcont, furl, flags, mode); - if (!file) - return -1; - - fd = add_fd(file); - if (fd == -1) - statcont->close(statcont, file); - return fd; -} - - -int smbc_creat(const char *furl, mode_t mode) -{ - SMBCFILE * file; - int fd; - - file = statcont->creat(statcont, furl, mode); - if (!file) - return -1; - - fd = add_fd(file); - if (fd == -1) { - /* Hmm... should we delete the file too ? I guess we could try */ - statcont->close(statcont, file); - statcont->unlink(statcont, furl); - } - return fd; -} - - -ssize_t smbc_read(int fd, void *buf, size_t bufsize) -{ - SMBCFILE * file = find_fd(fd); - return statcont->read(statcont, file, buf, bufsize); -} - -ssize_t smbc_write(int fd, void *buf, size_t bufsize) -{ - SMBCFILE * file = find_fd(fd); - return statcont->write(statcont, file, buf, bufsize); -} - -off_t smbc_lseek(int fd, off_t offset, int whence) -{ - SMBCFILE * file = find_fd(fd); - return statcont->lseek(statcont, file, offset, whence); -} - -int smbc_close(int fd) -{ - SMBCFILE * file = find_fd(fd); - del_fd(fd); - return statcont->close(statcont, file); -} - -int smbc_unlink(const char *fname) -{ - return statcont->unlink(statcont, fname); -} - -int smbc_rename(const char *ourl, const char *nurl) -{ - return statcont->rename(statcont, ourl, statcont, nurl); -} - -int smbc_opendir(const char *durl) -{ - SMBCFILE * file; - int fd; - - file = statcont->opendir(statcont, durl); - if (!file) - return -1; - - fd = add_fd(file); - if (fd == -1) - statcont->closedir(statcont, file); - - return fd; -} - -int smbc_closedir(int dh) -{ - SMBCFILE * file = find_fd(dh); - del_fd(dh); - return statcont->closedir(statcont, file); -} - -int smbc_getdents(unsigned int dh, struct smbc_dirent *dirp, int count) -{ - SMBCFILE * file = find_fd(dh); - return statcont->getdents(statcont, file,dirp, count); -} - -struct smbc_dirent* smbc_readdir(unsigned int dh) -{ - SMBCFILE * file = find_fd(dh); - return statcont->readdir(statcont, file); -} - -off_t smbc_telldir(int dh) -{ - SMBCFILE * file = find_fd(dh); - return statcont->telldir(statcont, file); -} - -int smbc_lseekdir(int fd, off_t offset) -{ - SMBCFILE * file = find_fd(fd); - return statcont->lseekdir(statcont, file, offset); -} - -int smbc_mkdir(const char *durl, mode_t mode) -{ - return statcont->mkdir(statcont, durl, mode); -} - -int smbc_rmdir(const char *durl) -{ - return statcont->rmdir(statcont, durl); -} - -int smbc_stat(const char *url, struct stat *st) -{ - return statcont->stat(statcont, url, st); -} - -int smbc_fstat(int fd, struct stat *st) -{ - SMBCFILE * file = find_fd(fd); - return statcont->fstat(statcont, file, st); -} - -int smbc_chmod(const char *url, mode_t mode) -{ - /* NOT IMPLEMENTED IN LIBSMBCLIENT YET */ - return -1; -} - -int smbc_print_file(const char *fname, const char *printq) -{ - return statcont->print_file(statcont, fname, statcont, printq); -} - -int smbc_open_print_job(const char *fname) -{ - SMBCFILE * file = statcont->open_print_job(statcont, fname); - if (!file) return -1; - return (int) file; -} - -int smbc_list_print_jobs(const char *purl, smbc_get_print_job_info fn) -{ - return statcont->list_print_jobs(statcont, purl, fn); -} - -int smbc_unlink_print_job(const char *purl, int id) -{ - return statcont->unlink_print_job(statcont, purl, id); -} - - -- 2.11.4.GIT