rc_mem.h revision 1894:7edc5062e67f
1/* 2 * Copyright 2006 Sun Microsystems, Inc. All rights reserved. 3 * Use is subject to license terms. 4 */ 5 6#ifndef _KRB5_RC_MEM_H 7#define _KRB5_RC_MEM_H 8 9#pragma ident "%Z%%M% %I% %E% SMI" 10 11#include "rc-int.h" 12 13#ifdef __cplusplus 14extern "C" { 15#endif 16 17/* 18 * mech_krb5/krb5/rcache/rc_mem.h 19 * 20 * This file of the Kerberos V5 software is derived from public-domain code 21 * contributed by Daniel J. Bernstein, <brnstnd@acf10.nyu.edu>. 22 */ 23 24/* 25 * Solaris Kerberos: 26 * Declarations for the memory replay cache implementation. 27 */ 28 29struct mem_data { 30 char *name; 31 krb5_deltat lifespan; 32 int hsize; 33 struct authlist **h; 34}; 35 36struct global_rcache { 37 k5_mutex_t lock; 38 struct mem_data *data; 39}; 40 41extern struct global_rcache grcache; 42 43extern krb5_rc_ops krb5_rc_mem_ops; 44 45krb5_error_code KRB5_CALLCONV krb5_rc_mem_init 46 (krb5_context, krb5_rcache, krb5_deltat); 47krb5_error_code KRB5_CALLCONV krb5_rc_mem_recover 48 (krb5_context, krb5_rcache); 49krb5_error_code KRB5_CALLCONV krb5_rc_mem_recover_or_init 50 (krb5_context, krb5_rcache, krb5_deltat); 51krb5_error_code KRB5_CALLCONV krb5_rc_mem_destroy 52 (krb5_context, krb5_rcache); 53krb5_error_code KRB5_CALLCONV krb5_rc_mem_close 54 (krb5_context, krb5_rcache); 55krb5_error_code KRB5_CALLCONV krb5_rc_mem_store 56 (krb5_context, krb5_rcache, krb5_donot_replay *); 57krb5_error_code KRB5_CALLCONV krb5_rc_mem_expunge 58 (krb5_context, krb5_rcache); 59krb5_error_code KRB5_CALLCONV krb5_rc_mem_get_span 60 (krb5_context, krb5_rcache, krb5_deltat *); 61char *KRB5_CALLCONV krb5_rc_mem_get_name 62 (krb5_context, krb5_rcache); 63krb5_error_code KRB5_CALLCONV krb5_rc_mem_resolve 64 (krb5_context, krb5_rcache, char *); 65void krb5_rc_free_entry 66 (krb5_context, krb5_donot_replay **); 67 68#ifdef __cplusplus 69} 70#endif 71 72#endif /* !_KRB5_RC_MEM_H */ 73