net-ldap 0.1.1 → 0.2
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.
Potentially problematic release.
This version of net-ldap might be problematic. Click here for more details.
- data/.autotest +11 -0
- data/.gemtest +0 -0
- data/.rspec +2 -0
- data/Contributors.rdoc +21 -0
- data/Hacking.rdoc +68 -0
- data/{History.txt → History.rdoc} +65 -1
- data/License.rdoc +29 -0
- data/Manifest.txt +25 -14
- data/README.rdoc +52 -0
- data/Rakefile +52 -96
- data/autotest/discover.rb +1 -0
- data/lib/net-ldap.rb +1 -0
- data/lib/net/ber.rb +302 -81
- data/lib/net/ber/ber_parser.rb +153 -97
- data/lib/net/ber/core_ext.rb +62 -0
- data/lib/net/ber/core_ext/array.rb +82 -0
- data/lib/net/ber/core_ext/bignum.rb +22 -0
- data/lib/net/ber/core_ext/false_class.rb +10 -0
- data/lib/net/ber/core_ext/fixnum.rb +66 -0
- data/lib/net/ber/core_ext/string.rb +48 -0
- data/lib/net/ber/core_ext/true_class.rb +12 -0
- data/lib/net/ldap.rb +1455 -1475
- data/lib/net/ldap/dataset.rb +134 -79
- data/lib/net/ldap/dn.rb +225 -0
- data/lib/net/ldap/entry.rb +168 -249
- data/lib/net/ldap/filter.rb +654 -387
- data/lib/net/ldap/password.rb +31 -0
- data/lib/net/ldap/pdu.rb +232 -233
- data/lib/net/snmp.rb +4 -31
- data/net-ldap.gemspec +59 -0
- data/spec/integration/ssl_ber_spec.rb +3 -0
- data/spec/spec_helper.rb +2 -2
- data/spec/unit/ber/ber_spec.rb +82 -6
- data/spec/unit/ber/core_ext/string_spec.rb +51 -0
- data/spec/unit/ldap/dn_spec.rb +80 -0
- data/spec/unit/ldap/entry_spec.rb +51 -0
- data/spec/unit/ldap/filter_spec.rb +84 -0
- data/spec/unit/ldap_spec.rb +48 -0
- data/test/test_entry.rb +54 -2
- data/test/test_filter.rb +93 -54
- data/test/test_ldap_connection.rb +24 -0
- data/test/test_ldif.rb +31 -23
- data/test/test_rename.rb +77 -0
- data/test/test_snmp.rb +34 -33
- metadata +88 -52
- data/COPYING +0 -272
- data/LICENSE +0 -56
- data/README.txt +0 -68
- data/lib/net/ldap/core_ext/all.rb +0 -43
- data/lib/net/ldap/core_ext/array.rb +0 -42
- data/lib/net/ldap/core_ext/bignum.rb +0 -25
- data/lib/net/ldap/core_ext/false_class.rb +0 -11
- data/lib/net/ldap/core_ext/fixnum.rb +0 -74
- data/lib/net/ldap/core_ext/string.rb +0 -40
- data/lib/net/ldap/core_ext/true_class.rb +0 -11
- data/lib/net/ldap/psw.rb +0 -57
- data/lib/net/ldif.rb +0 -34
- data/test/test_ber.rb +0 -78
data/test/test_ber.rb
DELETED
@@ -1,78 +0,0 @@
|
|
1
|
-
# encoding: ASCII-8BIT
|
2
|
-
require 'common'
|
3
|
-
|
4
|
-
class TestBer < Test::Unit::TestCase
|
5
|
-
|
6
|
-
def test_encode_boolean
|
7
|
-
assert_equal( "\x01\x01\x01", true.to_ber ) # should actually be: 01 01 ff
|
8
|
-
assert_equal( "\x01\x01\x00", false.to_ber )
|
9
|
-
end
|
10
|
-
|
11
|
-
#def test_encode_nil
|
12
|
-
# assert_equal( "\x05\x00", nil.to_ber )
|
13
|
-
#end
|
14
|
-
|
15
|
-
def test_encode_integer
|
16
|
-
|
17
|
-
# Fixnum
|
18
|
-
#
|
19
|
-
#assert_equal( "\x02\x02\x96\x46", -27_066.to_ber )
|
20
|
-
#assert_equal( "\x02\x02\xFF\x7F", -129.to_ber )
|
21
|
-
#assert_equal( "\x02\x01\x80", -128.to_ber )
|
22
|
-
#assert_equal( "\x02\x01\xFF", -1.to_ber )
|
23
|
-
|
24
|
-
assert_equal( "\x02\x01\x00", 0.to_ber )
|
25
|
-
assert_equal( "\x02\x01\x01", 1.to_ber )
|
26
|
-
assert_equal( "\x02\x01\x7F", 127.to_ber )
|
27
|
-
assert_equal( "\x02\x01\x80", 128.to_ber )
|
28
|
-
assert_equal( "\x02\x01\xFF", 255.to_ber )
|
29
|
-
|
30
|
-
assert_equal( "\x02\x02\x01\x00", 256.to_ber )
|
31
|
-
assert_equal( "\x02\x02\xFF\xFF", 65535.to_ber )
|
32
|
-
|
33
|
-
assert_equal( "\x02\x03\x01\x00\x00", 65536.to_ber )
|
34
|
-
assert_equal( "\x02\x03\xFF\xFF\xFF", 16_777_215.to_ber )
|
35
|
-
|
36
|
-
assert_equal( "\x02\x04\x01\x00\x00\x00", 0x01000000.to_ber )
|
37
|
-
assert_equal( "\x02\x04\x3F\xFF\xFF\xFF", 0x3FFFFFFF.to_ber )
|
38
|
-
|
39
|
-
# Bignum
|
40
|
-
#
|
41
|
-
assert_equal( "\x02\x04\x4F\xFF\xFF\xFF", 0x4FFFFFFF.to_ber )
|
42
|
-
#assert_equal( "\x02\x05\x00\xFF\xFF\xFF\xFF", 0xFFFFFFFF.to_ber )
|
43
|
-
end
|
44
|
-
|
45
|
-
# TOD Add some much bigger numbers
|
46
|
-
# 5000000000 is a Bignum, which hits different code.
|
47
|
-
def test_ber_integers
|
48
|
-
assert_equal( "\002\001\005", 5.to_ber )
|
49
|
-
assert_equal( "\002\002\001\364", 500.to_ber )
|
50
|
-
assert_equal( "\x02\x02\xC3P", 50000.to_ber )
|
51
|
-
assert_equal( "\002\005\001*\005\362\000", 5000000000.to_ber )
|
52
|
-
end
|
53
|
-
|
54
|
-
def test_ber_bignums
|
55
|
-
# Some of these values are Fixnums and some are Bignums. Different BER code.
|
56
|
-
100.times do |p|
|
57
|
-
n = 2 << p
|
58
|
-
assert_equal(n, n.to_ber.read_ber, "2**#{p} could not be read back")
|
59
|
-
|
60
|
-
n = 5 * 10**p
|
61
|
-
assert_equal(n, n.to_ber.read_ber)
|
62
|
-
end
|
63
|
-
end
|
64
|
-
|
65
|
-
def test_ber_parsing
|
66
|
-
assert_equal( 6, "\002\001\006".read_ber( Net::LDAP::AsnSyntax ))
|
67
|
-
assert_equal( "testing", "\004\007testing".read_ber( Net::LDAP::AsnSyntax ))
|
68
|
-
end
|
69
|
-
|
70
|
-
def test_ber_parser_on_ldap_bind_request
|
71
|
-
s = StringIO.new(
|
72
|
-
"0$\002\001\001`\037\002\001\003\004\rAdministrator\200\vad_is_bogus" )
|
73
|
-
|
74
|
-
assert_equal(
|
75
|
-
[1, [3, "Administrator", "ad_is_bogus"]],
|
76
|
-
s.read_ber( Net::LDAP::AsnSyntax ))
|
77
|
-
end
|
78
|
-
end
|