Blame usr/lib/cca_stdll/cca_func.h

Packit 8681c6
/*
Packit 8681c6
 * COPYRIGHT (c) International Business Machines Corp. 1997-2017
Packit 8681c6
 *
Packit 8681c6
 * This program is provided under the terms of the Common Public License,
Packit 8681c6
 * version 1.0 (CPL-1.0). Any use, reproduction or distribution for this
Packit 8681c6
 * software constitutes recipient's acceptance of CPL-1.0 terms which can be
Packit 8681c6
 * found in the file LICENSE file or at
Packit 8681c6
 * https://opensource.org/licenses/cpl1.0.php
Packit 8681c6
 */
Packit 8681c6
Packit 8681c6
/******************************************************************************/
Packit 8681c6
/*  US Government Users Restricted Rights - Use, duplication or disclosure    */
Packit 8681c6
/* restricted by GSA ADP Schedule Contract with IBM Corp.                     */
Packit 8681c6
/******************************************************************************/
Packit 8681c6
/*                                                                            */
Packit 8681c6
/*  This header file contains the Security API C language                     */
Packit 8681c6
/*  prototypes.  See the user publications for more information.              */
Packit 8681c6
/*                                                                            */
Packit 8681c6
/******************************************************************************/
Packit 8681c6
Packit 8681c6
/* Clear Key Import */
Packit 8681c6
typedef void (**CSNBCKI_t) (long *return_code,
Packit 8681c6
                            long *reason_code,
Packit 8681c6
                            long *exit_data_length,
Packit 8681c6
                            unsigned char *exit_data,
Packit 8681c6
                            unsigned char *clear_key,
Packit 8681c6
                            unsigned char *target_key_identifier);
Packit 8681c6
Packit 8681c6
/* Clear Key Import Multiple */
Packit 8681c6
typedef void (*CSNBCKM_t) (long *return_code,
Packit 8681c6
                           long *reason_code,
Packit 8681c6
                           long *exit_data_length,
Packit 8681c6
                           unsigned char *exit_data,
Packit 8681c6
                           long *rule_array_count,
Packit 8681c6
                           unsigned char *rule_array,
Packit 8681c6
                           long *clear_key_length,
Packit 8681c6
                           unsigned char *clear_key,
Packit 8681c6
                           unsigned char *target_key_identifier);
Packit 8681c6
Packit 8681c6
/* Data Key Export */
Packit 8681c6
typedef void (*CSNBDKX_t) (long *return_code,
Packit 8681c6
                           long *reason_code,
Packit 8681c6
                           long *exit_data_length,
Packit 8681c6
                           unsigned char *exit_data,
Packit 8681c6
                           unsigned char *source_key_identifier,
Packit 8681c6
                           unsigned char *exporter_key_identifier,
Packit 8681c6
                           unsigned char *target_key_token);
Packit 8681c6
Packit 8681c6
/* Data    Key Import */
Packit 8681c6
typedef void (*CSNBDKM_t) (long *return_code,
Packit 8681c6
                           long *reason_code,
Packit 8681c6
                           long *exit_data_length,
Packit 8681c6
                           unsigned char *exit_data,
Packit 8681c6
                           unsigned char *source_key_token,
Packit 8681c6
                           unsigned char *importer_key_identifier,
Packit 8681c6
                           unsigned char *target_key_identifier);
Packit 8681c6
Packit 8681c6
/* DES Master Key Process */
Packit 8681c6
typedef void (*CSNBMKP_t) (long *return_code,
Packit 8681c6
                           long *reason_code,
Packit 8681c6
                           long *exit_data_length,
Packit 8681c6
                           unsigned char *exit_data,
Packit 8681c6
                           long *rule_array_count,
Packit 8681c6
                           unsigned char *rule_array, unsigned char *key_part);
Packit 8681c6
Packit 8681c6
/* Key Export */
Packit 8681c6
typedef void (*CSNBKEX_t) (long *return_code,
Packit 8681c6
                           long *reason_code,
Packit 8681c6
                           long *exit_data_length,
Packit 8681c6
                           unsigned char *exit_data,
Packit 8681c6
                           unsigned char *key_type,
Packit 8681c6
                           unsigned char *source_key_identifier,
Packit 8681c6
                           unsigned char *exporter_key_identifier,
Packit 8681c6
                           unsigned char *target_key_token);
Packit 8681c6
Packit 8681c6
/* Key Generate */
Packit 8681c6
typedef void (*CSNBKGN_t) (long *return_code,
Packit 8681c6
                           long *reason_code,
Packit 8681c6
                           long *exit_data_length,
Packit 8681c6
                           unsigned char *exit_data,
Packit 8681c6
                           unsigned char *key_form,
Packit 8681c6
                           unsigned char *key_length,
Packit 8681c6
                           unsigned char *key_type_1,
Packit 8681c6
                           unsigned char *key_type_2,
Packit 8681c6
                           unsigned char *KEK_key_identifier_1,
Packit 8681c6
                           unsigned char *KEK_key_identifier_2,
Packit 8681c6
                           unsigned char *generated_key_identifier_1,
Packit 8681c6
                           unsigned char *generated_key_identifier_2);
Packit 8681c6
Packit 8681c6
/* Key Generate2 */
Packit 8681c6
typedef void (*CSNBKGN2_t) (long *return_code,
Packit 8681c6
                            long *reason_code,
Packit 8681c6
                            long *exit_data_length,
Packit 8681c6
                            unsigned char *exit_data,
Packit 8681c6
                            long *rule_array_count,
Packit 8681c6
                            unsigned char *rule_array,
Packit 8681c6
                            long *clear_key_bit_length,
Packit 8681c6
                            unsigned char *key_type_1,
Packit 8681c6
                            unsigned char *key_type_2,
Packit 8681c6
                            long *key_name_1_length,
Packit 8681c6
                            unsigned char *key_name_1,
Packit 8681c6
                            long *key_name_2_length,
Packit 8681c6
                            unsigned char *key_name_2,
Packit 8681c6
                            long *user_associated_data_1_length,
Packit 8681c6
                            unsigned char *user_associated_data_1,
Packit 8681c6
                            long *user_associated_data_2_length,
Packit 8681c6
                            unsigned char *user_associated_data_2,
Packit 8681c6
                            long *key_encrypting_key_identifier_1_length,
Packit 8681c6
                            unsigned char *key_encrypting_key_identifier_1,
Packit 8681c6
                            long *key_encrypting_key_identifier_2_length,
Packit 8681c6
                            unsigned char *key_encrypting_key_identifier_2,
Packit 8681c6
                            long *generated_key_identifier_1_length,
Packit 8681c6
                            unsigned char *generated_key_identifier_1,
Packit 8681c6
                            long *generated_key_identifier_2_length,
Packit 8681c6
                            unsigned char *generated_key_identifier_2);
Packit 8681c6
Packit 8681c6
/* Key Import */
Packit 8681c6
typedef void (*CSNBKIM_t) (long *return_code,
Packit 8681c6
                           long *reason_code,
Packit 8681c6
                           long *exit_data_length,
Packit 8681c6
                           unsigned char *exit_data,
Packit 8681c6
                           unsigned char *key_type,
Packit 8681c6
                           unsigned char *source_key_token,
Packit 8681c6
                           unsigned char *importer_key_identifier,
Packit 8681c6
                           unsigned char *target_key_identifier);
Packit 8681c6
Packit 8681c6
/* Key Part Import */
Packit 8681c6
typedef void (*CSNBKPI_t) (long *return_code,
Packit 8681c6
                           long *reason_code,
Packit 8681c6
                           long *exit_data_length,
Packit 8681c6
                           unsigned char *exit_data,
Packit 8681c6
                           long *rule_array_count,
Packit 8681c6
                           unsigned char *rule_array,
Packit 8681c6
                           unsigned char *key_part,
Packit 8681c6
                           unsigned char *key_identifier);
Packit 8681c6
Packit 8681c6
/* Key Part Import2 */
Packit 8681c6
typedef void (*CSNBKPI2_t) (long *return_code,
Packit 8681c6
                            long *reason_code,
Packit 8681c6
                            long *exit_data_length,
Packit 8681c6
                            unsigned char *exit_data,
Packit 8681c6
                            long *rule_array_count,
Packit 8681c6
                            unsigned char *rule_array,
Packit 8681c6
                            long *clear_key_part_length,
Packit 8681c6
                            unsigned char *clear_key_part,
Packit 8681c6
                            long *key_identifier_length,
Packit 8681c6
                            unsigned char *key_identifier);
Packit 8681c6
Packit 8681c6
/* Key Storage Initialization */
Packit 8681c6
typedef void (*CSNBKSI_t) (long *return_code,
Packit 8681c6
                           long *reason_code,
Packit 8681c6
                           long *exit_data_length,
Packit 8681c6
                           unsigned char *exit_data,
Packit 8681c6
                           long *rule_array_count,
Packit 8681c6
                           unsigned char *rule_array,
Packit 8681c6
                           long *file_name_length,
Packit 8681c6
                           unsigned char *file_name,
Packit 8681c6
                           long *description_length,
Packit 8681c6
                           unsigned char *description,
Packit 8681c6
                           unsigned char *clear_master_key);
