Status of OpenSSL


#1

I am working on OpenSSL implementation for IronRuby. base on ruby
spec, the results looked like this.

4 files, 8 examples, 2 expectations, 2 failures, 6 errors

My first implementation is
http://github.com/Jirapong/ironruby/commit/975853418ba31ba51354db2ba79f3786270a3941
After that, results:

4 files, 8 examples, 770 expectations, 0 failures, 2 errors

There are more methods and specs require in order to make rubygems and
rails work.

e.g. From rubygems unit tests

4: uninitialized constant OpenSSL::X509
2: uninitialized constant OpenSSL::PKey
2: SSL is not installed on this system

I will keep working on the implementation.

Thanks,
-Jirapong


#2

Instead of
var result = new StringBuilder(length);
byte[] data = new byte[length];

var generator = new Crypto.RNGCryptoServiceProvider();

generator.GetBytes(data);
for (int i = 0; i < length; i++) {
result.Append(Convert.ToChar(data[i]));
}
return MutableString.Create(result.ToString());

you should create binary mutable string directly from the bytes:

byte[] data = new byte[length];
var generator = new Crypto.RNGCryptoServiceProvider();
generator.GetBytes(data);

return MutableString.CreateBinary(data);

Tomas

From: removed_email_address@domain.invalid
[mailto:removed_email_address@domain.invalid] On Behalf Of
removed_email_address@domain.invalid
Sent: Saturday, April 25, 2009 10:35 AM
To: removed_email_address@domain.invalid
Subject: [Ironruby-core] Status of OpenSSL

I am working on OpenSSL implementation for IronRuby. base on ruby spec,
the results looked like this.

4 files, 8 examples, 2 expectations, 2 failures, 6 errors

My first implementation is
http://github.com/Jirapong/ironruby/commit/975853418ba31ba51354db2ba79f3786270a3941
After that, results:

4 files, 8 examples, 770 expectations, 0 failures, 2 errors

There are more methods and specs require in order to make rubygems and
rails work.

e.g. From rubygems unit tests

4: uninitialized constant OpenSSL::X509
2: uninitialized constant OpenSSL::PKey
2: SSL is not installed on this system

I will keep working on the implementation.

Thanks,
-Jirapong


#3

Hi Tomas,
That’s work! please find change at cf5883e

Thank you,
-Jirapong