Import of old SSLeay release: SSLeay 0.9.1b (unreleased)

This commit is contained in:
Ralf S. Engelschall
1998-12-21 11:00:56 +00:00
parent 58964a4922
commit dfeab0689f
501 changed files with 43472 additions and 4057 deletions

View File

@@ -10,6 +10,7 @@ char *obj;
ret=sv_newmortal();
else
ret=newSViv(0);
printf(">new_ref %d\n",type);
sv_setref_pv(ret,type,(void *)obj);
return(ret);
}
@@ -27,6 +28,7 @@ char *argp;
fprintf(stderr,"ex_new %08X %s\n",obj,argp);
sv=sv_newmortal();
sv_setref_pv(sv,argp,(void *)obj);
printf("%d>new_ref '%s'\n",sv,argp);
CRYPTO_set_ex_data(ad,idx,(char *)sv);
return(1);
}

View File

@@ -10,6 +10,7 @@ char *obj;
ret=sv_newmortal();
else
ret=newSViv(0);
printf(">new_ref %d\n",type);
sv_setref_pv(ret,type,(void *)obj);
return(ret);
}
@@ -27,6 +28,7 @@ char *argp;
fprintf(stderr,"ex_new %08X %s\n",obj,argp);
sv=sv_newmortal();
sv_setref_pv(sv,argp,(void *)obj);
printf("%d>new_ref '%s'\n",sv,argp);
CRYPTO_set_ex_data(ad,idx,(char *)sv);
return(1);
}

View File

