jruby-openssl 0.9.4 → 0.14.0-java
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- checksums.yaml +7 -0
- data/History.md +652 -0
- data/LICENSE.txt +37 -0
- data/Mavenfile +163 -5
- data/README.md +75 -0
- data/Rakefile +52 -2
- data/lib/jopenssl/_compat23.rb +71 -0
- data/lib/jopenssl/load.rb +75 -16
- data/lib/jopenssl/version.rb +9 -4
- data/lib/jopenssl.jar +0 -0
- data/lib/openssl/bn.rb +40 -5
- data/lib/openssl/buffering.rb +477 -4
- data/lib/openssl/cipher.rb +67 -5
- data/lib/openssl/config.rb +500 -4
- data/lib/openssl/digest.rb +73 -5
- data/lib/openssl/hmac.rb +13 -0
- data/lib/openssl/marshal.rb +30 -0
- data/lib/openssl/pkcs12.rb +60 -99
- data/lib/openssl/pkcs5.rb +22 -0
- data/lib/openssl/pkey.rb +42 -0
- data/lib/openssl/ssl.rb +542 -4
- data/lib/openssl/x509.rb +368 -4
- data/lib/openssl.rb +3 -1
- data/lib/org/bouncycastle/bcpkix-jdk18on/1.71/bcpkix-jdk18on-1.71.jar +0 -0
- data/lib/org/bouncycastle/bcprov-jdk18on/1.71/bcprov-jdk18on-1.71.jar +0 -0
- data/lib/org/bouncycastle/bctls-jdk18on/1.71/bctls-jdk18on-1.71.jar +0 -0
- data/lib/org/bouncycastle/bcutil-jdk18on/1.71/bcutil-jdk18on-1.71.jar +0 -0
- data/pom.xml +772 -0
- metadata +40 -107
- data/History.txt +0 -218
- data/License.txt +0 -30
- data/README.txt +0 -13
- data/TODO-1_9-support.txt +0 -23
- data/lib/jopenssl18/openssl/bn.rb +0 -35
- data/lib/jopenssl18/openssl/buffering.rb +0 -241
- data/lib/jopenssl18/openssl/cipher.rb +0 -65
- data/lib/jopenssl18/openssl/config.rb +0 -316
- data/lib/jopenssl18/openssl/digest.rb +0 -61
- data/lib/jopenssl18/openssl/pkcs7.rb +0 -25
- data/lib/jopenssl18/openssl/ssl-internal.rb +0 -179
- data/lib/jopenssl18/openssl/ssl.rb +0 -1
- data/lib/jopenssl18/openssl/x509-internal.rb +0 -153
- data/lib/jopenssl18/openssl/x509.rb +0 -1
- data/lib/jopenssl18/openssl.rb +0 -67
- data/lib/jopenssl19/openssl/bn.rb +0 -35
- data/lib/jopenssl19/openssl/buffering.rb +0 -449
- data/lib/jopenssl19/openssl/cipher.rb +0 -65
- data/lib/jopenssl19/openssl/config.rb +0 -313
- data/lib/jopenssl19/openssl/digest.rb +0 -72
- data/lib/jopenssl19/openssl/ssl-internal.rb +0 -177
- data/lib/jopenssl19/openssl/ssl.rb +0 -2
- data/lib/jopenssl19/openssl/x509-internal.rb +0 -158
- data/lib/jopenssl19/openssl/x509.rb +0 -2
- data/lib/jopenssl19/openssl.rb +0 -23
- data/lib/openssl/pkcs7.rb +0 -5
- data/lib/openssl/ssl-internal.rb +0 -5
- data/lib/openssl/x509-internal.rb +0 -5
- data/test/java/pkcs7_mime_enveloped.message +0 -19
- data/test/java/pkcs7_mime_signed.message +0 -30
- data/test/java/pkcs7_multipart_signed.message +0 -45
- data/test/java/test_java_attribute.rb +0 -25
- data/test/java/test_java_bio.rb +0 -42
- data/test/java/test_java_mime.rb +0 -173
- data/test/java/test_java_pkcs7.rb +0 -772
- data/test/java/test_java_smime.rb +0 -177
- data/test/test_java.rb +0 -98
- data/test/ut_eof.rb +0 -128
data/lib/jopenssl19/openssl.rb
DELETED
@@ -1,23 +0,0 @@
|
|
1
|
-
=begin
|
2
|
-
= $RCSfile$ -- Loader for all OpenSSL C-space and Ruby-space definitions
|
3
|
-
|
4
|
-
= Info
|
5
|
-
'OpenSSL for Ruby 2' project
|
6
|
-
Copyright (C) 2002 Michal Rokos <m.rokos@sh.cvut.cz>
|
7
|
-
All rights reserved.
|
8
|
-
|
9
|
-
= Licence
|
10
|
-
This program is licenced under the same licence as Ruby.
|
11
|
-
(See the file 'LICENCE'.)
|
12
|
-
|
13
|
-
= Version
|
14
|
-
$Id$
|
15
|
-
=end
|
16
|
-
|
17
|
-
require 'openssl/bn'
|
18
|
-
require 'openssl/cipher'
|
19
|
-
require 'openssl/config'
|
20
|
-
require 'openssl/digest'
|
21
|
-
require 'openssl/ssl-internal'
|
22
|
-
require 'openssl/x509-internal'
|
23
|
-
require 'krypt/ossl'
|
data/lib/openssl/pkcs7.rb
DELETED
data/lib/openssl/ssl-internal.rb
DELETED
@@ -1,19 +0,0 @@
|
|
1
|
-
MIME-Version: 1.0
|
2
|
-
Message-Id: <00103112005203.00349@amyemily.ig.com>
|
3
|
-
Date: Tue, 31 Oct 2000 12:00:52 -0600 (Central Standard Time)
|
4
|
-
From: User1
|
5
|
-
To: User2
|
6
|
-
Subject: Example 5.3
|
7
|
-
Content-Type: application/pkcs7-mime;
|
8
|
-
name=smime.p7m;
|
9
|
-
smime-type=enveloped-data
|
10
|
-
Content-Transfer-Encoding: base64
|
11
|
-
Content-Disposition: attachment; filename=smime.p7m
|
12
|
-
|
13
|
-
|
14
|
-
MIIBHgYJKoZIhvcNAQcDoIIBDzCCAQsCAQAxgcAwgb0CAQAwJjASMRAwDgYDVQQDEwdDYXJ
|
15
|
-
sUlNBAhBGNGvHgABWvBHTbi7NXXHQMA0GCSqGSIb3DQEBAQUABIGAC3EN5nGIiJi2lsGPcP
|
16
|
-
2iJ97a4e8kbKQz36zg6Z2i0yx6zYC4mZ7mX7FBs3IWg+f6KgCLx3M1eCbWx8+MDFbbpXadC
|
17
|
-
DgO8/nUkUNYeNxJtuzubGgzoyEd8Ch4H/dd9gdzTd+taTEgS0ipdSJuNnkVY4/M652jKKHR
|
18
|
-
LFf02hosdR8wQwYJKoZIhvcNAQcBMBQGCCqGSIb3DQMHBAgtaMXpRwZRNYAgDsiSf8Z9P43
|
19
|
-
LrY4OxUk660cu1lXeCSFOSOpOJ7FuVyU=
|
@@ -1,30 +0,0 @@
|
|
1
|
-
MIME-Version: 1.0
|
2
|
-
To: User2@examples.com
|
3
|
-
From: aliceDss@examples.com
|
4
|
-
Subject: Example 4.9
|
5
|
-
Message-Id: <021031164540300.304@examples.com>
|
6
|
-
Date: Thu, 31 Oct 2002 16:45:14 -0300
|
7
|
-
Content-Type: application/pkcs7-mime; smime-type=signed-data;
|
8
|
-
name=smime.p7m
|
9
|
-
Content-Transfer-Encoding: base64
|
10
|
-
Content-Disposition: attachment; filename=smime.p7m
|
11
|
-
|
12
|
-
|
13
|
-
MIIDmQYJKoZIhvcNAQcCoIIDijCCA4YCAQExCTAHBgUrDgMCGjAtBgkqhkiG9w0BBwGgIAQ
|
14
|
-
eDQpUaGlzIGlzIHNvbWUgc2FtcGxlIGNvbnRlbnQuoIIC4DCCAtwwggKboAMCAQICAgDIMA
|
15
|
-
kGByqGSM44BAMwEjEQMA4GA1UEAxMHQ2FybERTUzAeFw05OTA4MTcwMTEwNDlaFw0zOTEyM
|
16
|
-
zEyMzU5NTlaMBMxETAPBgNVBAMTCEFsaWNlRFNTMIIBtjCCASsGByqGSM44BAEwggEeAoGB
|
17
|
-
AIGNze2D6gqeOT7CSCij5EeT3Q7XqA7sU8WrhAhP/5Thc0h+DNbzREjR/p+vpKGJL+HZMMg
|
18
|
-
23j+bv7dM3F9piuR10DcMkQiVm96nXvn89J8v3UOoi1TxP7AHCEdNXYjDw7Wz41UIddU5dh
|
19
|
-
DEeL3/nbCElzfy5FEbteQJllzzflvbAhUA4kemGkVmuBPG2o+4NyErYov3k80CgYAmONAUi
|
20
|
-
TKqOfs+bdlLWWpMdiM5BAI1XPLLGjDDHlBd3ZtZ4s2qBT1YwHuiNrhuB699ikIlp/R1z0oI
|
21
|
-
Xks+kPht6pzJIYo7dhTpzi5dowfNI4W4LzABfG1JiRGJNkS9+MiVSlNWteL5c+waYTYfEX/
|
22
|
-
Cve3RUP+YdMLRgUpgObo2OQOBhAACgYBc47ladRSWC6l63eM/qeysXty9txMRNKYWiSgRI9
|
23
|
-
k0hmd1dRMSPUNbb+VRv/qJ8qIbPiR9PQeNW2PIu0WloErjhdbOBoA/6CN+GvIkq1MauCcNH
|
24
|
-
u8Iv2YUgFxirGX6FYvxuzTU0pY39mFHssQyhPB+QUD9RqdjTjPypeL08oPluKOBgTB/MAwG
|
25
|
-
A1UdEwEB/wQCMAAwDgYDVR0PAQH/BAQDAgbAMB8GA1UdIwQYMBaAFHBEPoIub4feStN14z0
|
26
|
-
gvEMrk/EfMB0GA1UdDgQWBBS+bKGz48H37UNwpM4TAeL945f+zTAfBgNVHREEGDAWgRRBbG
|
27
|
-
ljZURTU0BleGFtcGxlLmNvbTAJBgcqhkjOOAQDAzAAMC0CFFUMpBkfQiuJcSIzjYNqtT1na
|
28
|
-
79FAhUAn2FTUlQLXLLd2ud2HeIQUltDXr0xYzBhAgEBMBgwEjEQMA4GA1UEAxMHQ2FybERT
|
29
|
-
UwICAMgwBwYFKw4DAhowCQYHKoZIzjgEAwQuMCwCFD1cSW6LIUFzeXle3YI5SKSBer/sAhQ
|
30
|
-
mCq7s/CTFHOEjgASeUjbMpx5g6A==
|
@@ -1,45 +0,0 @@
|
|
1
|
-
MIME-Version: 1.0
|
2
|
-
To: User2@examples.com
|
3
|
-
From: aliceDss@examples.com
|
4
|
-
Subject: Example 4.8
|
5
|
-
Message-Id: <020906002550300.249@examples.com>
|
6
|
-
Date: Fri, 06 Sep 2002 00:25:21 -0300
|
7
|
-
Content-Type: multipart/signed;
|
8
|
-
micalg=SHA1;
|
9
|
-
boundary="----=_NextBoundry____Fri,_06_Sep_2002_00:25:21";
|
10
|
-
protocol="application/pkcs7-signature"
|
11
|
-
|
12
|
-
|
13
|
-
This is a multi-part message in MIME format.
|
14
|
-
|
15
|
-
|
16
|
-
------=_NextBoundry____Fri,_06_Sep_2002_00:25:21
|
17
|
-
|
18
|
-
This is some sample content.
|
19
|
-
|
20
|
-
------=_NextBoundry____Fri,_06_Sep_2002_00:25:21
|
21
|
-
Content-Type: application/pkcs7-mime; name=smime.p7s
|
22
|
-
Content-Transfer-Encoding: base64
|
23
|
-
Content-Disposition: attachment; filename=smime.p7s
|
24
|
-
|
25
|
-
|
26
|
-
MIIDdwYJKoZIhvcNAQcCoIIDaDCCA2QCAQExCTAHBgUrDgMCGjALBgkqhkiG9w0BBwGgggL
|
27
|
-
gMIIC3DCCApugAwIBAgICAMgwCQYHKoZIzjgEAzASMRAwDgYDVQQDEwdDYXJsRFNTMB4XDT
|
28
|
-
k5MDgxNzAxMTA0OVoXDTM5MTIzMTIzNTk1OVowEzERMA8GA1UEAxMIQWxpY2VEU1MwggG2M
|
29
|
-
IIBKwYHKoZIzjgEATCCAR4CgYEAgY3N7YPqCp45PsJIKKPkR5PdDteoDuxTxauECE//lOFz
|
30
|
-
SH4M1vNESNH+n6+koYkv4dkwyDbeP5u/t0zcX2mK5HXQNwyRCJWb3qde+fz0ny/dQ6iLVPE
|
31
|
-
/sAcIR01diMPDtbPjVQh11Tl2EMR4vf+dsISXN/LkURu15AmWXPN+W9sCFQDiR6YaRWa4E8
|
32
|
-
baj7g3IStii/eTzQKBgCY40BSJMqo5+z5t2UtZakx2IzkEAjVc8ssaMMMeUF3dm1nizaoFP
|
33
|
-
VjAe6I2uG4Hr32KQiWn9HXPSgheSz6Q+G3qnMkhijt2FOnOLl2jB80jhbgvMAF8bUmJEYk2
|
34
|
-
RL34yJVKU1a14vlz7BphNh8Rf8K97dFQ/5h0wtGBSmA5ujY5A4GEAAKBgFzjuVp1FJYLqXr
|
35
|
-
d4z+p7Kxe3L23ExE0phaJKBEj2TSGZ3V1ExI9Q1tv5VG/+onyohs+JH09B41bY8i7RaWgSu
|
36
|
-
OF1s4GgD/oI34a8iSrUxq4Jw0e7wi/ZhSAXGKsZfoVi/G7NNTSljf2YUeyxDKE8H5BQP1Gp
|
37
|
-
2NOM/Kl4vTyg+W4o4GBMH8wDAYDVR0TAQH/BAIwADAOBgNVHQ8BAf8EBAMCBsAwHwYDVR0j
|
38
|
-
BBgwFoAUcEQ+gi5vh95K03XjPSC8QyuT8R8wHQYDVR0OBBYEFL5sobPjwfftQ3CkzhMB4v3
|
39
|
-
jl/7NMB8GA1UdEQQYMBaBFEFsaWNlRFNTQGV4YW1wbGUuY29tMAkGByqGSM44BAMDMAAwLQ
|
40
|
-
IUVQykGR9CK4lxIjONg2q1PWdrv0UCFQCfYVNSVAtcst3a53Yd4hBSW0NevTFjMGECAQEwG
|
41
|
-
DASMRAwDgYDVQQDEwdDYXJsRFNTAgIAyDAHBgUrDgMCGjAJBgcqhkjOOAQDBC4wLAIUM/mG
|
42
|
-
f6gkgp9Z0XtRdGimJeB/BxUCFGFFJqwYRt1WYcIOQoGiaowqGzVI
|
43
|
-
|
44
|
-
|
45
|
-
------=_NextBoundry____Fri,_06_Sep_2002_00:25:21--
|
@@ -1,25 +0,0 @@
|
|
1
|
-
module PKCS7Test
|
2
|
-
class TestJavaAttribute < Test::Unit::TestCase
|
3
|
-
def test_attributes
|
4
|
-
val = ASN1::OctetString.new("foo".to_java_bytes)
|
5
|
-
val2 = ASN1::OctetString.new("bar".to_java_bytes)
|
6
|
-
attr = Attribute.create(123, 444, val)
|
7
|
-
assert_raise NoMethodError do
|
8
|
-
attr.type = 12
|
9
|
-
end
|
10
|
-
assert_raise NoMethodError do
|
11
|
-
attr.value = val2
|
12
|
-
end
|
13
|
-
|
14
|
-
assert_equal 123, attr.type
|
15
|
-
assert_equal val, attr.set.get(0)
|
16
|
-
|
17
|
-
attr2 = Attribute.create(123, 444, val)
|
18
|
-
|
19
|
-
assert_equal attr, attr2
|
20
|
-
|
21
|
-
assert_not_equal Attribute.create(124, 444, val), attr
|
22
|
-
assert_not_equal Attribute.create(123, 444, val2), attr
|
23
|
-
end
|
24
|
-
end
|
25
|
-
end
|
data/test/java/test_java_bio.rb
DELETED
@@ -1,42 +0,0 @@
|
|
1
|
-
module PKCS7Test
|
2
|
-
class TestJavaBIO < Test::Unit::TestCase
|
3
|
-
def test_string_bio_simple
|
4
|
-
bio = BIO::from_string("abc")
|
5
|
-
arr = Java::byte[20].new
|
6
|
-
read = bio.gets(arr, 10)
|
7
|
-
assert_equal 3, read
|
8
|
-
assert_equal "abc".to_java_bytes.to_a, arr.to_a[0...read]
|
9
|
-
end
|
10
|
-
|
11
|
-
def test_string_bio_simple_with_newline
|
12
|
-
bio = BIO::from_string("abc\n")
|
13
|
-
arr = Java::byte[20].new
|
14
|
-
read = bio.gets(arr, 10)
|
15
|
-
assert_equal 4, read
|
16
|
-
assert_equal "abc\n".to_java_bytes.to_a, arr.to_a[0...read]
|
17
|
-
end
|
18
|
-
|
19
|
-
def test_string_bio_simple_with_newline_and_more_data
|
20
|
-
bio = BIO::from_string("abc\nfoo\n\nbar")
|
21
|
-
arr = Java::byte[20].new
|
22
|
-
read = bio.gets(arr, 10)
|
23
|
-
assert_equal 4, read
|
24
|
-
assert_equal "abc\n".to_java_bytes.to_a, arr.to_a[0...read]
|
25
|
-
|
26
|
-
read = bio.gets(arr, 10)
|
27
|
-
assert_equal 4, read
|
28
|
-
assert_equal "foo\n".to_java_bytes.to_a, arr.to_a[0...read]
|
29
|
-
|
30
|
-
read = bio.gets(arr, 10)
|
31
|
-
assert_equal 1, read
|
32
|
-
assert_equal "\n".to_java_bytes.to_a, arr.to_a[0...read]
|
33
|
-
|
34
|
-
read = bio.gets(arr, 10)
|
35
|
-
assert_equal 3, read
|
36
|
-
assert_equal "bar".to_java_bytes.to_a, arr.to_a[0...read]
|
37
|
-
|
38
|
-
read = bio.gets(arr, 10)
|
39
|
-
assert_equal 0, read
|
40
|
-
end
|
41
|
-
end
|
42
|
-
end
|
data/test/java/test_java_mime.rb
DELETED
@@ -1,173 +0,0 @@
|
|
1
|
-
module PKCS7Test
|
2
|
-
class TestJavaMime < Test::Unit::TestCase
|
3
|
-
def test_find_header_returns_null_on_nonexisting_header
|
4
|
-
headers = []
|
5
|
-
assert_nil Mime::DEFAULT.find_header(headers, "foo")
|
6
|
-
|
7
|
-
headers = [MimeHeader.new("blarg", "bluff")]
|
8
|
-
assert_nil Mime::DEFAULT.find_header(headers, "foo")
|
9
|
-
end
|
10
|
-
|
11
|
-
def test_find_header_returns_the_header_with_the_same_name
|
12
|
-
hdr = MimeHeader.new("one", "two")
|
13
|
-
assert_equal hdr, Mime::DEFAULT.find_header([hdr], "one")
|
14
|
-
end
|
15
|
-
|
16
|
-
def test_find_param_returns_null_on_nonexisting_param
|
17
|
-
assert_nil Mime::DEFAULT.find_param(MimeHeader.new("one", "two", []), "foo")
|
18
|
-
assert_nil Mime::DEFAULT.find_param(MimeHeader.new("one", "two", [MimeParam.new("hi", "ho")]), "foo")
|
19
|
-
end
|
20
|
-
|
21
|
-
def test_find_param_returns_the_param_with_the_same_name
|
22
|
-
par = MimeParam.new("hox", "box")
|
23
|
-
hdr = MimeHeader.new("one", "two", [par])
|
24
|
-
assert_equal par, Mime::DEFAULT.find_param(hdr, "hox")
|
25
|
-
end
|
26
|
-
|
27
|
-
def test_simple_parse_headers
|
28
|
-
bio = BIO::from_string("Foo: bar")
|
29
|
-
result = Mime::DEFAULT.parse_headers(bio)
|
30
|
-
assert_equal 1, result.size
|
31
|
-
assert_equal MimeHeader.new("Foo", "bar"), result[0]
|
32
|
-
assert_equal "foo", result[0].name
|
33
|
-
end
|
34
|
-
|
35
|
-
def test_simple_parse_headers2
|
36
|
-
bio = BIO::from_string("Foo:bar")
|
37
|
-
result = Mime::DEFAULT.parse_headers(bio)
|
38
|
-
assert_equal 1, result.size
|
39
|
-
assert_equal MimeHeader.new("Foo", "bar"), result[0]
|
40
|
-
assert_equal "foo", result[0].name
|
41
|
-
end
|
42
|
-
|
43
|
-
def test_simple_parse_headers3
|
44
|
-
bio = BIO::from_string("Foo: bar")
|
45
|
-
result = Mime::DEFAULT.parse_headers(bio)
|
46
|
-
assert_equal 1, result.size
|
47
|
-
assert_equal MimeHeader.new("Foo", "bar"), result[0]
|
48
|
-
assert_equal "foo", result[0].name
|
49
|
-
end
|
50
|
-
|
51
|
-
def test_simple_parse_headers4
|
52
|
-
bio = BIO::from_string("Foo: bar\n")
|
53
|
-
result = Mime::DEFAULT.parse_headers(bio)
|
54
|
-
assert_equal 1, result.size
|
55
|
-
assert_equal MimeHeader.new("Foo", "bar"), result[0]
|
56
|
-
assert_equal "foo", result[0].name
|
57
|
-
end
|
58
|
-
|
59
|
-
def test_simple_parse_headers5
|
60
|
-
bio = BIO::from_string(" Foo : bar \n")
|
61
|
-
result = Mime::DEFAULT.parse_headers(bio)
|
62
|
-
assert_equal 1, result.size
|
63
|
-
assert_equal MimeHeader.new("Foo", "bar"), result[0]
|
64
|
-
assert_equal "foo", result[0].name
|
65
|
-
end
|
66
|
-
|
67
|
-
|
68
|
-
def test_simple_parse_headers6
|
69
|
-
bio = BIO::from_string("Foo: bar;\n")
|
70
|
-
result = Mime::DEFAULT.parse_headers(bio)
|
71
|
-
assert_equal 1, result.size
|
72
|
-
assert_equal MimeHeader.new("Foo", "bar"), result[0]
|
73
|
-
assert_equal "foo", result[0].name
|
74
|
-
end
|
75
|
-
|
76
|
-
def test_simple_parse_headers7
|
77
|
-
bio = BIO::from_string("Foo: bar;\nFlurg: blarg")
|
78
|
-
result = Mime::DEFAULT.parse_headers(bio)
|
79
|
-
assert_equal 2, result.size
|
80
|
-
assert_equal MimeHeader.new("Foo", "bar"), result[0]
|
81
|
-
assert_equal MimeHeader.new("Flurg", "blarg"), result[1]
|
82
|
-
assert_equal "foo", result[0].name
|
83
|
-
assert_equal "flurg", result[1].name
|
84
|
-
end
|
85
|
-
|
86
|
-
def test_simple_parse_headers_quotes
|
87
|
-
bio = BIO::from_string("Foo: \"bar\"")
|
88
|
-
result = Mime::DEFAULT.parse_headers(bio)
|
89
|
-
assert_equal 1, result.size
|
90
|
-
assert_equal MimeHeader.new("Foo", "bar"), result[0]
|
91
|
-
assert_equal "foo", result[0].name
|
92
|
-
end
|
93
|
-
|
94
|
-
def test_simple_parse_headers_comment
|
95
|
-
bio = BIO::from_string("Foo: (this is the right thing)ba(and this is the wrong one)r")
|
96
|
-
result = Mime::DEFAULT.parse_headers(bio)
|
97
|
-
assert_equal 1, result.size
|
98
|
-
assert_equal MimeHeader.new("Foo", "(this is the right thing)ba(and this is the wrong one)r"), result[0]
|
99
|
-
assert_equal "foo", result[0].name
|
100
|
-
end
|
101
|
-
|
102
|
-
def test_parse_headers_with_param
|
103
|
-
bio = BIO::from_string("Content-Type: Multipart/Related; boundary=MIME_boundary; type=text/xml")
|
104
|
-
result = Mime::DEFAULT.parse_headers(bio)
|
105
|
-
assert_equal 1, result.size
|
106
|
-
header = result[0]
|
107
|
-
assert_equal "content-type", header.name
|
108
|
-
assert_equal "multipart/related", header.value
|
109
|
-
assert_equal [MimeParam.new("boundary","MIME_boundary"),
|
110
|
-
MimeParam.new("type","text/xml")], header.params.to_a
|
111
|
-
end
|
112
|
-
|
113
|
-
def test_parse_headers_with_param_newline
|
114
|
-
bio = BIO::from_string("Content-Type: Multipart/Related\n boundary=MIME_boundary; type=text/xml")
|
115
|
-
result = Mime::DEFAULT.parse_headers(bio)
|
116
|
-
assert_equal 1, result.size
|
117
|
-
header = result[0]
|
118
|
-
assert_equal "content-type", header.name
|
119
|
-
assert_equal "multipart/related", header.value
|
120
|
-
assert_equal [MimeParam.new("boundary","MIME_boundary"),
|
121
|
-
MimeParam.new("type","text/xml")], header.params.to_a
|
122
|
-
end
|
123
|
-
|
124
|
-
def test_parse_headers_with_param_newline_and_semicolon
|
125
|
-
bio = BIO::from_string("Content-Type: Multipart/Related;\n boundary=MIME_boundary;\n Type=text/xml")
|
126
|
-
result = Mime::DEFAULT.parse_headers(bio)
|
127
|
-
assert_equal 1, result.size
|
128
|
-
header = result[0]
|
129
|
-
assert_equal "content-type", header.name
|
130
|
-
assert_equal "multipart/related", header.value
|
131
|
-
assert_equal [MimeParam.new("boundary","MIME_boundary"),
|
132
|
-
MimeParam.new("type","text/xml")], header.params.to_a
|
133
|
-
end
|
134
|
-
|
135
|
-
def test_advanced_mime_message
|
136
|
-
bio = BIO::from_string(MultipartSignedString)
|
137
|
-
result = Mime::DEFAULT.parse_headers(bio)
|
138
|
-
|
139
|
-
assert_equal "mime-version", result[0].name
|
140
|
-
assert_equal "1.0", result[0].value
|
141
|
-
|
142
|
-
assert_equal "to", result[1].name
|
143
|
-
assert_equal "user2@examples.com", result[1].value
|
144
|
-
|
145
|
-
assert_equal "from", result[2].name
|
146
|
-
assert_equal "alicedss@examples.com", result[2].value
|
147
|
-
|
148
|
-
assert_equal "subject", result[3].name
|
149
|
-
assert_equal "example 4.8", result[3].value
|
150
|
-
|
151
|
-
assert_equal "message-id", result[4].name
|
152
|
-
assert_equal "<020906002550300.249@examples.com>", result[4].value
|
153
|
-
|
154
|
-
assert_equal "date", result[5].name
|
155
|
-
assert_equal "fri, 06 sep 2002 00:25:21 -0300", result[5].value
|
156
|
-
|
157
|
-
assert_equal "content-type", result[6].name
|
158
|
-
assert_equal "multipart/signed", result[6].value
|
159
|
-
|
160
|
-
assert_equal "micalg", result[6].params[0].param_name
|
161
|
-
assert_equal "SHA1", result[6].params[0].param_value
|
162
|
-
|
163
|
-
assert_equal "boundary", result[6].params[1].param_name
|
164
|
-
assert_equal "----=_NextBoundry____Fri,_06_Sep_2002_00:25:21", result[6].params[1].param_value
|
165
|
-
|
166
|
-
assert_equal "protocol", result[6].params[2].param_name
|
167
|
-
assert_equal "application/pkcs7-signature", result[6].params[2].param_value
|
168
|
-
|
169
|
-
assert_equal 3, result[6].params.length
|
170
|
-
assert_equal 7, result.length
|
171
|
-
end
|
172
|
-
end
|
173
|
-
end
|