require '_h2ph_pre.ph';

unless(defined(&HEADER_DSA_H)) {
    eval 'sub HEADER_DSA_H () {1;}' unless defined(&HEADER_DSA_H);
    if(defined(&NO_DSA)) {
	die("DSA\ is\ disabled\.");
    }
    unless(defined(&NO_BIO)) {
	require 'ssl/bio.ph';
    }
    require 'ssl/bn.ph';
    require 'ssl/crypto.ph';
    unless(defined(&NO_DH)) {
	require 'ssl/dh.ph';
    }
    eval 'sub DSA_FLAG_CACHE_MONT_P () {0x01;}' unless defined(&DSA_FLAG_CACHE_MONT_P);
    if(defined(&__cplusplus)) {
    }
    if(0) {
    } else {
    }
    eval 'sub DSAparams_dup {
        local($x) = @_;
	    eval q( &ASN1_dup((\'int\' (*)()) &i2d_DSAparams, (\'char\' *(*)()) &d2i_DSAparams,($x)));
    }' unless defined(&DSAparams_dup);
    eval 'sub d2i_DSAparams_fp {
        local($fp,$x) = @_;
	    eval q( &ASN1_d2i_fp((\'char\' *(*)()) &DSA_new, (\'char\' *(*)()) &d2i_DSAparams,,($x)));
    }' unless defined(&d2i_DSAparams_fp);
    eval 'sub i2d_DSAparams_fp {
        local($fp,$x) = @_;
	    eval q( &ASN1_i2d_fp( &i2d_DSAparams,, ($x)));
    }' unless defined(&i2d_DSAparams_fp);
    eval 'sub d2i_DSAparams_bio {
        local($bp,$x) = @_;
	    eval q( &ASN1_d2i_bio((\'char\' *(*)()) &DSA_new, (\'char\' *(*)()) &d2i_DSAparams,,($x)));
    }' unless defined(&d2i_DSAparams_bio);
    eval 'sub i2d_DSAparams_bio {
        local($bp,$x) = @_;
	    eval q( &ASN1_i2d_bio( &i2d_DSAparams,, ($x)));
    }' unless defined(&i2d_DSAparams_bio);
    if(0) {
    } else {
    }
    if(0) {
    } else {
    }
    unless(defined(&NO_BIO)) {
    }
    unless(defined(&NO_FP_API)) {
    }
    eval 'sub DSS_prime_checks () {50;}' unless defined(&DSS_prime_checks);
    eval 'sub DSA_is_prime {
        local($n, $callback, $cb_arg) = @_;
	    eval q( &BN_is_prime($n,  &DSS_prime_checks, $callback,  &NULL, $cb_arg));
    }' unless defined(&DSA_is_prime);
    unless(defined(&NO_DH)) {
    }
    eval 'sub DSA_F_D2I_DSA_SIG () {110;}' unless defined(&DSA_F_D2I_DSA_SIG);
    eval 'sub DSA_F_DSAPARAMS_PRINT () {100;}' unless defined(&DSA_F_DSAPARAMS_PRINT);
    eval 'sub DSA_F_DSAPARAMS_PRINT_FP () {101;}' unless defined(&DSA_F_DSAPARAMS_PRINT_FP);
    eval 'sub DSA_F_DSA_DO_SIGN () {112;}' unless defined(&DSA_F_DSA_DO_SIGN);
    eval 'sub DSA_F_DSA_DO_VERIFY () {113;}' unless defined(&DSA_F_DSA_DO_VERIFY);
    eval 'sub DSA_F_DSA_NEW () {103;}' unless defined(&DSA_F_DSA_NEW);
    eval 'sub DSA_F_DSA_PRINT () {104;}' unless defined(&DSA_F_DSA_PRINT);
    eval 'sub DSA_F_DSA_PRINT_FP () {105;}' unless defined(&DSA_F_DSA_PRINT_FP);
    eval 'sub DSA_F_DSA_SIGN () {106;}' unless defined(&DSA_F_DSA_SIGN);
    eval 'sub DSA_F_DSA_SIGN_SETUP () {107;}' unless defined(&DSA_F_DSA_SIGN_SETUP);
    eval 'sub DSA_F_DSA_SIG_NEW () {109;}' unless defined(&DSA_F_DSA_SIG_NEW);
    eval 'sub DSA_F_DSA_VERIFY () {108;}' unless defined(&DSA_F_DSA_VERIFY);
    eval 'sub DSA_F_I2D_DSA_SIG () {111;}' unless defined(&DSA_F_I2D_DSA_SIG);
    eval 'sub DSA_R_DATA_TOO_LARGE_FOR_KEY_SIZE () {100;}' unless defined(&DSA_R_DATA_TOO_LARGE_FOR_KEY_SIZE);
    eval 'sub DSA_R_MISSING_PARAMETERS () {101;}' unless defined(&DSA_R_MISSING_PARAMETERS);
    if(defined(&__cplusplus)) {
    }
}
1;
