components/krb5/Solaris/rc_mem.h
changeset 5490 9bf0bc57423a
equal deleted inserted replaced
5489:a5031bb8b66d 5490:9bf0bc57423a
       
     1 /*
       
     2  * Copyright (c) 2004, 2015, Oracle and/or its affiliates. All rights reserved.
       
     3  */
       
     4 
       
     5 #ifndef	_KRB5_RC_MEM_H
       
     6 #define	_KRB5_RC_MEM_H
       
     7 
       
     8 #include "k5-int.h"
       
     9 #include "rc-int.h"
       
    10 
       
    11 #ifdef __cplusplus
       
    12 extern "C" {
       
    13 #endif
       
    14 
       
    15 /*
       
    16  * mech_krb5/krb5/rcache/rc_mem.h
       
    17  *
       
    18  * This file of the Kerberos V5 software is derived from public-domain code
       
    19  * contributed by Daniel J. Bernstein, <[email protected]>.
       
    20  */
       
    21 
       
    22 struct mem_data {
       
    23 	char *name;
       
    24 	krb5_deltat lifespan;
       
    25 	int hsize;
       
    26 	struct authlist **h;
       
    27 };
       
    28 
       
    29 struct global_rcache {
       
    30 	k5_mutex_t lock;
       
    31 	struct mem_data *data;
       
    32 };
       
    33 
       
    34 extern struct global_rcache grcache;
       
    35 
       
    36 extern const krb5_rc_ops krb5_rc_mem_ops;
       
    37 
       
    38 krb5_error_code KRB5_CALLCONV krb5_rc_mem_init
       
    39 	(krb5_context, krb5_rcache, krb5_deltat);
       
    40 krb5_error_code KRB5_CALLCONV krb5_rc_mem_recover
       
    41 	(krb5_context, krb5_rcache);
       
    42 krb5_error_code KRB5_CALLCONV krb5_rc_mem_recover_or_init
       
    43 	(krb5_context, krb5_rcache, krb5_deltat);
       
    44 krb5_error_code KRB5_CALLCONV krb5_rc_mem_destroy
       
    45 	(krb5_context, krb5_rcache);
       
    46 krb5_error_code KRB5_CALLCONV krb5_rc_mem_close
       
    47 	(krb5_context, krb5_rcache);
       
    48 krb5_error_code KRB5_CALLCONV krb5_rc_mem_store
       
    49 	(krb5_context, krb5_rcache, krb5_donot_replay *);
       
    50 krb5_error_code KRB5_CALLCONV krb5_rc_mem_expunge
       
    51 	(krb5_context, krb5_rcache);
       
    52 krb5_error_code KRB5_CALLCONV krb5_rc_mem_get_span
       
    53 	(krb5_context, krb5_rcache, krb5_deltat *);
       
    54 char *KRB5_CALLCONV krb5_rc_mem_get_name
       
    55 	(krb5_context, krb5_rcache);
       
    56 krb5_error_code KRB5_CALLCONV krb5_rc_mem_resolve
       
    57 	(krb5_context, krb5_rcache, char *);
       
    58 void krb5_rc_free_entry
       
    59 	(krb5_context, krb5_donot_replay **);
       
    60 
       
    61 #ifdef __cplusplus
       
    62 }
       
    63 #endif
       
    64 
       
    65 #endif /* !_KRB5_RC_MEM_H */