1 /* 2 * Copyright (C) 1997-2001 by Darren Reed & Guido Van Rooij. 3 * 4 * See the IPFILTER.LICENCE file for details on licencing. 5 * 6 * $Id: ip_auth.h,v 2.16 2003/07/25 12:29:56 darrenr Exp $ 7 * 8 * Copyright 2007 Sun Microsystems, Inc. All rights reserved. 9 * Use is subject to license terms. 10 */ 11 12 #ifndef __IP_AUTH_H__ 13 #define __IP_AUTH_H__ 14 15 #define FR_NUMAUTH 32 16 17 typedef struct frauth { 18 int fra_age; 19 int fra_len; 20 int fra_index; 21 u_32_t fra_pass; 22 fr_info_t fra_info; 23 char *fra_buf; 24 #ifdef MENTAT 25 queue_t *fra_q; 26 #endif 27 } frauth_t; 28 29 typedef struct frauthent { 30 struct frentry fae_fr; 31 struct frauthent *fae_next; 32 u_long fae_age; 33 int fae_ref; 34 } frauthent_t; 35 36 typedef struct fr_authstat { 37 U_QUAD_T fas_hits; 38 U_QUAD_T fas_miss; 39 u_long fas_nospace; 40 u_long fas_added; 41 u_long fas_sendfail; 42 u_long fas_sendok; 43 u_long fas_queok; 44 u_long fas_quefail; 45 u_long fas_expire; 46 frauthent_t *fas_faelist; 47 } fr_authstat_t; 48 49 50 extern frentry_t *fr_checkauth __P((fr_info_t *, u_32_t *)); 51 extern void fr_authexpire __P((ipf_stack_t *)); 52 extern int fr_authinit __P((ipf_stack_t *)); 53 extern void fr_authunload __P((ipf_stack_t *)); 54 extern int fr_authflush __P((ipf_stack_t *)); 55 extern int fr_newauth __P((mb_t *, fr_info_t *)); 56 extern int fr_preauthcmd __P((ioctlcmd_t, frentry_t *, frentry_t **, ipf_stack_t *)); 57 extern int fr_auth_ioctl __P((caddr_t, int, int, int, void *, ipf_stack_t *)); 58 59 #endif /* __IP_AUTH_H__ */ 60