Packit 8681c6
Packit 8681c6
/* Key Record Create */
Packit 8681c6
typedef void (*CSNBKRC_t) (long *return_code,
Packit 8681c6
                           long *reason_code,
Packit 8681c6
                           long *exit_data_length,
Packit 8681c6
                           unsigned char *exit_data, unsigned char *key_label);
Packit 8681c6
/* AES Key Record Create */
Packit 8681c6
typedef void (*CSNBAKRC_t) (long *return_code,
Packit 8681c6
                            long *reason_code,
Packit 8681c6
                            long *exit_data_length,
Packit 8681c6
                            unsigned char *exit_data,
Packit 8681c6
                            unsigned char *key_label,
Packit 8681c6
                            long *key_token_length, unsigned char *key_token);
Packit 8681c6
Packit 8681c6
/* Key Record Delete */
Packit 8681c6
typedef void (*CSNBKRD_t) (long *return_code,
Packit 8681c6
                           long *reason_code,
Packit 8681c6
                           long *exit_data_length,
Packit 8681c6
                           unsigned char *exit_data,
Packit 8681c6
                           long *rule_array_count,
Packit 8681c6
                           unsigned char *rule_array,
Packit 8681c6
                           unsigned char *key_identifier);
Packit 8681c6
Packit 8681c6
/* Key Record List */
Packit 8681c6
typedef void (*CSNBKRL_t) (long *return_code,
Packit 8681c6
                           long *reason_code,
Packit 8681c6
                           long *exit_data_length,
Packit 8681c6
                           unsigned char *exit_data,
Packit 8681c6
                           unsigned char *key_label,
Packit 8681c6
                           long *data_set_name_length,
Packit 8681c6
                           unsigned char *data_set_name,
Packit 8681c6
                           unsigned char *security_server_name);
Packit 8681c6
Packit 8681c6
/* Key Record Read */
Packit 8681c6
typedef void (*CSNBKRR_t) (long *return_code,
Packit 8681c6
                           long *reason_code,
Packit 8681c6
                           long *exit_data_length,
Packit 8681c6
                           unsigned char *exit_data,
Packit 8681c6
                           unsigned char *key_label, unsigned char *key_token);
Packit 8681c6
Packit 8681c6
/* Key Record Write */
Packit 8681c6
typedef void (*CSNBKRW_t) (long *return_code,
Packit 8681c6
                           long *reason_code,
Packit 8681c6
                           long *exit_data_length,
Packit 8681c6
                           unsigned char *exit_data,
Packit 8681c6
                           unsigned char *key_token, unsigned char *key_label);
Packit 8681c6
Packit 8681c6
/* PKA Key Record Create */
Packit 8681c6
typedef void (*CSNDKRC_t) (long *return_code,
Packit 8681c6
                           long *reason_code,
Packit 8681c6
                           long *exit_data_length,
Packit 8681c6
                           unsigned char *exit_data,
Packit 8681c6
                           long *rule_array_count,
Packit 8681c6
                           unsigned char *rule_array,
Packit 8681c6
                           unsigned char *key_label,
Packit 8681c6
                           long *key_token_length, unsigned char *key_token);
Packit 8681c6
Packit 8681c6
/* PKA Key Record Delete */
Packit 8681c6
typedef void (*CSNDKRD_t) (long *return_code,
Packit 8681c6
                           long *reason_code,
Packit 8681c6
                           long *exit_data_length,
Packit 8681c6
                           unsigned char *exit_data,
Packit 8681c6
                           long *rule_array_count,
Packit 8681c6
                           unsigned char *rule_array,
Packit 8681c6
                           unsigned char *key_identifier);
Packit 8681c6
Packit 8681c6
/* PKA Key Record List */
Packit 8681c6
typedef void (*CSNDKRL_t) (long *return_code,
Packit 8681c6
                           long *reason_code,
Packit 8681c6
                           long *exit_data_length,
Packit 8681c6
                           unsigned char *exit_data,
Packit 8681c6
                           long *rule_array_count,
Packit 8681c6
                           unsigned char *rule_array,
Packit 8681c6
                           unsigned char *key_label,
Packit 8681c6
                           long *data_set_name_length,
Packit 8681c6
                           unsigned char *data_set_name,
Packit 8681c6
                           unsigned char *security_server_name);
Packit 8681c6
Packit 8681c6
/* PKA Key Record Read */
Packit 8681c6
typedef void (*CSNDKRR_t) (long *return_code,
Packit 8681c6
                           long *reason_code,
Packit 8681c6
                           long *exit_data_length,
Packit 8681c6
                           unsigned char *exit_data,
Packit 8681c6
                           long *rule_array_count,
Packit 8681c6
                           unsigned char *rule_array,
Packit 8681c6
                           unsigned char *key_label,
Packit 8681c6
                           long *key_token_length, unsigned char *key_token);
Packit 8681c6
Packit 8681c6
/* PKA Key Record Write */
Packit 8681c6
typedef void (*CSNDKRW_t) (long *return_code,
Packit 8681c6
                           long *reason_code,
Packit 8681c6
                           long *exit_data_length,
Packit 8681c6
                           unsigned char *exit_data,
Packit 8681c6
                           long *rule_array_count,
Packit 8681c6
                           unsigned char *rule_array,
Packit 8681c6
                           unsigned char *key_label,
Packit 8681c6
                           long *key_token_length, unsigned char *key_token);
Packit 8681c6
Packit 8681c6
/* Key Test */
Packit 8681c6
typedef void (*CSNBKYT_t) (long *return_code,
Packit 8681c6
                           long *reason_code,
Packit 8681c6
                           long *exit_data_length,
Packit 8681c6
                           unsigned char *exit_data,
Packit 8681c6
                           long *rule_array_count,
Packit 8681c6
                           unsigned char *rule_array,
Packit 8681c6
                           unsigned char *key_identifier,
Packit 8681c6
                           unsigned char *random_number,
Packit 8681c6
                           unsigned char *verification_pattern);
Packit 8681c6
Packit 8681c6
/* Key Test Extended @b3a*/
Packit 8681c6
typedef void (*CSNBKYTX_t) (long *return_code,
Packit 8681c6
                            long *reason_code,
Packit 8681c6
                            long *exit_data_length,
Packit 8681c6
                            unsigned char *exit_data,
Packit 8681c6
                            long *rule_array_count,
Packit 8681c6
                            unsigned char *rule_array,
Packit 8681c6
                            unsigned char *key_identifier,
Packit 8681c6
                            unsigned char *random_number,
Packit 8681c6
                            unsigned char *verification_pattern,
Packit 8681c6
                            unsigned char *kek_key_identifier);
Packit 8681c6
Packit 8681c6
/* Des Key Token Change */
Packit 8681c6
typedef void (*CSNBKTC_t) (long *return_code,
Packit 8681c6
                           long *reason_code,
Packit 8681c6
                           long *exit_data_length,
Packit 8681c6
                           unsigned char *exit_data,
Packit 8681c6
                           long *rule_array_count,
Packit 8681c6
                           unsigned char *rule_array,
Packit 8681c6
                           unsigned char *key_identifier);
Packit 8681c6
Packit 8681c6
/* Key Translate */
Packit 8681c6
typedef void (*CSNBKTR_t) (long *return_code,
Packit 8681c6
                           long *reason_code,
Packit 8681c6
                           long *exit_data_length,
Packit 8681c6
                           unsigned char *exit_data,
Packit 8681c6
                           unsigned char *input_key_token,
Packit 8681c6
                           unsigned char *input_KEK_key_identifier,
Packit 8681c6
                           unsigned char *output_KEK_key_identifier,
Packit 8681c6
                           unsigned char *output_key_token);
Packit 8681c6
Packit 8681c6
/* Random Number Generate */
Packit 8681c6
typedef void (*CSNBRNG_t) (long *return_code,
Packit 8681c6
                           long *reason_code,
Packit 8681c6
                           long *exit_data_length,
Packit 8681c6
                           unsigned char *exit_data,
Packit 8681c6
                           unsigned char *form, unsigned char *random_number);
Packit 8681c6
Packit 8681c6
/* Random Number Generate Long */
Packit 8681c6
typedef void (*CSNBRNGL_t) (long *return_code,
Packit 8681c6
                           long *reason_code,
Packit 8681c6
                           long *exit_data_length,
Packit 8681c6
                           unsigned char *exit_data,
Packit 8681c6
                           long *rule_array_count,
Packit 8681c6
                           unsigned char *rule_array,
Packit 8681c6
                           long *seed_length,
Packit 8681c6
                           unsigned char *seed,
Packit 8681c6
                           long *random_number_length,
Packit 8681c6
                           unsigned char *random_number);