@@ -5,13 +5,15 @@ use ExtUtils::testlib;
use SSLeay;
$cmd=<<"EOF";
GET / HTTP/1.0
EOF
$conn="localhost:4433";
$conn=$ARGV[0] if $#ARGV >= 0;
$bio=SSLeay::BIO::new("connect");
$bio->set_callback(sub {print STDERR $_[0]->number_read."\n"; $_[$#_] });
#$bio->set_callback(sub {print STDERR SSLeay::BIO::number_read($_[0])."\n"; $_[$#_] });
#$bio->set_callback(sub {print STDERR "$#_:".$_[0].":$_[1]:$_[2]:$_[3]:$_[4]:\n"; $_[$#_] });
$bio->hostname($conn) || die $ssl->error();

View File

@@ -25,7 +25,7 @@ int ret;
SAVETMPS;
PUSHMARK(sp);
XPUSHs(me);
XPUSHs(sv_2mortal(newSViv(me)));
XPUSHs(sv_2mortal(newSViv(state)));
XPUSHs(sv_2mortal(newSViv(cmd)));
if ((state == BIO_CB_READ) || (state == BIO_CB_WRITE))
@@ -60,7 +60,8 @@ int ret;
int boot_bio()
{
p5_bio_ex_bio_ptr=
BIO_get_ex_new_index(0,"SSLeay::BIO",ex_new,NULL,ex_cleanup);
BIO_get_ex_new_index(0,"SSLeay::BIO",ex_new,NULL,
ex_cleanup);
p5_bio_ex_bio_callback=
BIO_get_ex_new_index(0,"bio_callback",NULL,NULL,
ex_cleanup);
@@ -97,9 +98,8 @@ p5_BIO_new_buffer_ssl_connect(...)
}
EXTEND(sp,1);
bio=BIO_new_buffer_ssl_connect(ctx);
arg=new_ref("SSLeay::BIO",(char *)bio,0);
arg=(SV *)BIO_get_ex_data(bio,p5_bio_ex_bio_ptr);
PUSHs(arg);
BIO_set_ex_data(bio,p5_bio_ex_bio_ptr,(char *)arg);
void
p5_BIO_new_ssl_connect(...)
@@ -124,9 +124,8 @@ p5_BIO_new_ssl_connect(...)
}
EXTEND(sp,1);
bio=BIO_new_ssl_connect(ctx);
arg=new_ref("SSLeay::BIO",(char *)bio,0);
arg=(SV *)BIO_get_ex_data(bio,p5_bio_ex_bio_ptr);
PUSHs(arg);
BIO_set_ex_data(bio,p5_bio_ex_bio_ptr,(char *)arg);
void
p5_BIO_new(...)
@@ -154,16 +153,15 @@ p5_BIO_new(...)
bio=BIO_new(BIO_f_buffer());
else
croak("unknown BIO type");
arg=new_ref("SSLeay::BIO",(char *)bio,0);
arg=(SV *)BIO_get_ex_data(bio,p5_bio_ex_bio_ptr);
PUSHs(arg);
BIO_set_ex_data(bio,p5_bio_ex_bio_ptr,(char *)arg);
int
p5_BIO_hostname(bio,name)
BIO *bio;
char *name;
CODE:
RETVAL=BIO_set_hostname(bio,name);
RETVAL=BIO_set_conn_hostname(bio,name);
OUTPUT:
RETVAL
@@ -218,18 +216,20 @@ p5_BIO_pop(b)
if (arg == NULL)
{
arg=new_ref("SSLeay::BIO",(char *)bio,0);
PUSHs(arg);
BIO_set_ex_data(bio,p5_bio_ex_bio_ptr,(char *)arg);
PUSHs(arg);
}
else
{
/* it was pushed in */
SvREFCNT_inc(arg);
PUSHs(arg);
#if 0 /* This does not need to be done. */
if (bio->references < 1)
abort();
/* decrement the reference count */
BIO_free(bio);
#endif
}
}
@@ -253,7 +253,7 @@ p5_BIO_sysread(bio,in,num, ...)
if (offset < 0)
{
if (-offset > olen)
croad("Offset outside string");
croak("Offset outside string");
offset+=olen;
}
}
@@ -356,8 +356,9 @@ p5_BIO_next_bio(b)
if (arg == NULL)
{
arg=new_ref("SSLeay::BIO",(char *)bio,0);
PUSHs(arg);
BIO_set_ex_data(bio,p5_bio_ex_bio_ptr,(char *)arg);
bio->references++;
PUSHs(arg);
}
else
{
@@ -398,6 +399,7 @@ p5_BIO_set_callback(bio,cb,...)
arg=sv_mortalcopy(ST(1));
SvREFCNT_inc(arg);
BIO_set_ex_data(bio,p5_bio_ex_bio_callback,(char *)arg);
printf("%08lx < bio_ptr\n",BIO_get_ex_data(bio,p5_bio_ex_bio_ptr));
BIO_set_callback(bio,p5_bio_callback);
void

View File

@@ -80,7 +80,7 @@ char *argp;
{
SV *sv;
fprintf(stderr,"ex_new %08X %s\n",obj,argp);
fprintf(stderr,"ex_new idx=%d %08X %s\n",idx,obj,argp);
sv=sv_newmortal();
sv_setref_pv(sv,argp,(void *)obj);
CRYPTO_set_ex_data(ad,idx,(char *)sv);

View File

@@ -4,22 +4,8 @@ use ExtUtils::testlib;
use SSLeay;
$data=<>;
#$b=SSLeay::BN::hex2bn($a);
#$data=$b->bn2bin;
#substr($data,0,8)="";
#print $data;
$md=SSLeay::MD::new("md5");
$md->init();
$md->update("test");
$key=$md->final();
$rc4=SSLeay::Cipher::new("rc4");
$rc4->init($key,"",1);
$out=$rc4->cipher($data);
print $out;
for (7 .. 7926)
{
my $num = SSLeay::BN::dec2bn($_);
print "$_ is ".($num->is_prime ? 'prime' : 'composite'), "\n";
}

View File

@@ -25,7 +25,7 @@ int ret;
SAVETMPS;
PUSHMARK(sp);
XPUSHs(me);
XPUSHs(sv_2mortal(newSViv(me)));
XPUSHs(sv_2mortal(newSViv(state)));
XPUSHs(sv_2mortal(newSViv(cmd)));
if ((state == BIO_CB_READ) || (state == BIO_CB_WRITE))
@@ -60,7 +60,8 @@ int ret;
int boot_bio()
{
p5_bio_ex_bio_ptr=
BIO_get_ex_new_index(0,"SSLeay::BIO",ex_new,NULL,ex_cleanup);
BIO_get_ex_new_index(0,"SSLeay::BIO",ex_new,NULL,
ex_cleanup);
p5_bio_ex_bio_callback=
BIO_get_ex_new_index(0,"bio_callback",NULL,NULL,
ex_cleanup);
@@ -97,9 +98,8 @@ p5_BIO_new_buffer_ssl_connect(...)
}
EXTEND(sp,1);
bio=BIO_new_buffer_ssl_connect(ctx);
arg=new_ref("SSLeay::BIO",(char *)bio,0);
arg=(SV *)BIO_get_ex_data(bio,p5_bio_ex_bio_ptr);
PUSHs(arg);
BIO_set_ex_data(bio,p5_bio_ex_bio_ptr,(char *)arg);
void
p5_BIO_new_ssl_connect(...)
@@ -124,9 +124,8 @@ p5_BIO_new_ssl_connect(...)
}
EXTEND(sp,1);
bio=BIO_new_ssl_connect(ctx);
arg=new_ref("SSLeay::BIO",(char *)bio,0);
arg=(SV *)BIO_get_ex_data(bio,p5_bio_ex_bio_ptr);
PUSHs(arg);
BIO_set_ex_data(bio,p5_bio_ex_bio_ptr,(char *)arg);
void
p5_BIO_new(...)
@@ -154,16 +153,15 @@ p5_BIO_new(...)
bio=BIO_new(BIO_f_buffer());
else
croak("unknown BIO type");
arg=new_ref("SSLeay::BIO",(char *)bio,0);
arg=(SV *)BIO_get_ex_data(bio,p5_bio_ex_bio_ptr);
PUSHs(arg);
BIO_set_ex_data(bio,p5_bio_ex_bio_ptr,(char *)arg);
int
p5_BIO_hostname(bio,name)
BIO *bio;
char *name;
CODE:
RETVAL=BIO_set_hostname(bio,name);
RETVAL=BIO_set_conn_hostname(bio,name);
OUTPUT:
RETVAL
@@ -218,18 +216,20 @@ p5_BIO_pop(b)
if (arg == NULL)
{
arg=new_ref("SSLeay::BIO",(char *)bio,0);
PUSHs(arg);
BIO_set_ex_data(bio,p5_bio_ex_bio_ptr,(char *)arg);
PUSHs(arg);
}
else
{
/* it was pushed in */
SvREFCNT_inc(arg);
PUSHs(arg);
#if 0 /* This does not need to be done. */
if (bio->references < 1)
abort();
/* decrement the reference count */
BIO_free(bio);
#endif
}
}
@@ -253,7 +253,7 @@ p5_BIO_sysread(bio,in,num, ...)
if (offset < 0)
{
if (-offset > olen)
croad("Offset outside string");
croak("Offset outside string");
offset+=olen;
}
}
@@ -356,8 +356,9 @@ p5_BIO_next_bio(b)
if (arg == NULL)
{
arg=new_ref("SSLeay::BIO",(char *)bio,0);
PUSHs(arg);
BIO_set_ex_data(bio,p5_bio_ex_bio_ptr,(char *)arg);
bio->references++;
PUSHs(arg);
}
else
{
@@ -398,6 +399,7 @@ p5_BIO_set_callback(bio,cb,...)
arg=sv_mortalcopy(ST(1));
SvREFCNT_inc(arg);
BIO_set_ex_data(bio,p5_bio_ex_bio_callback,(char *)arg);
printf("%08lx < bio_ptr\n",BIO_get_ex_data(bio,p5_bio_ex_bio_ptr));
BIO_set_callback(bio,p5_bio_callback);
void

View File

@@ -80,7 +80,7 @@ char *argp;
{
SV *sv;
fprintf(stderr,"ex_new %08X %s\n",obj,argp);
fprintf(stderr,"ex_new idx=%d %08X %s\n",idx,obj,argp);
sv=sv_newmortal();
sv_setref_pv(sv,argp,(void *)obj);
CRYPTO_set_ex_data(ad,idx,(char *)sv);

View File

@@ -241,7 +241,7 @@ p5_SSL_sysread(ssl,in,num, ...)
if (offset < 0)
{
if (-offset > olen)
croad("Offset outside string");
croak("Offset outside string");
offset+=olen;
}
}

View File

@@ -6,11 +6,11 @@ use SSLeay;
$ssl_ctx=SSL::CTX->new("SSLv3");
$ssl_ctx->set_options("-info_callback" =>
sub {
print STDERR $_[0]->state()."\n";
}
);
#$ssl_ctx->set_options("-info_callback" =>
# sub {
# print STDERR $_[0]->state()."\n";
# }
# );
$conn="localhost:4433";
$conn=$ARGV[0] if $#ARGV >= 0;

View File

@@ -241,7 +241,7 @@ p5_SSL_sysread(ssl,in,num, ...)
if (offset < 0)
{
if (-offset > olen)
croad("Offset outside string");
croak("Offset outside string");
offset+=olen;
}
}