Annotation of embedaddon/strongswan/src/pki/pki.h, revision 1.1

1.1     ! misho       1: /*
        !             2:  * Copyright (C) 2015-2017 Tobias Brunner
        !             3:  * Copyright (C) 2009 Martin Willi
        !             4:  * HSR Hochschule fuer Technik Rapperswil
        !             5:  *
        !             6:  * This program is free software; you can redistribute it and/or modify it
        !             7:  * under the terms of the GNU General Public License as published by the
        !             8:  * Free Software Foundation; either version 2 of the License, or (at your
        !             9:  * option) any later version.  See <http://www.fsf.org/copyleft/gpl.txt>.
        !            10:  *
        !            11:  * This program is distributed in the hope that it will be useful, but
        !            12:  * WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY
        !            13:  * or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU General Public License
        !            14:  * for more details.
        !            15:  */
        !            16: 
        !            17: /**
        !            18:  * @defgroup pki pki
        !            19:  *
        !            20:  * @addtogroup pki
        !            21:  * @{
        !            22:  */
        !            23: 
        !            24: #ifndef PKI_H_
        !            25: #define PKI_H_
        !            26: 
        !            27: #include "command.h"
        !            28: 
        !            29: #include <library.h>
        !            30: #include <selectors/traffic_selector.h>
        !            31: #include <credentials/keys/private_key.h>
        !            32: 
        !            33: /**
        !            34:  * Convert a form string to a encoding type
        !            35:  */
        !            36: bool get_form(char *form, cred_encoding_type_t *enc, credential_type_t type);
        !            37: 
        !            38: /**
        !            39:  * Calculate start/end lifetime for certificates.
        !            40:  *
        !            41:  * If both nbstr and nastr are given, span is ignored. Otherwise missing
        !            42:  * arguments are calculated, or assumed to be now.
        !            43:  *
        !            44:  * @param format       strptime() format, NULL for default: %d.%m.%y %T
        !            45:  * @param nbstr                string describing notBefore datetime, or NULL
        !            46:  * @param nastr                string describing notAfter datetime, or NULL
        !            47:  * @param span         lifetime span, from notBefore to notAfter
        !            48:  * @param nb           calculated notBefore time
        !            49:  * @param na           calculated notAfter time
        !            50:  * @return                     TRUE of nb/na calculated successfully
        !            51:  */
        !            52: bool calculate_lifetime(char *format, char *nbstr, char *nastr, time_t span,
        !            53:                                                time_t *nb, time_t *na);
        !            54: 
        !            55: /**
        !            56:  * Set output file mode appropriate for credential encoding form on Windows
        !            57:  */
        !            58: void set_file_mode(FILE *stream, cred_encoding_type_t enc);
        !            59: 
        !            60: /**
        !            61:  * Determine the signature scheme and parameters for the given private key and
        !            62:  * hash algorithm and whether to use PSS padding for RSA.
        !            63:  *
        !            64:  * @param private      private key
        !            65:  * @param digest       hash algorithm (if HASH_UNKNOWN a default is determined
        !            66:  *                                     based on the key)
        !            67:  * @param pss          use PSS padding for RSA keys
        !            68:  * @return                     allocated signature scheme and parameters (NULL if none
        !            69:  *                                     found)
        !            70:  */
        !            71: signature_params_t *get_signature_scheme(private_key_t *private,
        !            72:                                                                                 hash_algorithm_t digest, bool pss);
        !            73: 
        !            74: /**
        !            75:  * Create a traffic selector from a CIDR or range string.
        !            76:  *
        !            77:  * @param str          input string, either a.b.c.d/e or a.b.c.d-e.f.g.h
        !            78:  * @return                     traffic selector, NULL on error
        !            79:  */
        !            80: traffic_selector_t* parse_ts(char *str);
        !            81: 
        !            82: #endif /** PKI_H_ @}*/

FreeBSD-CVSweb <freebsd-cvsweb@FreeBSD.org>