Packit 8681c6
Packit 8681c6
typedef void (*CSNBSAE_t) (long *return_code,
Packit 8681c6
                           long *reason_code,
Packit 8681c6
                           long *exit_data_length,
Packit 8681c6
                           unsigned char *exit_data,
Packit 8681c6
                           long *rule_array_count,
Packit 8681c6
                           unsigned char *rule_array,
Packit 8681c6
                           long *key_identifier_length,
Packit 8681c6
                           unsigned char *key_identifier,
Packit 8681c6
                           long *key_params_length,
Packit 8681c6
                           unsigned char *key_params,
Packit 8681c6
                           long *block_size,
Packit 8681c6
                           long *initialization_vector_length,
Packit 8681c6
                           unsigned char *initialization_vector,
Packit 8681c6
                           long *chaining_vector_length,
Packit 8681c6
                           unsigned char *chaining_vector,
Packit 8681c6
                           long *text_length,
Packit 8681c6
                           unsigned char *text,
Packit 8681c6
                           long *ciphertext_length,
Packit 8681c6
                           unsigned char *ciphertext,
Packit 8681c6
                           long *optional_data_length,
Packit 8681c6
                           unsigned char *optional_data);
Packit 8681c6
Packit 8681c6
typedef void (*CSNBSAD_t) (long *return_code,
Packit 8681c6
                           long *reason_code,
Packit 8681c6
                           long *exit_data_length,
Packit 8681c6
                           unsigned char *exit_data,
Packit 8681c6
                           long *rule_array_count,
Packit 8681c6
                           unsigned char *rule_array,
Packit 8681c6
                           long *key_identifier_length,
Packit 8681c6
                           unsigned char *key_identifier,
Packit 8681c6
                           long *key_params_length,
Packit 8681c6
                           unsigned char *key_params,
Packit 8681c6
                           long *block_size,
Packit 8681c6
                           long *initialization_vector_length,
Packit 8681c6
                           unsigned char *initialization_vector,
Packit 8681c6
                           long *chaining_vector_length,
Packit 8681c6
                           unsigned char *chaining_vector,
Packit 8681c6
                           long *ciphertext_length,
Packit 8681c6
                           unsigned char *ciphertext,
Packit 8681c6
                           long *text_length,
Packit 8681c6
                           unsigned char *text,
Packit 8681c6
                           long *optional_data_length,
Packit 8681c6
                           unsigned char *optional_data);
Packit 8681c6
Packit 8681c6
/* Decipher */
Packit 8681c6
typedef void (*CSNBDEC_t) (long *return_code,
Packit 8681c6
                           long *reason_code,
Packit 8681c6
                           long *exit_data_length,
Packit 8681c6
                           unsigned char *exit_data,
Packit 8681c6
                           unsigned char *key_identifier,
Packit 8681c6
                           long *text_length,
Packit 8681c6
                           unsigned char *ciphertext,
Packit 8681c6
                           unsigned char *initialization_vector,
Packit 8681c6
                           long *rule_array_count,
Packit 8681c6
                           unsigned char *rule_array,
Packit 8681c6
                           unsigned char *chaining_vector,
Packit 8681c6
                           unsigned char *plaintext);
Packit 8681c6
Packit 8681c6
/* Encipher */
Packit 8681c6
typedef void (*CSNBENC_t) (long *return_code,
Packit 8681c6
                           long *reason_code,
Packit 8681c6
                           long *exit_data_length,
Packit 8681c6
                           unsigned char *exit_data,
Packit 8681c6
                           unsigned char *key_identifier,
Packit 8681c6
                           long *text_length,
Packit 8681c6
                           unsigned char *plaintext,
Packit 8681c6
                           unsigned char *initialization_vector,
Packit 8681c6
                           long *rule_array_count,
Packit 8681c6
                           unsigned char *rule_array,
Packit 8681c6
                           long *pad_character,
Packit 8681c6
                           unsigned char *chaining_vector,
Packit 8681c6
                           unsigned char *ciphertext);
Packit 8681c6
Packit 8681c6
/* MAC Generate */
Packit 8681c6
typedef void (*CSNBMGN_t) (long *return_code,
Packit 8681c6
                           long *reason_code,
Packit 8681c6
                           long *exit_data_length,
Packit 8681c6
                           unsigned char *exit_data,
Packit 8681c6
                           unsigned char *key_identifier,
Packit 8681c6
                           long *text_length,
Packit 8681c6
                           unsigned char *text,
Packit 8681c6
                           long *rule_array_count,
Packit 8681c6
                           unsigned char *rule_array,
Packit 8681c6
                           unsigned char *chaining_vector, unsigned char *MAC);
Packit 8681c6
Packit 8681c6
/* MAC Verify */
Packit 8681c6
typedef void (*CSNBMVR_t) (long *return_code,
Packit 8681c6
                           long *reason_code,
Packit 8681c6
                           long *exit_data_length,
Packit 8681c6
                           unsigned char *exit_data,
Packit 8681c6
                           unsigned char *key_identifier,
Packit 8681c6
                           long *text_length,
Packit 8681c6
                           unsigned char *text,
Packit 8681c6
                           long *rule_array_count,
Packit 8681c6
                           unsigned char *rule_array,
Packit 8681c6
                           unsigned char *chaining_vector, unsigned char *MAC);
Packit 8681c6
Packit 8681c6
/* Key Token Build */
Packit 8681c6
typedef void (*CSNBKTB_t) (long *return_code,
Packit 8681c6
                           long *reason_code,
Packit 8681c6
                           long *exit_data_length,
Packit 8681c6
                           unsigned char *exit_data,
Packit 8681c6
                           unsigned char *key_token,
Packit 8681c6
                           unsigned char *key_type,
Packit 8681c6
                           long *rule_array_count,
Packit 8681c6
                           unsigned char *rule_array,
Packit 8681c6
                           unsigned char *key_value,
Packit 8681c6
                           void *reserved_field_1,
Packit 8681c6
                           long *reserved_field_2,
Packit 8681c6
                           unsigned char *reserved_field_3,
Packit 8681c6
                           unsigned char *control_vector,
Packit 8681c6
                           unsigned char *reserved_field_4,
Packit 8681c6
                           long *reserved_field_5,
Packit 8681c6
                           unsigned char *reserved_field_6,
Packit 8681c6
                           unsigned char *master_key_verification_number);
Packit 8681c6
Packit 8681c6
Packit 8681c6
/* Key Token Build2 */
Packit 8681c6
typedef void (*CSNBKTB2_t) (long *return_code,
Packit 8681c6
                            long *reason_code,
Packit 8681c6
                            long *exit_data_length,
Packit 8681c6
                            unsigned char *exit_data,
Packit 8681c6
                            long *rule_array_count,
Packit 8681c6
                            unsigned char *rule_array,
Packit 8681c6
                            long *clear_key_bit_length,
Packit 8681c6
                            unsigned char *clear_key_value,
Packit 8681c6
                            long *key_name_length,
Packit 8681c6
                            unsigned char *key_name,
Packit 8681c6
                            long *user_associated_data_length,
Packit 8681c6
                            unsigned char *user_associated_data,
Packit 8681c6
                            long *token_data_length,
Packit 8681c6
                            unsigned char *token_data,
Packit 8681c6
                            long *reserved_length,
Packit 8681c6
                            unsigned char *reserved,
Packit 8681c6
                            long *target_key_token_length,
Packit 8681c6
                            unsigned char *target_key_token);
Packit 8681c6
Packit 8681c6
/* PKA Key Generate */
Packit 8681c6
typedef void (*CSNDPKG_t) (long *return_code,
Packit 8681c6
                           long *reason_code,
Packit 8681c6
                           long *exit_data_length,
Packit 8681c6
                           unsigned char *exit_data,
Packit 8681c6
                           long *rule_array_count,
Packit 8681c6
                           unsigned char *rule_array,
Packit 8681c6
                           long *regeneration_data_length,
Packit 8681c6
                           unsigned char *regeneration_data,
Packit 8681c6
                           long *skeleton_key_token_length,
Packit 8681c6
                           unsigned char *skeleton_key_token,
Packit 8681c6
                           unsigned char *transport_key_identifier,
Packit 8681c6
                           long *generated_key_identifier_length,
Packit 8681c6
                           unsigned char *generated_key_identifier);
Packit 8681c6
Packit 8681c6
/* PKA Key Token Build */
Packit 8681c6
typedef void (*CSNDPKB_t) (long *return_code,
Packit 8681c6
                           long *reason_code,
Packit 8681c6
                           long *exit_data_length,
Packit 8681c6
                           unsigned char *exit_data,
Packit 8681c6
                           long *rule_array_count,
Packit 8681c6
                           unsigned char *rule_array,
Packit 8681c6
                           long *key_values_structure_length,
Packit 8681c6
                           unsigned char *key_values_structure,
Packit 8681c6
                           long *key_name_ln,
Packit 8681c6
                           unsigned char *key_name,
Packit 8681c6
                           long *reserved_1_length,
Packit 8681c6
                           unsigned char *reserved_1,
Packit 8681c6
                           long *reserved_2_length,
Packit 8681c6
                           unsigned char *reserved_2,
Packit 8681c6
                           long *reserved_3_length,
Packit 8681c6
                           unsigned char *reserved_3,
Packit 8681c6
                           long *reserved_4_length,
Packit 8681c6
                           unsigned char *reserved_4,
Packit 8681c6
                           long *reserved_5_length,
Packit 8681c6
                           unsigned char *reserved_5,
Packit 8681c6
                           long *token_length, unsigned char *token);
Packit 8681c6
Packit 8681c6
/* One Way Hash */
Packit 8681c6
typedef void (*CSNBOWH_t) (long *return_code,
Packit 8681c6
                           long *reason_code,
Packit 8681c6
                           long *exit_data_length,
Packit 8681c6
                           unsigned char *exit_data,
Packit 8681c6
                           long *rule_array_count,
Packit 8681c6
                           unsigned char *rule_array,
Packit 8681c6
                           long *text_length,
Packit 8681c6
                           unsigned char *text,
Packit 8681c6
                           long *chaining_vector_length,
Packit 8681c6
                           unsigned char *chaining_vector,
Packit 8681c6
                           long *hash_length, unsigned char *hash);
Packit 8681c6
Packit 8681c6
/* PKA Key Import */
Packit 8681c6
typedef void (*CSNDPKI_t) (long *return_code,
Packit 8681c6
                           long *reason_code,
Packit 8681c6
                           long *exit_data_length,
Packit 8681c6
                           unsigned char *exit_data,
Packit 8681c6
                           long *rule_array_count,
Packit 8681c6
                           unsigned char *rule_array,
Packit 8681c6
                           long *source_key_token_length,
Packit 8681c6
                           unsigned char *source_key_token,
Packit 8681c6
                           unsigned char *importer_key_identifier,
Packit 8681c6
                           long *target_key_identifier_length,
Packit 8681c6
                           unsigned char *target_key_identifier);
Packit 8681c6
Packit 8681c6
/* Digital Signature Generate */
Packit 8681c6
typedef void (*CSNDDSG_t) (long *return_code,
Packit 8681c6
                           long *reason_code,
Packit 8681c6
                           long *exit_data_length,
Packit 8681c6
                           unsigned char *exit_data,
Packit 8681c6
                           long *rule_array_count,
Packit 8681c6
                           unsigned char *rule_array,
Packit 8681c6
                           long *PKA_private_key_id_length,
Packit 8681c6
                           unsigned char *PKA_private_key_id,
Packit 8681c6
                           long *hash_length,
Packit 8681c6
                           unsigned char *hash,
Packit 8681c6
                           long *signature_field_length,
Packit 8681c6
                           long *signature_bit_length,
Packit 8681c6
                           unsigned char *signature_field);
Packit 8681c6
Packit 8681c6
/* Digital Signature Verify */
Packit 8681c6
typedef void (*CSNDDSV_t) (long *return_code,
Packit 8681c6
                           long *reason_code,
Packit 8681c6
                           long *exit_data_length,
Packit 8681c6
                           unsigned char *exit_data,
Packit 8681c6
                           long *rule_array_count,
Packit 8681c6
                           unsigned char *rule_array,
Packit 8681c6
                           long *PKA_public_key_id_length,
Packit 8681c6
                           unsigned char *PKA_public_key_id,
Packit 8681c6
                           long *hash_length,
Packit 8681c6
                           unsigned char *hash,
Packit 8681c6
                           long *signature_field_length,
Packit 8681c6
                           unsigned char *signature_field);
Packit 8681c6
Packit 8681c6
/* PKA Key Token Change */
Packit 8681c6
typedef void (*CSNDKTC_t) (long *return_code,
Packit 8681c6
                           long *reason_code,
Packit 8681c6
                           long *exit_data_length,
Packit 8681c6
                           unsigned char *exit_data,
Packit 8681c6
                           long *rule_array_count,
Packit 8681c6
                           unsigned char *rule_array,
Packit 8681c6
                           long *key_id_length, unsigned char *key_id);
Packit 8681c6
Packit 8681c6
/* PKA Public Key Extract */
Packit 8681c6
typedef void (*CSNDPKX_t) (long *return_code,
Packit 8681c6
                           long *reason_code,
Packit 8681c6
                           long *exit_data_length,
Packit 8681c6
                           unsigned char *exit_data,
Packit 8681c6
                           long *rule_array_count,
Packit 8681c6
                           unsigned char *rule_array,
Packit 8681c6
                           long *source_key_identifier_length,
Packit 8681c6
                           unsigned char *source_key_identifier,
Packit 8681c6
                           long *target_key_token_length,
Packit 8681c6
                           unsigned char *target_key_token);
Packit 8681c6
Packit 8681c6
/* PKA Symmetric Key Import */
Packit 8681c6
typedef void (*CSNDSYI_t) (long *return_code,
Packit 8681c6
                           long *reason_code,
Packit 8681c6
                           long *exit_data_length,
Packit 8681c6
                           unsigned char *exit_data,
Packit 8681c6
                           long *rule_array_count,
Packit 8681c6
                           unsigned char *rule_array,
Packit 8681c6
                           long *RSA_enciphered_key_length,
Packit 8681c6
                           unsigned char *RSA_enciphered_key,
Packit 8681c6
                           long *RSA_private_key_identifier_len,
Packit 8681c6
                           unsigned char *RSA_private_key_identifier,
Packit 8681c6
                           long *target_key_identifier_length,
Packit 8681c6
                           unsigned char *target_key_identifier);
Packit 8681c6
Packit 8681c6
/* PKA Symmetric Key Export */
Packit 8681c6
typedef void (*CSNDSYX_t) (long *return_code,
Packit 8681c6
                           long *reason_code,
Packit 8681c6
                           long *exit_data_length,
Packit 8681c6
                           unsigned char *exit_data,
Packit 8681c6
                           long *rule_array_count,
Packit 8681c6
                           unsigned char *rule_array,
Packit 8681c6
                           long *source_key_identifier_length,
Packit 8681c6
                           unsigned char *source_key_identifier,
Packit 8681c6
                           long *RSA_public_key_identifier_len,
Packit 8681c6
                           unsigned char *RSA_public_key_identifier,
Packit 8681c6
                           long *RSA_enciphered_key_length,
Packit 8681c6
                           unsigned char *RSA_enciphered_key);
Packit 8681c6
Packit 8681c6
/* Crypto Facility Query */
Packit 8681c6
typedef void (*CSUACFQ_t) (long *return_code,
Packit 8681c6
                           long *reason_code,
Packit 8681c6
                           long *exit_data_length,
Packit 8681c6
                           unsigned char *exit_data,
Packit 8681c6
                           long *rule_array_count,
Packit 8681c6
                           unsigned char *rule_array,
Packit 8681c6
                           long *verb_data_length, unsigned char *verb_data);
Packit 8681c6
Packit 8681c6
/* Crypto Facility Control */
Packit 8681c6
typedef void (*CSUACFC_t) (long *return_code,
Packit 8681c6
                           long *reason_code,
Packit 8681c6
                           long *exit_data_length,
Packit 8681c6
                           unsigned char *exit_data,
Packit 8681c6
                           long *rule_array_count,
Packit 8681c6
                           unsigned char *rule_array,
Packit 8681c6
                           long *verb_data_length, unsigned char *verb_data);
Packit 8681c6
Packit 8681c6
/* Compose SET Block */
Packit 8681c6
typedef void (*CSNDSBC_t) (long *ReturnCode,
Packit 8681c6
                           long *ReasonCode,
Packit 8681c6
                           long *ExitDataLength,
Packit 8681c6
                           unsigned char *ExitData,
Packit 8681c6
                           long *RuleArrayCount,
Packit 8681c6
                           unsigned char *RuleArray,
Packit 8681c6
                           unsigned char *BlockContentsIdentifier,
Packit 8681c6
                           long *XDataStringLength,
Packit 8681c6
                           unsigned char *XDataString,
Packit 8681c6
                           long *DataToEncryptLength,
Packit 8681c6
                           unsigned char *DataToEncrypt,
Packit 8681c6
                           long *DataToHashLength,
Packit 8681c6
                           unsigned char *DataToHash,
Packit 8681c6
                           unsigned char *InitializationVector,
Packit 8681c6
                           long *RSAPublicKeyIdentifierLength,
Packit 8681c6
                           unsigned char *RSAPublicKeyIdentifier,
Packit 8681c6
                           long *DESKeyBLockLength,
Packit 8681c6
                           unsigned char *DESKeyBlock,
Packit 8681c6
                           long *RSAOAEPBlockLength,
Packit 8681c6
                           unsigned char *RSAOAEPBlock,
Packit 8681c6
                           unsigned char *ChainingVector,
Packit 8681c6
                           unsigned char *DESEncryptedDataBlock);
Packit 8681c6
Packit 8681c6
/* Decompose SET Block */
Packit 8681c6
typedef void (*CSNDSBD_t) (long *ReturnCode,
Packit 8681c6
                           long *ReasonCode,
Packit 8681c6
                           long *ExitDataLength,
Packit 8681c6
                           unsigned char *ExitData,
Packit 8681c6
                           long *RuleArrayCount,
Packit 8681c6
                           unsigned char *RuleArray,
Packit 8681c6
                           long *RSAOAEPBlockLength,
Packit 8681c6
                           unsigned char *RSAOAEPBlock,
Packit 8681c6
                           long *DESEncryptedDataBlockLength,
Packit 8681c6
                           unsigned char *DESEncryptedDataBlock,
Packit 8681c6
                           unsigned char *InitializationVector,
Packit 8681c6
                           long *RSAPrivateKeyIdentifierLength,
Packit 8681c6
                           unsigned char *RSAPrivateKeyIdentifier,
Packit 8681c6
                           long *DESKeyBLockLength,
Packit 8681c6
                           unsigned char *DESKeyBlock,
Packit 8681c6
                           unsigned char *BlockContentsIdentifier,
Packit 8681c6
                           long *XDataStringLength,
Packit 8681c6
                           unsigned char *XDataString,
Packit 8681c6
                           unsigned char *ChainingVector,
Packit 8681c6
                           unsigned char *DataBlock,
Packit 8681c6
                           long *HashBlockLength, unsigned char *HashBlock);
Packit 8681c6
Packit 8681c6
/* Access Control Logon */
Packit 8681c6
typedef void (*CSUALCT_t) (long *return_code,
Packit 8681c6
                           long *reason_code,
Packit 8681c6
                           long *exit_data_length,
Packit 8681c6
                           unsigned char *exit_data,
Packit 8681c6
                           long *rule_array_count,
Packit 8681c6
                           unsigned char *rule_array,
Packit 8681c6
                           unsigned char *user_id,
Packit 8681c6
                           long *auth_parm_length,
Packit 8681c6
                           unsigned char *auth_parm,
Packit 8681c6
                           long *auth_data_length, unsigned char *auth_data);
Packit 8681c6
Packit 8681c6
/* Access Control Maintenance */
Packit 8681c6
typedef void (*CSUAACM_t) (long *return_code,
Packit 8681c6
                           long *reason_code,
Packit 8681c6
                           long *exit_data_length,
Packit 8681c6
                           unsigned char *exit_data,
Packit 8681c6
                           long *rule_array_count,
Packit 8681c6
                           unsigned char *rule_array,
Packit 8681c6
                           unsigned char *name,
Packit 8681c6
                           long *output_data_length,
Packit 8681c6
                           unsigned char *output_data);
Packit 8681c6
Packit 8681c6
/* Access Control Initialization */
Packit 8681c6
typedef void (*CSUAACI_t) (long *return_code,
Packit 8681c6
                           long *reason_code,
Packit 8681c6
                           long *exit_data_length,
Packit 8681c6
                           unsigned char *exit_data,
Packit 8681c6
                           long *rule_array_count,
Packit 8681c6
                           unsigned char *rule_array,
Packit 8681c6
                           long *verb_data_1_length,
Packit 8681c6
                           unsigned char *verb_data_1,
Packit 8681c6
                           long *verb_data_2_length,
Packit 8681c6
                           unsigned char *verb_data_2);
Packit 8681c6
Packit 8681c6
Packit 8681c6
/* PKA Public Key Hash Register */
Packit 8681c6
typedef void (*CSNDPKH_t) (long *return_code,
Packit 8681c6
                           long *reason_code,
Packit 8681c6
                           long *exit_data_length,
Packit 8681c6
                           unsigned char *exit_data,
Packit 8681c6
                           long *rule_array_count,
Packit 8681c6
                           unsigned char *rule_array,
Packit 8681c6
                           unsigned char *public_key_name,
Packit 8681c6
                           long *hash_data_length, unsigned char *hash_data);
Packit 8681c6
Packit 8681c6
Packit 8681c6
/* PKA Public Key Register */
Packit 8681c6
typedef void (*CSNDPKR_t) (long *return_code,
Packit 8681c6
                           long *reason_code,
Packit 8681c6
                           long *exit_data_length,
Packit 8681c6
                           unsigned char *exit_data,
Packit 8681c6
                           long *rule_array_count,
Packit 8681c6
                           unsigned char *rule_array,
Packit 8681c6
                           unsigned char *public_key_name,
Packit 8681c6
                           long *public_key_certificate_length,
Packit 8681c6
                           unsigned char *public_key_certificate);
Packit 8681c6
Packit 8681c6
Packit 8681c6
/* Master Key Distribution */
Packit 8681c6
typedef void (*CSUAMKD_t) (long *return_code,
Packit 8681c6
                           long *reason_code,
Packit 8681c6
                           long *exit_data_length,
Packit 8681c6
                           unsigned char *exit_data,
Packit 8681c6
                           long *rule_array_count,
Packit 8681c6
                           unsigned char *rule_array,
Packit 8681c6
                           long *share_index,
Packit 8681c6
                           unsigned char *private_key_name,
Packit 8681c6
                           unsigned char *certifying_key_name,
Packit 8681c6
                           long *certificate_length,
Packit 8681c6
                           unsigned char *certificate,
Packit 8681c6
                           long *clone_info_encrypting_key_length,
Packit 8681c6
                           unsigned char *clone_info_encrypting_key,
Packit 8681c6
                           long *clone_info_length, unsigned char *clone_info);
Packit 8681c6
Packit 8681c6
Packit 8681c6
/* Retained Key Delete */
Packit 8681c6
typedef void (*CSNDRKD_t) (long *return_code,
Packit 8681c6
                           long *reason_code,
Packit 8681c6
                           long *exit_data_length,
Packit 8681c6
                           unsigned char *exit_data,
Packit 8681c6
                           long *rule_array_count,
Packit 8681c6
                           unsigned char *rule_array, unsigned char *key_label);
Packit 8681c6
Packit 8681c6
Packit 8681c6
/* Retained Key List */
Packit 8681c6
typedef void (*CSNDRKL_t) (long *return_code,
Packit 8681c6
                           long *reason_code,
Packit 8681c6
                           long *exit_data_length,
Packit 8681c6
                           unsigned char *exit_data,
Packit 8681c6
                           long *rule_array_count,
Packit 8681c6
                           unsigned char *rule_array,
Packit 8681c6
                           unsigned char *key_label_mask,
Packit 8681c6
                           long *retained_keys_count,
Packit 8681c6
                           long *key_labels_count, unsigned char *key_labels);
Packit 8681c6
Packit 8681c6
/* Symmetric Key Generate */
Packit 8681c6
typedef void (*CSNDSYG_t) (long *return_code,
Packit 8681c6
                           long *reason_code,
Packit 8681c6
                           long *exit_data_length,
Packit 8681c6
                           unsigned char *exit_data,
Packit 8681c6
                           long *rule_array_count,
Packit 8681c6
                           unsigned char *rule_array,
Packit 8681c6
                           unsigned char *key_encrypting_key,
Packit 8681c6
                           long *rsapub_key_length,
Packit 8681c6
                           unsigned char *rsapub_key,
Packit 8681c6
                           long *locenc_key_length,
Packit 8681c6
                           unsigned char *locenc_key,
Packit 8681c6
                           long *rsaenc_key_length, unsigned char *rsaenc_key);
Packit 8681c6
Packit 8681c6
Packit 8681c6
/* Encrypted PIN Translate */
Packit 8681c6
typedef void (*CSNBPTR_t) (long *return_code,
Packit 8681c6
                           long *reason_code,
Packit 8681c6
                           long *exit_data_length,
Packit 8681c6
                           unsigned char *exit_data,
Packit 8681c6
                           unsigned char *in_PIN_enc_key_id,
Packit 8681c6
                           unsigned char *out_PIN_enc_key_id,
Packit 8681c6
                           unsigned char *in_PIN_profile,
Packit 8681c6
                           unsigned char *in_PAN_data,
Packit 8681c6
                           unsigned char *in_PIN_blk,
Packit 8681c6
                           long *rule_array_count,
Packit 8681c6
                           unsigned char *rule_array,
Packit 8681c6
                           unsigned char *out_PIN_profile,
Packit 8681c6
                           unsigned char *out_PAN_data,
Packit 8681c6
                           long *sequence_number, unsigned char *put_PIN_blk);
Packit 8681c6
Packit 8681c6
Packit 8681c6
/* Clear PIN Encrypt */
Packit 8681c6
typedef void (*CSNBCPE_t) (long *return_code,
Packit 8681c6
                           long *reason_code,
Packit 8681c6
                           long *exit_data_length,
Packit 8681c6
                           unsigned char *exit_data,
Packit 8681c6
                           unsigned char *PIN_enc_key_id,
Packit 8681c6
                           long *rule_array_count,
Packit 8681c6
                           unsigned char *rule_array,
Packit 8681c6
                           unsigned char *clear_PIN,
Packit 8681c6
                           unsigned char *PIN_profile,
Packit 8681c6
                           unsigned char *PAN_data,
Packit 8681c6
                           long *sequence_number,
Packit 8681c6
                           unsigned char *encrypted_PIN_blk);
Packit 8681c6
Packit 8681c6
Packit 8681c6
/* Clear PIN Generate Alternate */
Packit 8681c6
typedef void (*CSNBCPA_t) (long *return_code,
Packit 8681c6
                           long *reason_code,
Packit 8681c6
                           long *exit_data_length,
Packit 8681c6
                           unsigned char *exit_data,
Packit 8681c6
                           unsigned char *PIN_enc_key_id,
Packit 8681c6
                           unsigned char *PIN_gen_key_id,
Packit 8681c6
                           unsigned char *PIN_profile,
Packit 8681c6
                           unsigned char *PAN_data,
Packit 8681c6
                           unsigned char *encrypted_PIN_blk,
Packit 8681c6
                           long *rule_array_count,
Packit 8681c6
                           unsigned char *rule_array,
Packit 8681c6
                           long *PIN_check_length,
Packit 8681c6
                           unsigned char *data_array,
Packit 8681c6
                           unsigned char *returned_result);
Packit 8681c6
Packit 8681c6
Packit 8681c6
/* Clear PIN Generate */
Packit 8681c6
typedef void (*CSNBPGN_t) (long *return_code,
Packit 8681c6
                           long *reason_code,
Packit 8681c6
                           long *exit_data_length,
Packit 8681c6
                           unsigned char *exit_data,
Packit 8681c6
                           unsigned char *PIN_gen_key_id,
Packit 8681c6
                           long *rule_array_count,
Packit 8681c6
                           unsigned char *rule_array,
Packit 8681c6
                           long *PIN_length,
Packit 8681c6
                           long *PIN_check_length,
Packit 8681c6
                           unsigned char *data_array,
Packit 8681c6
                           unsigned char *returned_result);
Packit 8681c6
Packit 8681c6
Packit 8681c6
/* Encrypted PIN Verify */
Packit 8681c6
typedef void (*CSNBPVR_t) (long *return_code,
Packit 8681c6
                           long *reason_code,
Packit 8681c6
                           long *exit_data_length,
Packit 8681c6
                           unsigned char *exit_data,
Packit 8681c6
                           unsigned char *PIN_enc_key_id,
Packit 8681c6
                           unsigned char *PIN_ver_key_id,
Packit 8681c6
                           unsigned char *PIN_profile,
Packit 8681c6
                           unsigned char *PAN_data,
Packit 8681c6
                           unsigned char *encrypted_PIN_blk,
Packit 8681c6
                           long *rule_array_count,
Packit 8681c6
                           unsigned char *rule_array,
Packit 8681c6
                           long *PIN_check_length, unsigned char *data_array);
Packit 8681c6
Packit 8681c6
/* Diversified Key Generate */
Packit 8681c6
typedef void (*CSNBDKG_t) (long *return_code,
Packit 8681c6
                           long *reason_code,
Packit 8681c6
                           long *exit_data_length,
Packit 8681c6
                           unsigned char *exit_data,
Packit 8681c6
                           long *rule_array_count,
Packit 8681c6
                           unsigned char *rule_array,
Packit 8681c6
                           unsigned char *generating_key_id,
Packit 8681c6
                           long *data_length,
Packit 8681c6
                           unsigned char *data,
Packit 8681c6
                           unsigned char *decrypting_key_id,
Packit 8681c6
                           unsigned char *generated_key_id);
Packit 8681c6
Packit 8681c6
/* Encrypted PIN Generate */
Packit 8681c6
typedef void (*CSNBEPG_t) (long *return_code,
Packit 8681c6
                           long *reason_code,
Packit 8681c6
                           long *exit_data_length,
Packit 8681c6
                           unsigned char *exit_data,
Packit 8681c6
                           unsigned char *PIN_gen_key_id,
Packit 8681c6
                           unsigned char *outPIN_enc_key_id,
Packit 8681c6
                           long *rule_array_count,
Packit 8681c6
                           unsigned char *rule_array,
Packit 8681c6
                           long *PIN_length,
Packit 8681c6
                           unsigned char *data_array,
Packit 8681c6
                           unsigned char *outPIN_profile,
Packit 8681c6
                           unsigned char *PAN_data,
Packit 8681c6
                           long *sequence_number,
Packit 8681c6
                           unsigned char *encrypted_PIN_blk);
Packit 8681c6
Packit 8681c6
/* Cryptographic Variable Encipher */
Packit 8681c6
typedef void (*CSNBCVE_t) (long *return_code,
Packit 8681c6
                           long *reason_code,
Packit 8681c6
                           long *exit_data_length,
Packit 8681c6
                           unsigned char *exit_data,
Packit 8681c6
                           unsigned char *cvarenc_key_id,
Packit 8681c6
                           long *text_length,
Packit 8681c6
                           unsigned char *plain_text,
Packit 8681c6
                           unsigned char *init_vector,
Packit 8681c6
                           unsigned char *cipher_text);
Packit 8681c6
Packit 8681c6
/* CVV Generate */
Packit 8681c6
typedef void (*CSNBCSG_t) (long *return_code,
Packit 8681c6
                           long *reason_code,
Packit 8681c6
                           long *exit_data_length,
Packit 8681c6
                           unsigned char *exit_data,
Packit 8681c6
                           long *rule_array_count,
Packit 8681c6
                           unsigned char *rule_array,
Packit 8681c6
                           unsigned char *PAN_data,
Packit 8681c6
                           unsigned char *expiration_date,
Packit 8681c6
                           unsigned char *service_code,
Packit 8681c6
                           unsigned char *key_a_id,
Packit 8681c6
                           unsigned char *key_b_id,
Packit 8681c6
                           unsigned char *generated_cvv);
Packit 8681c6
Packit 8681c6
/* CVV Verify */
Packit 8681c6
typedef void (*CSNBCSV_t) (long *return_code,
Packit 8681c6
                           long *reason_code,
Packit 8681c6
                           long *exit_data_length,
Packit 8681c6
                           unsigned char *exit_data,
Packit 8681c6
                           long *rule_array_count,
Packit 8681c6
                           unsigned char *rule_array,
Packit 8681c6
                           unsigned char *PAN_data,
Packit 8681c6
                           unsigned char *expiration_date,
Packit 8681c6
                           unsigned char *service_code,
Packit 8681c6
                           unsigned char *key_a_id,
Packit 8681c6
                           unsigned char *key_b_id,
Packit 8681c6
                           unsigned char *generated_cvv);
Packit 8681c6
Packit 8681c6
/* Control Vector Generate */
Packit 8681c6
typedef void (*CSNBCVG_t) (long *return_code,
Packit 8681c6
                           long *reason_code,
Packit 8681c6
                           long *exit_data_length,
Packit 8681c6
                           unsigned char *exit_data,
Packit 8681c6
                           unsigned char *key_type,
Packit 8681c6
                           long *rule_array_count,
Packit 8681c6
                           unsigned char *rule_array,
Packit 8681c6
                           unsigned char *reserved_field_1,
Packit 8681c6
                           unsigned char *control_vector);
Packit 8681c6
Packit 8681c6
/* Key Token Parse */
Packit 8681c6
typedef void (*CSNBKTP_t) (long *return_code,
Packit 8681c6
                           long *reason_code,
Packit 8681c6
                           long *exit_data_length,
Packit 8681c6
                           unsigned char *exit_data,
Packit 8681c6
                           unsigned char *key_token,
Packit 8681c6
                           unsigned char *key_type,
Packit 8681c6
                           long *rule_array_count,
Packit 8681c6
                           unsigned char *rule_array,
Packit 8681c6
                           unsigned char *key_value,
Packit 8681c6
                           void *master_key_verification_pattern_v03,
Packit 8681c6
                           long *reserved_field_1,
Packit 8681c6
                           unsigned char *reserved_field_2,
Packit 8681c6
                           unsigned char *control_vector,
Packit 8681c6
                           unsigned char *reserved_field_3,
Packit 8681c6
                           long *reserved_field_4,
Packit 8681c6
                           unsigned char *reserved_field_5,
Packit 8681c6
                           unsigned char *master_key_verification_pattern_v00);
Packit 8681c6
Packit 8681c6
/* PKA Encrypt */
Packit 8681c6
typedef void (*CSNDPKE_t) (long *return_code,
Packit 8681c6
                           long *reason_code,
Packit 8681c6
                           long *exit_data_length,
Packit 8681c6
                           unsigned char *exit_data,
Packit 8681c6
                           long *rule_array_count,
Packit 8681c6
                           unsigned char *rule_array,
Packit 8681c6
                           long *key_value_length,
Packit 8681c6
                           unsigned char *key_value,
Packit 8681c6
                           long *data_struct_length,
Packit 8681c6
                           unsigned char *data_struct,
Packit 8681c6
                           long *RSA_public_key_length,
Packit 8681c6
                           unsigned char *RSA_public_key,
Packit 8681c6
                           long *RSA_encipher_length,
Packit 8681c6
                           unsigned char *RSA_encipher);
Packit 8681c6
Packit 8681c6
/* PKA Decrypt */
Packit 8681c6
typedef void (*CSNDPKD_t) (long *return_code,
Packit 8681c6
                           long *reason_code,
Packit 8681c6
                           long *exit_data_length,
Packit 8681c6
                           unsigned char *exit_data,
Packit 8681c6
                           long *rule_array_count,
Packit 8681c6
                           unsigned char *rule_array,
Packit 8681c6
                           long *enciphered_key_length,
Packit 8681c6
                           unsigned char *enciphered_key,
Packit 8681c6
                           long *data_struct_length,
Packit 8681c6
                           unsigned char *data_struct,
Packit 8681c6
                           long *RSA_private_key_length,
Packit 8681c6
                           unsigned char *RSA_private_key,
Packit 8681c6
                           long *key_value_length, unsigned char *key_value);
Packit 8681c6
Packit 8681c6
/* Prohibit Export */
Packit 8681c6
typedef void (*CSNBPEX_t) (long *return_code,
Packit 8681c6
                           long *reason_code,
Packit 8681c6
                           long *exit_data_length,
Packit 8681c6
                           unsigned char *exit_data,
Packit 8681c6
                           unsigned char *key_identifier);
