+++ /dev/null
-# Sanitize.in for Kerberos V5
-
-# Each directory to survive it's way into a release will need a file
-# like this one called "./.Sanitize". All keyword lines must exist,
-# and must exist in the order specified by this file. Each directory
-# in the tree will be processed, top down, in the following order.
-
-# Hash started lines like this one are comments and will be deleted
-# before anything else is done. Blank lines will also be squashed
-# out.
-
-# The lines between the "Do-first:" line and the "Things-to-keep:"
-# line are executed as a /bin/sh shell script before anything else is
-# done in this
-
-Do-first:
-
-# All files listed between the "Things-to-keep:" line and the
-# "Files-to-sed:" line will be kept. All other files will be removed.
-# Directories listed in this section will have their own Sanitize
-# called. Directories not listed will be removed in their entirety
-# with rm -rf.
-
-Things-to-keep:
-
-.cvsignore
-ChangeLog
-Makefile.in
-configure
-configure.in
-dbkeytab.c
-
-Things-to-lose:
-
-Do-last:
-
-# End of file.
+++ /dev/null
-2002-08-29 Ken Raeburn <raeburn@mit.edu>
-
- * Makefile.in: Revert $(S)=>/ change, for Windows support.
-
-2002-08-23 Ken Raeburn <raeburn@mit.edu>
-
- * Makefile.in: Change $(S)=>/ and $(U)=>.. globally.
-
-1999-10-26 Wilfredo Sanchez <tritan@mit.edu>
-
- * Makefile.in: Clean up usage of CFLAGS, CPPFLAGS, DEFS, DEFINES,
- LOCAL_INCLUDES such that one can override CFLAGS from the command
- line without losing CPP search patchs and defines. Some associated
- Makefile cleanup.
-
-1998-11-13 Theodore Ts'o <tytso@rsts-11.mit.edu>
-
- * Makefile.in: Set the myfulldir and mydir variables (which are
- relative to buildtop and thisconfigdir, respectively.)
-
-Fri Feb 27 18:03:33 1998 Theodore Ts'o <tytso@rsts-11.mit.edu>
-
- * Makefile.in: Changed thisconfigdir to point at the lib/krb5
- directory, since we've moved all of the configure.in
- tests to the toplevel lib/krb5 configure.in
-
-Wed Feb 18 16:23:03 1998 Tom Yu <tlyu@mit.edu>
-
- * Makefile.in: Remove trailing slash from thisconfigdir. Fix up
- BUILDTOP for new conventions.
-
-Mon Feb 2 17:02:29 1998 Theodore Ts'o <tytso@rsts-11.mit.edu>
-
- * Makefile.in: Define BUILDTOP and thisconfigdir in the Makefile
-
-Mon Feb 2 17:05:10 1998 Theodore Ts'o <tytso@rsts-11.mit.edu>
-
- * configure.in: Remove SubDirLibrary rules (we will need to fix
- this directory when we decide to build it again.)
-
- * Makefile.in: Define BUILDTOP and thisconfigdir in the Makefile
+++ /dev/null
-/*
- * kadmin/v5server/keytab.c
- *
- * Copyright 1995 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.
- *
- */
-
-#include "k5-int.h"
-#include "kdb_dbc.h"
-
-krb5_error_code krb5_ktkdb_get_entry(krb5_context, krb5_keytab, krb5_principal,
- krb5_kvno, krb5_enctype, krb5_keytab_entry *);
-
-krb5_kt_ops krb5_kt_kdb_ops = {
- 0,
- "KDB", /* Prefix -- this string should not appear anywhere else! */
- NULL,
- NULL,
- NULL,
- krb5_ktkdb_get_entry,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL, /* (void *) &krb5_ktfile_ser_entry */
-};
-
-typedef struct krb5_ktkdb_data {
- char * name;
-} krb5_ktkdb_data;
-
-krb5_error_code
-krb5_ktkdb_resolve(context, kdb, id)
- krb5_context context;
- krb5_db_context * kdb;
- krb5_keytab * id;
-{
- krb5_db_context * data;
-
- if ((*id = (krb5_keytab) malloc(sizeof(**id))) == NULL)
- return(ENOMEM);
-
- if ((data = (krb5_ktkdb_data *)malloc(sizeof(krb5_db_context))) == NULL) {
- krb5_xfree(*id);
- return(ENOMEM);
- }
-
- memcpy(data, kdb, sizeof(krb5_db_context));
- (*id)->data = (krb5_pointer)data;
- (*id)->ops = &krb5_kt_kdb_ops;
- (*id)->magic = KV5M_KEYTAB;
- return(0);
-}
-
-krb5_error_code
-krb5_ktkdb_get_entry(context, id, principal, kvno, enctype, entry)
- krb5_context context;
- krb5_keytab id;
- krb5_principal principal;
- krb5_kvno kvno;
- krb5_enctype enctype;
- krb5_keytab_entry * entry;
-{
- krb5_encrypt_block * master_key;
- krb5_error_code kerror = 0;
- krb5_key_data * key_data;
- krb5_db_entry db_entry;
- krb5_boolean more = 0;
- int n = 0;
-
- /* Open database */
- /* krb5_dbm_db_init(context); */
- if (kerror = krb5_dbm_db_open_database(context))
- return(kerror);
-
- /* get_principal */
- if (kerror = krb5_dbm_db_get_principal(context, principal, &db_entry,
- &n, &more)) {
- krb5_dbm_db_close_database(context);
- return(kerror);
- }
-
- /* match key */
- krb5_dbm_db_get_mkey(context, id->ops, &master_key);
- krb5_dbe_find_enctype(context, &db_entry, enctype, -1, kvno, &key_data);
- if (kerror = krb5_dbekd_decrypt_key_data(context, master_key, key_data,
- &entry->key, NULL))
- goto error;
-
- if (kerror = krb5_copy_principal(context, principal, &entry->principal))
- goto error;
-
- /* Close database */
-error:;
- krb5_dbe_free_contents(context, &db_entry);
- krb5_dbm_db_close_database(context);
- return(kerror);
-}
-