dst_parse.h revision 0c27b3fe77ac1d5094ba3521e8142d9e7973133f
/*
* Portions Copyright (C) 2000-2002, 2004-2010, 2012, 2014, 2016 Internet Systems Consortium, Inc. ("ISC")
*
* This Source Code Form is subject to the terms of the Mozilla Public
* License, v. 2.0. If a copy of the MPL was not distributed with this
* file, You can obtain one at http://mozilla.org/MPL/2.0/.
*
* Portions Copyright (C) 1995-2000 by Network Associates, Inc.
*
* purpose with or without fee is hereby granted, provided that the above
* copyright notice and this permission notice appear in all copies.
*
* THE SOFTWARE IS PROVIDED "AS IS" AND ISC AND NETWORK ASSOCIATES DISCLAIMS
* ALL WARRANTIES WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED
* WARRANTIES OF MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL ISC BE LIABLE
* FOR ANY SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES
* WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN
* ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF OR
* IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE.
*/
/* $Id: dst_parse.h,v 1.17 2010/12/23 23:47:08 tbox Exp $ */
/*! \file */
#ifndef DST_DST_PARSE_H
#define DST_DST_PARSE_H 1
#define MAXFIELDSIZE 512
/*
* Maximum number of fields in a private file is 18 (12 algorithm-
* specific fields for RSA, plus 6 generic fields).
*/
#define TAG_SHIFT 4
/* These are used by both RSA-MD5 and RSA-SHA1 */
#define RSA_NTAGS 11
#define DH_NTAGS 4
#define DSA_NTAGS 5
#define GOST_NTAGS 1
#define ECDSA_NTAGS 4
#define OLD_HMACMD5_NTAGS 1
#define HMACMD5_NTAGS 2
#define HMACSHA1_NTAGS 2
#define HMACSHA224_NTAGS 2
#define HMACSHA256_NTAGS 2
#define HMACSHA384_NTAGS 2
#define HMACSHA512_NTAGS 2
struct dst_private_element {
unsigned short tag;
unsigned short length;
unsigned char *data;
};
typedef struct dst_private_element dst_private_element_t;
struct dst_private {
unsigned short nelements;
};
typedef struct dst_private dst_private_t;
void
const char *directory);
#endif /* DST_DST_PARSE_H */