Packit 8681c6
Packit 8681c6
/* Prohibit Export Extended */
Packit 8681c6
typedef void (*CSNBPEXX_t) (long *return_code,
Packit 8681c6
                            long *reason_code,
Packit 8681c6
                            long *exit_data_length,
Packit 8681c6
                            unsigned char *exit_data,
Packit 8681c6
                            unsigned char *Source_key_token,
Packit 8681c6
                            unsigned char *Kek_key_identifier);
Packit 8681c6
Packit 8681c6
/* Random Number/Known Answer Test */
Packit 8681c6
typedef void (*CSUARNT_t) (long *return_code,
Packit 8681c6
                           long *reason_code,
Packit 8681c6
                           long *exit_data_length,
Packit 8681c6
                           unsigned char *exit_data,
Packit 8681c6
                           long *rule_array_count, unsigned char *rule_array);
Packit 8681c6
Packit 8681c6
/* Control Vector Translate */
Packit 8681c6
typedef void (*CSNBCVT_t) (long *return_code,
Packit 8681c6
                           long *reason_code,
Packit 8681c6
                           long *exit_data_length,
Packit 8681c6
                           unsigned char *exit_data,
Packit 8681c6
                           unsigned char *kek_key_identifier,
Packit 8681c6
                           unsigned char *source_key_token,
Packit 8681c6
                           unsigned char *array_key_left,
Packit 8681c6
                           unsigned char *mask_array_left,
Packit 8681c6
                           unsigned char *array_key_right,
Packit 8681c6
                           unsigned char *mask_array_right,
Packit 8681c6
                           long *rule_array_count,
Packit 8681c6
                           unsigned char *rule_array,
Packit 8681c6
                           unsigned char *target_key_token);
Packit 8681c6
Packit 8681c6
/* MDC Generate */
Packit 8681c6
typedef void (*CSNBMDG_t) (long *return_code,
Packit 8681c6
                           long *reason_code,
Packit 8681c6
                           long *exit_data_length,
Packit 8681c6
                           unsigned char *exit_data,
Packit 8681c6
                           long *text_length,
Packit 8681c6
                           unsigned char *text_data,
Packit 8681c6
                           long *rule_array_count,
Packit 8681c6
                           unsigned char *rule_array,
Packit 8681c6
                           unsigned char *chaining_vector, unsigned char *MDC);
Packit 8681c6
Packit 8681c6
/* Cryptographic Resource Allocate */
Packit 8681c6
typedef void (*CSUACRA_t) (long *return_code,
Packit 8681c6
                           long *reason_code,
Packit 8681c6
                           long *exit_data_length,
Packit 8681c6
                           unsigned char *exit_data,
Packit 8681c6
                           long *rule_array_count,
Packit 8681c6
                           unsigned char *rule_array,
Packit 8681c6
                           long *resource_name_length,
Packit 8681c6
                           unsigned char *resource_name);
Packit 8681c6
Packit 8681c6
/* Cryptographic Resource Deallocate */
Packit 8681c6
typedef void (*CSUACRD_t) (long *return_code,
Packit 8681c6
                           long *reason_code,
Packit 8681c6
                           long *exit_data_length,
Packit 8681c6
                           unsigned char *exit_data,
Packit 8681c6
                           long *rule_array_count,
Packit 8681c6
                           unsigned char *rule_array,
Packit 8681c6
                           long *resource_name_length,
Packit 8681c6
                           unsigned char *resource_name);
Packit 8681c6
Packit 8681c6
/* Transaction Validation */
Packit 8681c6
typedef void (*CSNBTRV_t) (long *return_code,
Packit 8681c6
                           long *reason_code,
Packit 8681c6
                           long *exit_data_length,
Packit 8681c6
                           unsigned char *exit_data,
Packit 8681c6
                           long *rule_array_count,
Packit 8681c6
                           unsigned char *rule_array,
Packit 8681c6
                           long *transaction_key_length,
Packit 8681c6
                           unsigned char *transaction_key,
Packit 8681c6
                           long *transaction_info_length,
Packit 8681c6
                           unsigned char *transaction_info,
Packit 8681c6
                           long *validation_values_length,
Packit 8681c6
                           unsigned char *validation_values);
Packit 8681c6
Packit 8681c6
/* Secure Messaging for Keys */
Packit 8681c6
typedef void (*CSNBSKY_t) (long *return_code,
Packit 8681c6
                           long *reason_code,
Packit 8681c6
                           long *exit_data_length,
Packit 8681c6
                           unsigned char *exit_data,
Packit 8681c6
                           long *rule_array_count,
Packit 8681c6
                           unsigned char *rule_array,
Packit 8681c6
                           unsigned char *input_key_indentifier,
Packit 8681c6
                           unsigned char *key_encrypting_key,
Packit 8681c6
                           unsigned char *session_key,
Packit 8681c6
                           long *text_length,
Packit 8681c6
                           unsigned char *clear_text,
Packit 8681c6
                           unsigned char *initialization_vector,
Packit 8681c6
                           long *key_offset,
Packit 8681c6
                           long *key_offset_field_length,
Packit 8681c6
                           unsigned char *cipher_text,
Packit 8681c6
                           unsigned char *output_chaining_value);
Packit 8681c6
Packit 8681c6
/* Secure Messaging for PINs */
Packit 8681c6
typedef void (*CSNBSPN_t) (long *return_code,
Packit 8681c6
                           long *reason_code,
Packit 8681c6
                           long *exit_data_length,
Packit 8681c6
                           unsigned char *exit_data,
Packit 8681c6
                           long *rule_array_count,
Packit 8681c6
                           unsigned char *rule_array,
Packit 8681c6
                           unsigned char *in_PIN_blk,
Packit 8681c6
                           unsigned char *in_PIN_enc_key_id,
Packit 8681c6
                           unsigned char *in_PIN_profile,
Packit 8681c6
                           unsigned char *in_PAN_data,
Packit 8681c6
                           unsigned char *secmsg_key,
Packit 8681c6
                           unsigned char *out_PIN_profile,
Packit 8681c6
                           unsigned char *out_PAN_data,
Packit 8681c6
                           long *text_length,
Packit 8681c6
                           unsigned char *clear_text,
Packit 8681c6
                           unsigned char *initialization_vector,
Packit 8681c6
                           long *PIN_offset,
Packit 8681c6
                           long *PIN_offset_field_length,
Packit 8681c6
                           unsigned char *cipher_text,
Packit 8681c6
                           unsigned char *output_chaining_value);
Packit 8681c6
Packit 8681c6
/* PIN Change/Unblock */
Packit 8681c6
typedef void (*CSNBPCU_t) (long *return_code,
Packit 8681c6
                           long *reason_code,
Packit 8681c6
                           long *exit_data_length,
Packit 8681c6
                           unsigned char *exit_data,
Packit 8681c6
                           long *rule_array_count,
Packit 8681c6
                           unsigned char *rule_array,
Packit 8681c6
                           long *authenticationMasterKeyLength,
Packit 8681c6
                           unsigned char *authenticationMasterKey,
Packit 8681c6
                           long *issuerMasterKeyLength,
Packit 8681c6
                           unsigned char *issuerMasterKey,
Packit 8681c6
                           long *keyGenerationDataLength,
Packit 8681c6
                           unsigned char *keyGenerationData,
Packit 8681c6
                           long *newRefPinKeyLength,
Packit 8681c6
                           unsigned char *newRefPinKey,
Packit 8681c6
                           unsigned char *newRefPinBlock,
Packit 8681c6
                           unsigned char *newRefPinProfile,
Packit 8681c6
                           unsigned char *newRefPanData,
Packit 8681c6
                           long *currentRefPinKeyLength,
Packit 8681c6
                           unsigned char *currentRefPinKey,
Packit 8681c6
                           unsigned char *currentRefPinBlock,
Packit 8681c6
                           unsigned char *currentRefPinProfile,
Packit 8681c6
                           unsigned char *currentRefPanData,
Packit 8681c6
                           long *outputPinDataLength,
Packit 8681c6
                           unsigned char *outputPinData,
Packit 8681c6
                           unsigned char *outputPinProfile,
Packit 8681c6
                           long *outputPinMessageLength,
Packit 8681c6
                           unsigned char *outputPinMessage);
Packit 8681c6
Packit 8681c6
/* PCF/CUSP Key Conversion */
Packit 8681c6
typedef void (*CSUAPCV_t) (long *return_code,
Packit 8681c6
                           long *reason_code,
Packit 8681c6
                           long *exit_data_length,
Packit 8681c6
                           unsigned char *exit_data,
Packit 8681c6
                           long *rule_array_count,
Packit 8681c6
                           unsigned char *rule_array,
Packit 8681c6
                           long *KEK_key_identifier_length,
Packit 8681c6
                           unsigned char *KEK_key_identifier,
Packit 8681c6
                           long *PCF_key_list_length,
Packit 8681c6
                           unsigned char *PCF_key_list,
Packit 8681c6
                           long *output_key_list_length,
Packit 8681c6
                           unsigned char *output_key_list);
