⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 attrvalue.h

📁 SecuDe是一个由安全应用程序接口组成,对验证机制、证件处理、PEM、X.400报文处理和密钥管理提供支持。SecuDe提供DES、 RSA杂凑函数、密钥生成以及数字签名的生成和核实等多种密码机制。
💻 H
字号:
/* attrvalue.h - *//* * $Header: /xtel/isode/isode/h/quipu/RCS/attrvalue.h,v 9.0 1992/06/16 12:23:11 isode Rel $ * * * * $Log: attrvalue.h,v $ * Revision 9.0  1992/06/16  12:23:11  isode * Release 8.0 * *//* *				  NOTICE * *    Acquisition, use, and distribution of this module and related *    materials are subject to the restrictions of a license agreement. *    Consult the Preface in the User's Manual for the full terms of *    this agreement. * */#ifndef ATTRVALUE#define ATTRVALUE#include "quipu/name.h"typedef struct avseqcomp {      /* attribute may have multiple values   */				/* respresents SET OF AttributeValue    */    attrVal      	avseq_av;    struct avseqcomp    *avseq_next;} avseqcomp, *AV_Sequence;#define NULLAV ((AV_Sequence) 0)#define avs_comp_alloc()	(AV_Sequence) smalloc(sizeof(avseqcomp))#define avs_comp_print(x,y,z)	AttrV_print (x,&(y)->avseq_av,z)#define avs_cmp_comp(x,y)	AttrV_cmp (&x->avseq_av ,&y->avseq_av)AV_Sequence  avs_comp_new ();AV_Sequence  avs_comp_cpy ();AV_Sequence  avs_cpy ();AV_Sequence  avs_merge ();AV_Sequence  str2avs ();typedef struct attrcomp {       /* A sequence of attributes             */				/* represents Attribute                 */				/* and SET OF Attribute                 */    attrType       	attr_type;    AV_Sequence         attr_value;    struct attrcomp     *attr_link;				/* ACL is NOT for use by DUA            */				/* this must be done by use of ACL      */				/* attribute                            */    struct acl_info     *attr_acl;} attrcomp, *Attr_Sequence;#define NULLATTR ((Attr_Sequence) 0)#define as_comp_alloc()          (Attr_Sequence) smalloc(sizeof(attrcomp))#define as_comp_cmp(x,y)      (((oid_cmp (&x->attr_type ,&y->attr_type) == OK) && (avs_cmp (x->attr_value ,y->attr_value) == OK)) ? OK : NOTOK)Attr_Sequence  as_comp_new ();Attr_Sequence  as_comp_cpy ();Attr_Sequence  as_cpy ();Attr_Sequence  as_find_type ();Attr_Sequence  as_merge ();Attr_Sequence  str2as();				/* ACL is defined here as it is         */				/* referenced.   it is only used by     */				/* DSA                                  */				/* represents ACLInfo defined by INCA   */struct acl_info {    int acl_categories;#define ACL_NONE        0#define ACL_DETECT      1#define ACL_COMPARE     2#define ACL_READ        3#define ACL_ADD         4#define ACL_WRITE       5    int  acl_selector_type;#define ACL_ENTRY       1#define ACL_OTHER       2#define ACL_PREFIX      3#define ACL_GROUP       4    struct dn_seq       *acl_name;    /* prefix and group only         */    struct acl_info     *acl_next;};#define NULLACL_INFO (struct acl_info *) NULL#define acl_info_alloc()        (struct acl_info *) smalloc (sizeof  (struct acl_info))#define acl_info_fill(w,x,y,z)    w -> acl_categories = x ;  \				  w -> acl_selector_type = y; \				  w -> acl_name = z;struct acl_info *acl_info_new ();struct acl_info *acl_info_cpy();struct acl_info *acl_default();struct acl_info *acl_dflt();/* * the per-entry authentication policy */typedef struct auth_policy {	int	ap_mod;	/* mod, modrdn, add, remove */	int	ap_rnc;	/* read, compare */	int	ap_lns;	/* list, search */} authpolicy, *Authpolicy;#define ap_modification		ap_mod#define ap_readandcompare	ap_rnc#define ap_listandsearch	ap_lns#define AP_TRUST	0#define AP_SIMPLE	1#define AP_STRONG	2#define NULLAUTHP	((Authpolicy) 0)#define authp_alloc()	((Authpolicy) smalloc( sizeof(authpolicy) ))/* * this next bit is for defining the search and list acls. */typedef struct sacl_info {	struct acl_info	 sac_info;#define sac_selector	 sac_info.acl_selector_type#define sac_name	 sac_info.acl_name	char		 *sac_tmpbstr;	/* for pepsy */	int		 sac_tmplen;	/* for pepsy */	char		 sac_scope;#define SACL_SUBTREE		0x01#define SACL_SINGLELEVEL	0x02	#define SACL_BASEOBJECT		0x04	int		 sac_access;#define SACL_UNSEARCHABLE	1#define SACL_SEARCHABLE		2	struct oid_seq	*sac_types;	int		sac_maxresults;	int		sac_minkeylength;#define SACL_NOMINLENGTH	0	char		sac_zeroifexceeded;} saclinfo, *Saclinfo;#define NULLSACL	((Saclinfo) 0)#define Listacl	Saclinfo#define NULLLISTACL	((Listacl) 0)struct mailbox {	char *	mtype;	char * 	mbox;};struct fax {    char    *number;    PE     bits;    char *   fax_bits;    int	     fax_len;};struct postaddr {	int  addrtype;   /* 1 == T61, 2 == Printstr */	char * addrcomp;	struct postaddr * pa_next;};struct telex {	char * telexnumber;	char * countrycode;	char * answerback;};struct teletex {	char    *terminal;	char    *graphic;	char    *control;	char    *page;	char    *misc;	char    *t_private;};struct pref_deliv {    	int	deliv;	struct pref_deliv * pd_next;};struct Guide {	OID objectClass;	struct Criteria * criteria;	int	subset;	/* >= 0 iff this is an NadfGuide... */};struct Criteria {    int     offset;#define	Criteria_type	1#define	Criteria_and	2#define	Criteria_or	3#define	Criteria_not	4    union {            struct CriteriaItem *type;            struct and_or_set {                    struct Criteria *and_or_comp;                    struct and_or_set *and_or_next;            } *and_or;            struct Criteria *not;    }       un;};struct CriteriaItem {    int  offset;#define	choice_equality		1#define	choice_substrings	2#define	choice_greaterOrEqual	3#define	choice_lessOrEqual	4#define	choice_approximateMatch	5    AttributeType attrib;};/* Upper bounds */#define UB_POSTAL_LINE		6#define UB_POSTAL_STRING 	30#define UB_TELETEX_TERMINAL_ID 	1024#define UB_TELEPHONE_NUMBER	32#define UB_TELEX_NUMBER		14#define UB_ANSWERBACK		8#define UB_COUNTRY_CODE		4typedef struct _InheritAttr {	Attr_Sequence 	i_default;		Attr_Sequence 	i_always;		OID		i_oid;} * InheritAttr;#define NULLINHERIT ((InheritAttr)NULL)struct CIList {	char *	l_str;	struct CIList * l_next;	int 	l_type;   /* 1 == T61, 2 == Printstr */};#define NULLCILIST (struct CIList *)NULLstruct documentStore {    int	    ds_method;#define	DS_UNK	(-1)#define	DS_FTP	0#define	DS_FTAM	1    char   *ds_host;    char   *ds_dir;    char   *ds_file;};struct dsaQoS {    int	dsa_quality;#define	DSA_DEFUNCT	0#define	DSA_EXPERIMENTAL 1#define	DSA_BESTEFFORT	2#define	DSA_PILOT	3#define	DSA_FULL	4    char   *dsa_description;};struct attrQoS {    int	    attr_level;#define	ATTR_UNKNOWN	1#define	ATTR_EXTERNAL	2#define	ATTR_SYSTEM	3#define	ATTR_USER	4    int	    attr_completeness;/* same values as dit_namespace */};struct ditQoS {    int	    dit_namespace;#define	DIT_NONE	1#define	DIT_SAMPLE	2#define	DIT_SELECTED	3#define	DIT_SUBSTANTIAL	4#define	DIT_FULL	5    struct attrQoS  *dit_default;    struct attrsQoS {	AttributeType	dit_type;	struct attrQoS *dit_quality;	struct attrsQoS *dit_next;    }		   *dit_attrs;    char   *dit_description;};struct dsa_control{	int	dsa_control_option ;#define CONTROL_LOCKDSA 1#define CONTROL_SETLOGLEVEL 2#define CONTROL_REFRESH 3#define CONTROL_STOPDSA 4#define CONTROL_UNLOCK 5#define CONTROL_RESYNCH 6#define CONTROL_CHANGETAILOR 7#define CONTROL_UPDATESLAVEEDBS 8	union	{		struct	optional_dn	*lockdsa ;		struct	qbuf		*setLogLevel ;		struct	optional_dn	*refresh ;		char			stopDSA ;		struct	optional_dn	*unlock ;		struct	optional_dn	*resynch ;		struct	qbuf		*changeTailor ;		struct	qbuf		*updateSlaveEDBs ;	} un ;} ;struct optional_dn{  int offset ;#define EMPTYDN 1#define DN_PRESENT 2  union    {      char no_dn ;      DN selectedDN ;    } un ;} ;typedef struct quipu_call{	int	protocol ;#define PROTOCOL_DAP  0#define PROTOCOL_DSP  1#define PROTOCOL_QUIPUDSP	2#define	PROTOCOL_INTERNET_DSP	3	int	assoc_id ;struct	auth_level * authorizationLevel ;	char	initiated_by_dsa ;	DN	usersDN ;	char	*net_address ;	char	*start_time ;	char	*finish_time ;struct	op_list	*pending_ops ;struct	op_list	*invoked_ops ;} quipu_call ;struct	auth_level{	int	parm ;#define AUTHLEVEL_NONE        1#define AUTHLEVEL_IDENTIFIED  2#define AUTHLEVEL_SIMPLE      3#define AUTHLEVEL_PROTECTED_SIMPLE   4#define AUTHLEVEL_STRONG      5} ;struct sub_ch_list{	int	assoc_id ;	int	invok_id ;} ;struct chain_list{	struct	sub_ch_list	*sub_chained_ops ;	struct	chain_list		*next ;} ;struct	ops{	int	invoke_id ;	int	operation_id ;	DN	base_object ;	char	*start_time ;	char	*finish_time ;struct	chain_list	*chained_ops ;} ;struct op_list{	struct	ops	*operation_list ;	struct	op_list *next ;} ;#endif

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -