pki1t.h
上传用户:lyxiangda
上传日期:2007-01-12
资源大小:3042k
文件大小:3k
源码类别:

CA认证

开发平台:

WINDOWS

  1. /* 
  2.  * The contents of this file are subject to the Mozilla Public
  3.  * License Version 1.1 (the "License"); you may not use this file
  4.  * except in compliance with the License. You may obtain a copy of
  5.  * the License at http://www.mozilla.org/MPL/
  6.  * 
  7.  * Software distributed under the License is distributed on an "AS
  8.  * IS" basis, WITHOUT WARRANTY OF ANY KIND, either express or
  9.  * implied. See the License for the specific language governing
  10.  * rights and limitations under the License.
  11.  * 
  12.  * The Original Code is the Netscape security libraries.
  13.  * 
  14.  * The Initial Developer of the Original Code is Netscape
  15.  * Communications Corporation.  Portions created by Netscape are 
  16.  * Copyright (C) 1994-2000 Netscape Communications Corporation.  All
  17.  * Rights Reserved.
  18.  * 
  19.  * Contributor(s):
  20.  * 
  21.  * Alternatively, the contents of this file may be used under the
  22.  * terms of the GNU General Public License Version 2 or later (the
  23.  * "GPL"), in which case the provisions of the GPL are applicable 
  24.  * instead of those above.  If you wish to allow use of your 
  25.  * version of this file only under the terms of the GPL and not to
  26.  * allow others to use your version of this file under the MPL,
  27.  * indicate your decision by deleting the provisions above and
  28.  * replace them with the notice and other provisions required by
  29.  * the GPL.  If you do not delete the provisions above, a recipient
  30.  * may use your version of this file under either the MPL or the
  31.  * GPL.
  32.  */
  33. #ifndef PKI1T_H
  34. #define PKI1T_H
  35. #ifdef DEBUG
  36. static const char PKI1T_CVS_ID[] = "@(#) $RCSfile: pki1t.h,v $ $Revision: 1.1 $ $Date: 2000/03/31 19:16:25 $ $Name: NSS_3_1_1_RTM $";
  37. #endif /* DEBUG */
  38. /*
  39.  * pki1t.h
  40.  *
  41.  * This file contains definitions for the types used in the PKIX part-1
  42.  * code, but not available publicly.
  43.  */
  44. #ifndef BASET_H
  45. #include "baset.h"
  46. #endif /* BASET_H */
  47. #ifndef NSSPKI1T_H
  48. #include "nsspki1t.h"
  49. #endif /* NSSPKI1T_H */
  50. PR_BEGIN_EXTERN_C
  51. /*
  52.  * NSSOID
  53.  *
  54.  * This structure is used to hold our internal table of built-in OID
  55.  * data.  The fields are as follows:
  56.  *
  57.  *  NSSItem     data -- this is the actual DER-encoded multinumber oid
  58.  *  const char *expl -- this explains the derivation, and is checked
  59.  *                      in a unit test.  While the field always exists,
  60.  *                      it is only populated or used in debug builds.
  61.  *
  62.  */
  63. struct NSSOIDStr {
  64. #ifdef DEBUG
  65.   const NSSUTF8 *tag;
  66.   const NSSUTF8 *expl;
  67. #endif /* DEBUG */
  68.   NSSItem data;
  69. };
  70. /*
  71.  * nssAttributeTypeAliasTable
  72.  *
  73.  * Attribute types are passed around as oids (at least in the X.500
  74.  * and PKI worlds, as opposed to ldap).  However, when written as 
  75.  * strings they usually have well-known aliases, e.g., "ou" or "c."
  76.  *
  77.  * This type defines a table, populated in the generated oiddata.c
  78.  * file, of the aliases we recognize.
  79.  *
  80.  * The fields are as follows:
  81.  *
  82.  *  NSSUTF8 *alias -- a well-known string alias for an oid
  83.  *  NSSOID  *oid   -- the oid to which the alias corresponds
  84.  *
  85.  */
  86. struct nssAttributeTypeAliasTableStr {
  87.   const NSSUTF8 *alias;
  88.   const NSSOID **oid;
  89. };
  90. typedef struct nssAttributeTypeAliasTableStr nssAttributeTypeAliasTable;
  91. PR_END_EXTERN_C
  92. #endif /* PKI1T_H */