Packit 8681c6
Packit 8681c6
/*Process Request Block*/
Packit 8681c6
typedef void (*CSUAPRB_t) (long *pReturnCode,
Packit 8681c6
                           long *pReasonCode,
Packit 8681c6
                           long *pExitDataLength,
Packit 8681c6
                           unsigned char *pExitData,
Packit 8681c6
                           long *pRuleArrayCount,
Packit 8681c6
                           unsigned char *pRuleArray,
Packit 8681c6
                           long *pSourceLength,
Packit 8681c6
                           unsigned char *pSource,
Packit 8681c6
                           long *pOutFileNameLength,
Packit 8681c6
                           unsigned char *pOutFileName,
Packit 8681c6
                           long *pReplyLength, unsigned char *pReply);
Packit 8681c6
Packit 8681c6
/* Diffie-Hellman Key Load */
Packit 8681c6
typedef void (*CSUADHK_t) (long *ReturnCode,
Packit 8681c6
                           long *ReasonCode,
Packit 8681c6
                           long *ExitDataLength,
Packit 8681c6
                           unsigned char *ExitData,
Packit 8681c6
                           long *RuleArrayCount,
Packit 8681c6
                           unsigned char *RuleArray,
Packit 8681c6
                           unsigned char *DHModulus,
Packit 8681c6
                           unsigned char *DHGenerator,
Packit 8681c6
                           unsigned char *DHKeyPart,
Packit 8681c6
                           long *TransportKeyHashLength,
Packit 8681c6
                           unsigned char *TransportKeyHash,
Packit 8681c6
                           unsigned char *Reserved1,
Packit 8681c6
                           unsigned char *Reserved2,
Packit 8681c6
                           unsigned char *Reserved3, unsigned char *Reserved4);
Packit 8681c6
Packit 8681c6
/* Diffie-Hellman Key Query */
Packit 8681c6
typedef void (*CSUADHQ_t) (long *ReturnCode,
Packit 8681c6
                           long *ReasonCode,
Packit 8681c6
                           long *ExitDataLength,
Packit 8681c6
                           unsigned char *ExitData,
Packit 8681c6
                           long *RuleArrayCount,
Packit 8681c6
                           unsigned char *RuleArray,
Packit 8681c6
                           unsigned char *DHModulus,
Packit 8681c6
                           unsigned char *DHGenerator,
Packit 8681c6
                           unsigned char *DHKeyPart,
Packit 8681c6
                           long *TransportKeyHashLength,
Packit 8681c6
                           unsigned char *TransportKeyHash,
Packit 8681c6
                           unsigned char *Reserved1,
Packit 8681c6
                           unsigned char *Reserved2,
Packit 8681c6
                           unsigned char *Reserved3, unsigned char *Reserved4);
Packit 8681c6
Packit 8681c6
/* Trusted Block Create */
Packit 8681c6
typedef void (*CSNDTBC_t) (long *return_code,
Packit 8681c6
                           long *reason_code,
Packit 8681c6
                           long *exit_data_length,
Packit 8681c6
                           unsigned char *exit_data,
Packit 8681c6
                           long *rule_array_count,
Packit 8681c6
                           unsigned char *rule_array,
Packit 8681c6
                           long *input_block_length,
Packit 8681c6
                           unsigned char *input_block_identifier,
Packit 8681c6
                           unsigned char *transport_key_identifier,
Packit 8681c6
                           long *trusted_blokc_length,
Packit 8681c6
                           unsigned char *trusted_blokc_identifier);
Packit 8681c6
Packit 8681c6
/* Remote Key Export */
Packit 8681c6
typedef void (*CSNDRKX_t) (long *return_code,
Packit 8681c6
                           long *reason_code,
Packit 8681c6
                           long *exit_data_length,
Packit 8681c6
                           unsigned char *exit_data,
Packit 8681c6
                           long *rule_array_count,
Packit 8681c6
                           unsigned char *rule_array,
Packit 8681c6
                           long *trusted_block_length,
Packit 8681c6
                           unsigned char *trusted_block_identifier,
Packit 8681c6
                           long *certificate_length,
Packit 8681c6
                           unsigned char *certificate,
Packit 8681c6
                           long *certificate_parms_length,
Packit 8681c6
                           unsigned char *certificate_parms,
Packit 8681c6
                           long *transport_key_length,
Packit 8681c6
                           unsigned char *transport_key_identifier,
Packit 8681c6
                           long *rule_id_length,
Packit 8681c6
                           unsigned char *rule_id,
Packit 8681c6
                           long *export_key_kek_length,
Packit 8681c6
                           unsigned char *export_key_kek_identifier,
Packit 8681c6
                           long *export_key_length,
Packit 8681c6
                           unsigned char *export_key_identifier,
Packit 8681c6
                           long *asym_encrypted_key_length,
Packit 8681c6
                           unsigned char *asym_encrypted_key,
Packit 8681c6
                           long *sym_encrypted_key_length,
Packit 8681c6
                           unsigned char *sym_encrypted_key,
Packit 8681c6
                           long *extra_data_length,
Packit 8681c6
                           unsigned char *extra_data,
Packit 8681c6
                           long *key_check_parameters_length,
Packit 8681c6
                           unsigned char *key_check_parameters,
Packit 8681c6
                           long *key_check_length,
Packit 8681c6
                           unsigned char *key_check_value);
Packit 8681c6
Packit 8681c6
/* Key Encryption Translate */
Packit 8681c6
typedef void (*CSNBKET_t) (long *return_code,
Packit 8681c6
                           long *reason_code,
Packit 8681c6
                           long *exit_data_length,
Packit 8681c6
                           unsigned char *exit_data,
Packit 8681c6
                           long *rule_array_count,
Packit 8681c6
                           unsigned char *rule_array,
Packit 8681c6
                           long *kek_identifier_length,
Packit 8681c6
                           unsigned char *kek_identifier,
Packit 8681c6
                           long *key_in_length,
Packit 8681c6
                           unsigned char *key_in,
Packit 8681c6
                           long *key_out_length, unsigned char *key_out);
Packit 8681c6
Packit 8681c6
Packit 8681c6
/* HMAC Generate */
Packit 8681c6
typedef void (*CSNBHMG_t) (long *return_code,
Packit 8681c6
                           long *reason_code,
Packit 8681c6
                           long *exit_data_length,
Packit 8681c6
                           unsigned char *exit_data,
Packit 8681c6
                           long *rule_array_count,
Packit 8681c6
                           unsigned char *rule_array,
Packit 8681c6
                           long *key_identifier_length,
Packit 8681c6
                           unsigned char *key_identifier,
Packit 8681c6
                           long *message_text_length,
Packit 8681c6
                           unsigned char *message_text,
Packit 8681c6
                           long *chaining_vector_length,
Packit 8681c6
                           unsigned char *chaining_vector,
Packit 8681c6
                           long *MAC_length, unsigned char *MAC_text);
Packit 8681c6
Packit 8681c6
/* HMAC Verify */
Packit 8681c6
typedef void (*CSNBHMV_t) (long *return_code,
Packit 8681c6
                           long *reason_code,
Packit 8681c6
                           long *exit_data_length,
Packit 8681c6
                           unsigned char *exit_data,
Packit 8681c6
                           long *rule_array_count,
Packit 8681c6
                           unsigned char *rule_array,
Packit 8681c6
                           long *key_identifier_length,
Packit 8681c6
                           unsigned char *key_identifier,
Packit 8681c6
                           long *message_text_length,
Packit 8681c6
                           unsigned char *message_text,
Packit 8681c6
                           long *chaining_vector_length,
Packit 8681c6
                           unsigned char *chaining_vector,
Packit 8681c6
                           long *MAC_length, unsigned char *MAC_text);
Packit Service 8aa27d
Packit Service 8aa27d
/* Cipher Text Translate 2 */
Packit Service 8aa27d
typedef void (*CSNBCTT2_t)(long *return_code,
Packit Service 8aa27d
                           long *reason_code,
Packit Service 8aa27d
                           long *exit_data_length,
Packit Service 8aa27d
                           unsigned char *exit_data,
Packit Service 8aa27d
                           long *rule_array_count,
Packit Service 8aa27d
                           unsigned char *rule_array,
Packit Service 8aa27d
                           long *key_identifier_in_length,
Packit Service 8aa27d
                           unsigned char *key_identifier_in,
Packit Service 8aa27d
                           long *init_vector_in_length,
Packit Service 8aa27d
                           unsigned char *init_vector_in,
Packit Service 8aa27d
                           long *cipher_text_in_length,
Packit Service 8aa27d
                           unsigned char *cipher_text_in,
Packit Service 8aa27d
                           long *chaining_vector_length,
Packit Service 8aa27d
                           unsigned char *chaining_vector,
Packit Service 8aa27d
                           long *key_identifier_out_length,
Packit Service 8aa27d
                           unsigned char *key_identifier_out,
Packit Service 8aa27d
                           long *init_vector_out_length,
Packit Service 8aa27d
                           unsigned char *init_vector_out,
Packit Service 8aa27d
                           long *cipher_text_out_length,
Packit Service 8aa27d
                           unsigned char *cipher_text_out,
Packit Service 8aa27d
                           long *reserved1_length,
Packit Service 8aa27d
                           unsigned long *reserved1,
Packit Service 8aa27d
                           long *reserved2_length,
Packit Service 8aa27d
                           unsigned char *reserved2);