diff options
| author | Greg Hudson <ghudson@mit.edu> | 2011-04-13 15:15:56 +0000 |
|---|---|---|
| committer | Greg Hudson <ghudson@mit.edu> | 2011-04-13 15:15:56 +0000 |
| commit | b0031448502561da31fb8c2543c8b01d7df9a872 (patch) | |
| tree | 88a4a65ca013f8e6ef7b2fc2f122b0b7b00c115b /src/lib/gssapi/generic | |
| parent | fb67497ceeedf9a398cd670440f699e35b3baa4b (diff) | |
| download | krb5-b0031448502561da31fb8c2543c8b01d7df9a872.tar.gz krb5-b0031448502561da31fb8c2543c8b01d7df9a872.tar.xz krb5-b0031448502561da31fb8c2543c8b01d7df9a872.zip | |
Remove pointer validation code from the gss krb5 mech
git-svn-id: svn://anonsvn.mit.edu/krb5/trunk@24877 dc483132-0cff-0310-8789-dd5450dbe970
Diffstat (limited to 'src/lib/gssapi/generic')
| -rw-r--r-- | src/lib/gssapi/generic/Makefile.in | 11 | ||||
| -rw-r--r-- | src/lib/gssapi/generic/gssapiP_generic.h | 12 | ||||
| -rw-r--r-- | src/lib/gssapi/generic/util_validate.c | 314 | ||||
| -rw-r--r-- | src/lib/gssapi/generic/utl_nohash_validate.c | 118 |
4 files changed, 0 insertions, 455 deletions
diff --git a/src/lib/gssapi/generic/Makefile.in b/src/lib/gssapi/generic/Makefile.in index 9221d0b9a..a9f6bfd3c 100644 --- a/src/lib/gssapi/generic/Makefile.in +++ b/src/lib/gssapi/generic/Makefile.in @@ -60,14 +60,6 @@ gssapi.h: gssapi.hin ##DOS##gssapi.h: gssapi.hin ##DOS## $(CP) $** $@ -#if HasHashLibrary -# UTIL_VALIDATE_SRC= $(srcdir)/util_validate.c -# UTIL_VALIDATE_OBJ= util_validate.$(OBJEXT) -#else -#UTIL_VALIDATE_SRC= $(srcdir)/utl_nohash_validate.c -#UTIL_VALIDATE_OBJ= utl_nohash_validate.$(OBJEXT) -#endif - SRCS = \ $(srcdir)/disp_com_err_status.c \ $(srcdir)/disp_major_status.c \ @@ -81,7 +73,6 @@ SRCS = \ $(srcdir)/util_ordering.c \ $(srcdir)/util_set.c \ $(srcdir)/util_token.c \ - $(srcdir)/util_validate.c \ gssapi_err_generic.c OBJS = \ @@ -97,7 +88,6 @@ OBJS = \ $(OUTPRE)util_ordering.$(OBJEXT) \ $(OUTPRE)util_set.$(OBJEXT) \ $(OUTPRE)util_token.$(OBJEXT) \ - $(OUTPRE)util_validate.$(OBJEXT) \ $(OUTPRE)gssapi_err_generic.$(OBJEXT) STLIBOBJS = \ @@ -113,7 +103,6 @@ STLIBOBJS = \ util_ordering.o \ util_set.o \ util_token.o \ - util_validate.o \ gssapi_err_generic.o EXPORTED_HEADERS= gssapi_generic.h gssapi_ext.h diff --git a/src/lib/gssapi/generic/gssapiP_generic.h b/src/lib/gssapi/generic/gssapiP_generic.h index f3af8a4d1..e084b81bd 100644 --- a/src/lib/gssapi/generic/gssapiP_generic.h +++ b/src/lib/gssapi/generic/gssapiP_generic.h @@ -103,18 +103,6 @@ typedef UINT64_TYPE gssint_uint64; #define g_set_entry_add gssint_g_set_entry_add #define g_set_entry_delete gssint_g_set_entry_delete #define g_set_entry_get gssint_g_set_entry_get -#define g_save_name gssint_g_save_name -#define g_save_cred_id gssint_g_save_cred_id -#define g_save_ctx_id gssint_g_save_ctx_id -#define g_save_lucidctx_id gssint_g_save_lucidctx_id -#define g_validate_name gssint_g_validate_name -#define g_validate_cred_id gssint_g_validate_cred_id -#define g_validate_ctx_id gssint_g_validate_ctx_id -#define g_validate_lucidctx_id gssint_g_validate_lucidctx_id -#define g_delete_name gssint_g_delete_name -#define g_delete_cred_id gssint_g_delete_cred_id -#define g_delete_ctx_id gssint_g_delete_ctx_id -#define g_delete_lucidctx_id gssint_g_delete_lucidctx_id #define g_make_string_buffer gssint_g_make_string_buffer #define g_token_size gssint_g_token_size #define g_make_token_header gssint_g_make_token_header diff --git a/src/lib/gssapi/generic/util_validate.c b/src/lib/gssapi/generic/util_validate.c deleted file mode 100644 index afb47eabf..000000000 --- a/src/lib/gssapi/generic/util_validate.c +++ /dev/null @@ -1,314 +0,0 @@ -/* -*- mode: c; c-basic-offset: 4; indent-tabs-mode: nil -*- */ -/* - * Copyright 1993 by OpenVision Technologies, Inc. - * - * Permission to use, copy, modify, distribute, and sell this software - * and its documentation for any purpose is hereby granted without fee, - * provided that the above copyright notice appears in all copies and - * that both that copyright notice and this permission notice appear in - * supporting documentation, and that the name of OpenVision not be used - * in advertising or publicity pertaining to distribution of the software - * without specific, written prior permission. OpenVision makes no - * representations about the suitability of this software for any - * purpose. It is provided "as is" without express or implied warranty. - * - * OPENVISION DISCLAIMS ALL WARRANTIES WITH REGARD TO THIS SOFTWARE, - * INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS, IN NO - * EVENT SHALL OPENVISION BE LIABLE FOR ANY SPECIAL, INDIRECT OR - * CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF - * USE, DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR - * OTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR - * PERFORMANCE OF THIS SOFTWARE. - */ - -/* - * $Id$ - */ - -/* - * functions to validate name, credential, and context handles - */ - -#include "gssapiP_generic.h" - -#ifdef HAVE_SYS_TYPES_H -#include <sys/types.h> -#endif -#include <fcntl.h> -#include <limits.h> - -#ifdef HAVE_BSD_DB -#include <sys/file.h> -#include <db.h> - -static const int one = 1; -static const DBT dbtone = { (void *) &one, sizeof(one) }; - -typedef struct _vkey { - int type; - void *ptr; -} vkey; -#endif - -#define V_NAME 1 -#define V_CRED_ID 2 -#define V_CTX_ID 3 -#define V_LCTX_ID 4 - -/* All these functions return 0 on failure, and non-zero on success */ - -static int g_save(db, type, ptr) - g_set *db; -#ifdef HAVE_BSD_DB - int type; -#else - void *type; -#endif - void *ptr; -{ - int ret; -#ifdef HAVE_BSD_DB - DB **vdb; - vkey vk; - DBT key; - - ret = k5_mutex_lock(&db->mutex); - if (ret) - return 0; - - vdb = (DB **) &db->data; - - if (!*vdb) - *vdb = dbopen(NULL, O_CREAT|O_RDWR, O_CREAT|O_RDWR, DB_HASH, NULL); - - vk.type = type; - vk.ptr = ptr; - - key.data = &vk; - key.size = sizeof(vk); - - ret = ((*((*vdb)->put))(*vdb, &key, &dbtone, 0) == 0); - k5_mutex_unlock(&db->mutex); - return ret; -#else - g_set_elt *gs; - - ret = k5_mutex_lock(&db->mutex); - if (ret) - return 0; - - gs = (g_set_elt *) &db->data; - - if (!*gs) - if (g_set_init(gs)) { - k5_mutex_unlock(&db->mutex); - return(0); - } - - ret = (g_set_entry_add(gs, ptr, type) == 0); - k5_mutex_unlock(&db->mutex); - return ret; -#endif -} - -static int g_validate(db, type, ptr) - g_set *db; -#ifdef HAVE_BSD_DB - int type; -#else - void *type; -#endif - void *ptr; -{ - int ret; -#ifdef HAVE_BSD_DB - DB **vdb; - vkey vk; - DBT key, value; - - ret = k5_mutex_lock(&db->mutex); - if (ret) - return 0; - - vdb = (DB **) &db->data; - if (!*vdb) { - k5_mutex_unlock(&db->mutex); - return(0); - } - - vk.type = type; - vk.ptr = ptr; - - key.data = &vk; - key.size = sizeof(vk); - - if ((*((*vdb)->get))(*vdb, &key, &value, 0)) { - k5_mutex_unlock(&db->mutex); - return(0); - } - - k5_mutex_unlock(&db->mutex); - return((value.size == sizeof(one)) && - (*((int *) value.data) == one)); -#else - g_set_elt *gs; - void *value; - - ret = k5_mutex_lock(&db->mutex); - if (ret) - return 0; - - gs = (g_set_elt *) &db->data; - if (!*gs) { - k5_mutex_unlock(&db->mutex); - return(0); - } - - if (g_set_entry_get(gs, ptr, (void **) &value)) { - k5_mutex_unlock(&db->mutex); - return(0); - } - k5_mutex_unlock(&db->mutex); - return(value == type); -#endif -} - -static int g_delete(db, type, ptr) - g_set *db; -#ifdef HAVE_BSD_DB - int type; -#else - void *type; -#endif - void *ptr; -{ - int ret; -#ifdef HAVE_BSD_DB - DB **vdb; - vkey vk; - DBT key; - - ret = k5_mutex_lock(&db->mutex); - if (ret) - return 0; - - vdb = (DB **) &db->data; - if (!*vdb) { - k5_mutex_unlock(&db->mutex); - return(0); - } - - vk.type = type; - vk.ptr = ptr; - - key.data = &vk; - key.size = sizeof(vk); - - ret = ((*((*vdb)->del))(*vdb, &key, 0) == 0); - k5_mutex_unlock(&db->mutex); - return ret; -#else - g_set_elt *gs; - - ret = k5_mutex_lock(&db->mutex); - if (ret) - return 0; - - gs = (g_set_elt *) &db->data; - if (!*gs) { - k5_mutex_unlock(&db->mutex); - return(0); - } - - if (g_set_entry_delete(gs, ptr)) { - k5_mutex_unlock(&db->mutex); - return(0); - } - k5_mutex_unlock(&db->mutex); - return(1); -#endif -} - -/* functions for each type */ - -/* save */ - -int g_save_name(vdb, name) - g_set *vdb; - gss_name_t name; -{ - return(g_save(vdb, V_NAME, (void *) name)); -} -int g_save_cred_id(vdb, cred) - g_set *vdb; - gss_cred_id_t cred; -{ - return(g_save(vdb, V_CRED_ID, (void *) cred)); -} -int g_save_ctx_id(vdb, ctx) - g_set *vdb; - gss_ctx_id_t ctx; -{ - return(g_save(vdb, V_CTX_ID, (void *) ctx)); -} -int g_save_lucidctx_id(vdb, lctx) - g_set *vdb; - void *lctx; -{ - return(g_save(vdb, V_LCTX_ID, (void *) lctx)); -} - - -/* validate */ - -int g_validate_name(vdb, name) - g_set *vdb; - gss_name_t name; -{ - return(g_validate(vdb, V_NAME, (void *) name)); -} -int g_validate_cred_id(vdb, cred) - g_set *vdb; - gss_cred_id_t cred; -{ - return(g_validate(vdb, V_CRED_ID, (void *) cred)); -} -int g_validate_ctx_id(vdb, ctx) - g_set *vdb; - gss_ctx_id_t ctx; -{ - return(g_validate(vdb, V_CTX_ID, (void *) ctx)); -} -int g_validate_lucidctx_id(vdb, lctx) - g_set *vdb; - void *lctx; -{ - return(g_validate(vdb, V_LCTX_ID, (void *) lctx)); -} - -/* delete */ - -int g_delete_name(vdb, name) - g_set *vdb; - gss_name_t name; -{ - return(g_delete(vdb, V_NAME, (void *) name)); -} -int g_delete_cred_id(vdb, cred) - g_set *vdb; - gss_cred_id_t cred; -{ - return(g_delete(vdb, V_CRED_ID, (void *) cred)); -} -int g_delete_ctx_id(vdb, ctx) - g_set *vdb; - gss_ctx_id_t ctx; -{ - return(g_delete(vdb, V_CTX_ID, (void *) ctx)); -} -int g_delete_lucidctx_id(vdb, lctx) - g_set *vdb; - void *lctx; -{ - return(g_delete(vdb, V_LCTX_ID, (void *) lctx)); -} diff --git a/src/lib/gssapi/generic/utl_nohash_validate.c b/src/lib/gssapi/generic/utl_nohash_validate.c deleted file mode 100644 index 1315532d7..000000000 --- a/src/lib/gssapi/generic/utl_nohash_validate.c +++ /dev/null @@ -1,118 +0,0 @@ -/* -*- mode: c; c-basic-offset: 4; indent-tabs-mode: nil -*- */ -/* - * Copyright 1990,1994 by the Massachusetts Institute of Technology. - * All Rights Reserved. - * - * Export of this software from the United States of America may - * require a specific license from the United States Government. - * It is the responsibility of any person or organization contemplating - * export to obtain such a license before exporting. - * - * WITHIN THAT CONSTRAINT, permission to use, copy, modify, and - * distribute this software and its documentation for any purpose and - * without fee is hereby granted, provided that the above copyright - * notice appear in all copies and that both that copyright notice and - * this permission notice appear in supporting documentation, and that - * the name of M.I.T. not be used in advertising or publicity pertaining - * to distribution of the software without specific, written prior - * permission. Furthermore if you modify this software you must label - * your software as modified software and not distribute it in such a - * fashion that it might be confused with the original M.I.T. software. - * M.I.T. makes no representations about the suitability of - * this software for any purpose. It is provided "as is" without express - * or implied warranty. - */ - -/* Stub functions for those without the hash library */ - -#include "gssapiP_generic.h" - -#ifdef HAVE_SYS_TYPES_H -#include <sys/types.h> -#endif -#ifdef HAVE_LIMITS_H -#include <limits.h> -#endif - -/* functions for each type */ - -/* save */ - -int g_save_name(vdb, name) - void **vdb; - gss_name_t *name; -{ - return 1; -} -int g_save_cred_id(vdb, cred) - void **vdb; - gss_cred_id_t *cred; -{ - return 1; -} -int g_save_ctx_id(vdb, ctx) - void **vdb; - gss_ctx_id_t *ctx; -{ - return 1; -} -int g_save_lucidctx_id(vdb, lctx) - void **vdb; - void *lctx; -{ - return 1; -} - -/* validate */ - -int g_validate_name(vdb, name) - void **vdb; - gss_name_t *name; -{ - return 1; -} -int g_validate_cred_id(vdb, cred) - void **vdb; - gss_cred_id_t *cred; -{ - return 1; -} -int g_validate_ctx_id(vdb, ctx) - void **vdb; - gss_ctx_id_t *ctx; -{ - return 1; -} -int g_validate_lucidctx_id(vdb, lctx) - void **vdb; - void *lctx; -{ - return 1; -} - -/* delete */ - -int g_delete_name(vdb, name) - void **vdb; - gss_name_t *name; -{ - return 1; -} -int g_delete_cred_id(vdb, cred) - void **vdb; - gss_cred_id_t *cred; -{ - return 1; -} -int g_delete_ctx_id(vdb, ctx) - void **vdb; - gss_ctx_id_t *ctx; -{ - return 1; -} -int g_delete_lucidctx_id(vdb, lctx) - void **vdb; - void *lctx; -{ - return 1; -} |
