net-ldap 0.15.0 → 0.19.0

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.
Files changed (71) hide show
  1. checksums.yaml +5 -5
  2. data/History.rdoc +76 -0
  3. data/README.rdoc +18 -8
  4. data/lib/net/ber/ber_parser.rb +3 -3
  5. data/lib/net/ber/core_ext.rb +6 -6
  6. data/lib/net/ber.rb +5 -6
  7. data/lib/net/ldap/auth_adapter/gss_spnego.rb +2 -2
  8. data/lib/net/ldap/auth_adapter/sasl.rb +4 -2
  9. data/lib/net/ldap/auth_adapter/simple.rb +1 -1
  10. data/lib/net/ldap/connection.rb +57 -46
  11. data/lib/net/ldap/dataset.rb +1 -3
  12. data/lib/net/ldap/dn.rb +21 -30
  13. data/lib/net/ldap/entry.rb +15 -7
  14. data/lib/net/ldap/error.rb +2 -26
  15. data/lib/net/ldap/filter.rb +10 -3
  16. data/lib/net/ldap/instrumentation.rb +2 -2
  17. data/lib/net/ldap/password.rb +7 -5
  18. data/lib/net/ldap/pdu.rb +1 -1
  19. data/lib/net/ldap/version.rb +1 -1
  20. data/lib/net/ldap.rb +93 -58
  21. data/lib/net/snmp.rb +1 -1
  22. data/lib/net-ldap.rb +1 -1
  23. metadata +16 -101
  24. data/.gitignore +0 -9
  25. data/.rubocop.yml +0 -17
  26. data/.rubocop_todo.yml +0 -599
  27. data/.travis.yml +0 -33
  28. data/CONTRIBUTING.md +0 -54
  29. data/Gemfile +0 -2
  30. data/Rakefile +0 -23
  31. data/net-ldap.gemspec +0 -37
  32. data/script/changelog +0 -47
  33. data/script/install-openldap +0 -115
  34. data/script/package +0 -7
  35. data/script/release +0 -16
  36. data/test/ber/core_ext/test_array.rb +0 -22
  37. data/test/ber/core_ext/test_string.rb +0 -25
  38. data/test/ber/test_ber.rb +0 -153
  39. data/test/fixtures/cacert.pem +0 -20
  40. data/test/fixtures/openldap/memberof.ldif +0 -33
  41. data/test/fixtures/openldap/retcode.ldif +0 -76
  42. data/test/fixtures/openldap/slapd.conf.ldif +0 -67
  43. data/test/fixtures/seed.ldif +0 -374
  44. data/test/integration/test_add.rb +0 -28
  45. data/test/integration/test_ber.rb +0 -30
  46. data/test/integration/test_bind.rb +0 -42
  47. data/test/integration/test_delete.rb +0 -31
  48. data/test/integration/test_open.rb +0 -88
  49. data/test/integration/test_password_modify.rb +0 -80
  50. data/test/integration/test_return_codes.rb +0 -38
  51. data/test/integration/test_search.rb +0 -77
  52. data/test/support/vm/openldap/.gitignore +0 -1
  53. data/test/support/vm/openldap/README.md +0 -32
  54. data/test/support/vm/openldap/Vagrantfile +0 -33
  55. data/test/test_auth_adapter.rb +0 -15
  56. data/test/test_dn.rb +0 -44
  57. data/test/test_entry.rb +0 -65
  58. data/test/test_filter.rb +0 -223
  59. data/test/test_filter_parser.rb +0 -24
  60. data/test/test_helper.rb +0 -66
  61. data/test/test_ldap.rb +0 -114
  62. data/test/test_ldap_connection.rb +0 -493
  63. data/test/test_ldif.rb +0 -104
  64. data/test/test_password.rb +0 -10
  65. data/test/test_rename.rb +0 -77
  66. data/test/test_search.rb +0 -39
  67. data/test/test_snmp.rb +0 -119
  68. data/test/test_ssl_ber.rb +0 -40
  69. data/test/testdata.ldif +0 -101
  70. data/testserver/ldapserver.rb +0 -209
  71. data/testserver/testdata.ldif +0 -101
data/net-ldap.gemspec DELETED
@@ -1,37 +0,0 @@
1
- # -*- encoding: utf-8 -*-
2
- lib = File.expand_path('../lib', __FILE__)
3
- $LOAD_PATH.unshift(lib) unless $LOAD_PATH.include?(lib)
4
- require 'net/ldap/version'
5
-
6
- Gem::Specification.new do |s|
7
- s.name = %q{net-ldap}
8
- s.version = Net::LDAP::VERSION
9
- s.license = "MIT"
10
- s.authors = ["Francis Cianfrocca", "Emiel van de Laar", "Rory O'Connell", "Kaspar Schiess", "Austin Ziegler", "Michael Schaarschmidt"]
11
- s.description = %q{Net::LDAP for Ruby (also called net-ldap) implements client access for the
12
- Lightweight Directory Access Protocol (LDAP), an IETF standard protocol for
13
- accessing distributed directory services. Net::LDAP is written completely in
14
- Ruby with no external dependencies. It supports most LDAP client features and a
15
- subset of server features as well.
16
-
17
- Net::LDAP has been tested against modern popular LDAP servers including
18
- OpenLDAP and Active Directory. The current release is mostly compliant with
19
- earlier versions of the IETF LDAP RFCs (2251-2256, 2829-2830, 3377, and 3771).
20
- Our roadmap for Net::LDAP 1.0 is to gain full <em>client</em> compliance with
21
- the most recent LDAP RFCs (4510-4519, plutions of 4520-4532).}
22
- s.email = ["blackhedd@rubyforge.org", "gemiel@gmail.com", "rory.ocon@gmail.com", "kaspar.schiess@absurd.li", "austin@rubyforge.org"]
23
- s.extra_rdoc_files = ["Contributors.rdoc", "Hacking.rdoc", "History.rdoc", "License.rdoc", "README.rdoc"]
24
- s.files = `git ls-files`.split $/
25
- s.test_files = s.files.grep(%r{^test})
26
- s.homepage = %q{http://github.com/ruby-ldap/ruby-net-ldap}
27
- s.rdoc_options = ["--main", "README.rdoc"]
28
- s.require_paths = ["lib"]
29
- s.required_ruby_version = ">= 2.0.0"
30
- s.summary = %q{Net::LDAP for Ruby (also called net-ldap) implements client access for the Lightweight Directory Access Protocol (LDAP), an IETF standard protocol for accessing distributed directory services}
31
-
32
- s.add_development_dependency("flexmock", "~> 1.3")
33
- s.add_development_dependency("rake", "~> 10.0")
34
- s.add_development_dependency("rubocop", "~> 0.28.0")
35
- s.add_development_dependency("test-unit")
36
- s.add_development_dependency("byebug")
37
- end
data/script/changelog DELETED
@@ -1,47 +0,0 @@
1
- #!/bin/bash
2
- # Usage: script/changelog [-r <repo>] [-b <base>] [-h <head>]
3
- #
4
- # repo: BASE string of GitHub REPOsitory url. e.g. "user_or_org/REPOsitory". Defaults to git remote url.
5
- # base: git ref to compare from. e.g. "v1.3.1". Defaults to latest git tag.
6
- # head: git ref to compare to. Defaults to "HEAD".
7
- #
8
- # Generate a changelog preview from pull requests merged between `base` and
9
- # `head`.
10
- #
11
- # https://github.com/jch/release-scripts/blob/master/changelog
12
- set -e
13
-
14
- [ $# -eq 0 ] && set -- --help
15
- while [[ $# > 1 ]]
16
- do
17
- key="$1"
18
- case $key in
19
- -r|--repo)
20
- repo="$2"
21
- shift
22
- ;;
23
- -b|--base)
24
- base="$2"
25
- shift
26
- ;;
27
- -h|--head)
28
- head="$2"
29
- shift
30
- ;;
31
- *)
32
- ;;
33
- esac
34
- shift
35
- done
36
-
37
- repo="${repo:-$(git remote -v | grep push | awk '{print $2}' | cut -d'/' -f4- | sed 's/\.git//')}"
38
- base="${base:-$(git tag -l | sort -t. -k 1,1n -k 2,2n -k 3,3n | tail -n 1)}"
39
- head="${head:-HEAD}"
40
- api_url="https://api.github.com"
41
-
42
- # get merged PR's. Better way is to query the API for these, but this is easier
43
- for pr in $(git log --oneline $base..$head | grep "Merge pull request" | awk '{gsub("#",""); print $5}')
44
- do
45
- # frustrated with trying to pull out the right values, fell back to ruby
46
- curl -s "$api_url/repos/$repo/pulls/$pr" | ruby -rjson -e 'pr=JSON.parse(STDIN.read); puts "* #{pr[%q(title)]} {##{pr[%q(number)]}}[#{pr[%q(html_url)]}]"'
47
- done
@@ -1,115 +0,0 @@
1
- #!/usr/bin/env sh
2
- set -e
3
- set -x
4
-
5
- BASE_PATH="$( cd `dirname $0`/../test/fixtures/openldap && pwd )"
6
- SEED_PATH="$( cd `dirname $0`/../test/fixtures && pwd )"
7
-
8
- dpkg -s slapd time ldap-utils gnutls-bin ssl-cert > /dev/null ||\
9
- DEBIAN_FRONTEND=noninteractive apt-get update -y --force-yes && \
10
- DEBIAN_FRONTEND=noninteractive apt-get install -y --force-yes slapd time ldap-utils gnutls-bin ssl-cert
11
-
12
- /etc/init.d/slapd stop
13
-
14
- TMPDIR=$(mktemp -d)
15
- cd $TMPDIR
16
-
17
- # Delete data and reconfigure.
18
- cp -v /var/lib/ldap/DB_CONFIG ./DB_CONFIG
19
- rm -rf /etc/ldap/slapd.d/*
20
- rm -rf /var/lib/ldap/*
21
- cp -v ./DB_CONFIG /var/lib/ldap/DB_CONFIG
22
- slapadd -F /etc/ldap/slapd.d -b "cn=config" -l $BASE_PATH/slapd.conf.ldif
23
- # Load memberof and ref-int overlays and configure them.
24
- slapadd -F /etc/ldap/slapd.d -b "cn=config" -l $BASE_PATH/memberof.ldif
25
- # Load retcode overlay and configure
26
- slapadd -F /etc/ldap/slapd.d -b "cn=config" -l $BASE_PATH/retcode.ldif
27
-
28
- # Add base domain.
29
- slapadd -F /etc/ldap/slapd.d <<EOM
30
- dn: dc=rubyldap,dc=com
31
- objectClass: top
32
- objectClass: domain
33
- dc: rubyldap
34
- EOM
35
-
36
- chown -R openldap.openldap /etc/ldap/slapd.d
37
- chown -R openldap.openldap /var/lib/ldap
38
-
39
- /etc/init.d/slapd start
40
-
41
- # Import seed data.
42
- # NOTE: use ldapadd in order for memberOf and refint to apply, instead of:
43
- # cat $SEED_PATH/seed.ldif | slapadd -F /etc/ldap/slapd.d
44
- /usr/bin/time ldapadd -x -D "cn=admin,dc=rubyldap,dc=com" -w passworD1 \
45
- -h localhost -p 389 \
46
- -f $SEED_PATH/seed.ldif
47
-
48
- rm -rf $TMPDIR
49
-
50
- # SSL
51
-
52
- sh -c "certtool --generate-privkey > /etc/ssl/private/cakey.pem"
53
-
54
- sh -c "cat > /etc/ssl/ca.info <<EOF
55
- cn = rubyldap
56
- ca
57
- cert_signing_key
58
- EOF"
59
-
60
- # Create the self-signed CA certificate:
61
- certtool --generate-self-signed \
62
- --load-privkey /etc/ssl/private/cakey.pem \
63
- --template /etc/ssl/ca.info \
64
- --outfile /etc/ssl/certs/cacert.pem
65
-
66
- # Make a private key for the server:
67
- certtool --generate-privkey \
68
- --bits 1024 \
69
- --outfile /etc/ssl/private/ldap01_slapd_key.pem
70
-
71
- sh -c "cat > /etc/ssl/ldap01.info <<EOF
72
- organization = Example Company
73
- cn = ldap01.example.com
74
- tls_www_server
75
- encryption_key
76
- signing_key
77
- expiration_days = 3650
78
- EOF"
79
-
80
- # Create the server certificate
81
- certtool --generate-certificate \
82
- --load-privkey /etc/ssl/private/ldap01_slapd_key.pem \
83
- --load-ca-certificate /etc/ssl/certs/cacert.pem \
84
- --load-ca-privkey /etc/ssl/private/cakey.pem \
85
- --template /etc/ssl/ldap01.info \
86
- --outfile /etc/ssl/certs/ldap01_slapd_cert.pem
87
-
88
- ldapmodify -Y EXTERNAL -H ldapi:/// <<EOF | true
89
- dn: cn=config
90
- add: olcTLSCACertificateFile
91
- olcTLSCACertificateFile: /etc/ssl/certs/cacert.pem
92
- -
93
- add: olcTLSCertificateFile
94
- olcTLSCertificateFile: /etc/ssl/certs/ldap01_slapd_cert.pem
95
- -
96
- add: olcTLSCertificateKeyFile
97
- olcTLSCertificateKeyFile: /etc/ssl/private/ldap01_slapd_key.pem
98
- EOF
99
-
100
- # LDAP over TLS/SSL (ldaps://) is deprecated in favour of StartTLS. The latter
101
- # refers to an existing LDAP session (listening on TCP port 389) becoming
102
- # protected by TLS/SSL whereas LDAPS, like HTTPS, is a distinct
103
- # encrypted-from-the-start protocol that operates over TCP port 636. But we
104
- # enable it for testing here.
105
- sed -i -e 's|^SLAPD_SERVICES="\(.*\)"|SLAPD_SERVICES="ldap:/// ldapi:/// ldaps:///"|' /etc/default/slapd
106
-
107
- adduser openldap ssl-cert
108
- chgrp ssl-cert /etc/ssl/private/ldap01_slapd_key.pem
109
- chmod g+r /etc/ssl/private/ldap01_slapd_key.pem
110
- chmod o-r /etc/ssl/private/ldap01_slapd_key.pem
111
-
112
- # Drop packets on a secondary port used to specific timeout tests
113
- iptables -A OUTPUT -p tcp -j DROP --dport 8389
114
-
115
- service slapd restart
data/script/package DELETED
@@ -1,7 +0,0 @@
1
- #!/usr/bin/env bash
2
- # Usage: script/package
3
- # Updates the gemspec and builds a new gem in the pkg directory.
4
-
5
- mkdir -p pkg
6
- gem build *.gemspec
7
- mv *.gem pkg
data/script/release DELETED
@@ -1,16 +0,0 @@
1
- #!/usr/bin/env bash
2
- # Usage: script/release
3
- # Build the package, tag a commit, push it to origin, and then release the
4
- # package publicly.
5
-
6
- set -e
7
-
8
- version="$(script/package | grep Version: | awk '{print $2}')"
9
- [ -n "$version" ] || exit 1
10
-
11
- echo $version
12
- git commit --allow-empty -a -m "Release $version"
13
- git tag "v$version"
14
- git push origin
15
- git push origin "v$version"
16
- gem push pkg/*-${version}.gem
@@ -1,22 +0,0 @@
1
- require_relative '../../test_helper'
2
-
3
- class TestBERArrayExtension < Test::Unit::TestCase
4
- def test_control_code_array
5
- control_codes = []
6
- control_codes << ['1.2.3'.to_ber, true.to_ber].to_ber_sequence
7
- control_codes << ['1.7.9'.to_ber, false.to_ber].to_ber_sequence
8
- control_codes = control_codes.to_ber_sequence
9
- res = [['1.2.3', true], ['1.7.9', false]].to_ber_control
10
- assert_equal control_codes, res
11
- end
12
-
13
- def test_wrap_array_if_not_nested
14
- result1 = ['1.2.3', true].to_ber_control
15
- result2 = [['1.2.3', true]].to_ber_control
16
- assert_equal result2, result1
17
- end
18
-
19
- def test_empty_string_if_empty_array
20
- assert_equal "", [].to_ber_control
21
- end
22
- end
@@ -1,25 +0,0 @@
1
- require_relative '../../test_helper'
2
-
3
- class TestBERStringExtension < Test::Unit::TestCase
4
- def setup
5
- @bind_request = "0$\002\001\001`\037\002\001\003\004\rAdministrator\200\vad_is_bogus UNCONSUMED".b
6
- @result = @bind_request.read_ber!(Net::LDAP::AsnSyntax)
7
- end
8
-
9
- def test_parse_ber
10
- assert_equal [1, [3, "Administrator", "ad_is_bogus"]], @result
11
- end
12
-
13
- def test_unconsumed_message
14
- assert_equal " UNCONSUMED", @bind_request
15
- end
16
-
17
- def test_exception_does_not_modify_string
18
- original = "0$\002\001\001`\037\002\001\003\004\rAdministrator\200\vad_is_bogus".b
19
- duplicate = original.dup
20
- flexmock(StringIO).new_instances.should_receive(:read_ber).and_raise(Net::BER::BerError)
21
- duplicate.read_ber!(Net::LDAP::AsnSyntax) rescue Net::BER::BerError
22
-
23
- assert_equal original, duplicate
24
- end
25
- end
data/test/ber/test_ber.rb DELETED
@@ -1,153 +0,0 @@
1
- require_relative '../test_helper'
2
-
3
- class TestBEREncoding < Test::Unit::TestCase
4
- def test_empty_array
5
- assert_equal [], [].to_ber.read_ber
6
- end
7
-
8
- def test_array
9
- ary = [1, 2, 3]
10
- encoded_ary = ary.map(&:to_ber).to_ber
11
-
12
- assert_equal ary, encoded_ary.read_ber
13
- end
14
-
15
- # http://tools.ietf.org/html/rfc4511#section-5.1
16
- def test_true
17
- assert_equal "\x01\x01\xFF".b, true.to_ber
18
- end
19
-
20
- def test_false
21
- assert_equal "\x01\x01\x00", false.to_ber
22
- end
23
-
24
- # Sample based
25
- {
26
- 0 => "\x02\x01\x00",
27
- 1 => "\x02\x01\x01",
28
- 127 => "\x02\x01\x7F",
29
- 128 => "\x02\x02\x00\x80",
30
- 255 => "\x02\x02\x00\xFF",
31
- 256 => "\x02\x02\x01\x00",
32
- 65535 => "\x02\x03\x00\xFF\xFF",
33
- 65536 => "\x02\x03\x01\x00\x00",
34
- 8388607 => "\x02\x03\x7F\xFF\xFF",
35
- 8388608 => "\x02\x04\x00\x80\x00\x00",
36
- 16_777_215 => "\x02\x04\x00\xFF\xFF\xFF",
37
- 0x01000000 => "\x02\x04\x01\x00\x00\x00",
38
- 0x3FFFFFFF => "\x02\x04\x3F\xFF\xFF\xFF",
39
- 0x4FFFFFFF => "\x02\x04\x4F\xFF\xFF\xFF",
40
-
41
- # Some odd samples...
42
- 5 => "\x02\x01\x05",
43
- 500 => "\x02\x02\x01\xf4",
44
- 50_000 => "\x02\x03\x00\xC3\x50",
45
- 5_000_000_000 => "\x02\x05\x01\x2a\x05\xF2\x00",
46
-
47
- # negatives
48
- -1 => "\x02\x01\xFF",
49
- -127 => "\x02\x01\x81",
50
- -128 => "\x02\x01\x80",
51
- -255 => "\x02\x02\xFF\x01",
52
- -256 => "\x02\x02\xFF\x00",
53
- -65535 => "\x02\x03\xFF\x00\x01",
54
- -65536 => "\x02\x03\xFF\x00\x00",
55
- -65537 => "\x02\x03\xFE\xFF\xFF",
56
- -8388607 => "\x02\x03\x80\x00\x01",
57
- -8388608 => "\x02\x03\x80\x00\x00",
58
- -16_777_215 => "\x02\x04\xFF\x00\x00\x01",
59
- }.each do |number, expected_encoding|
60
- define_method "test_encode_#{number}" do
61
- assert_equal expected_encoding.b, number.to_ber
62
- end
63
-
64
- define_method "test_decode_encoded_#{number}" do
65
- assert_equal number, expected_encoding.b.read_ber
66
- end
67
- end
68
-
69
- # Round-trip encoding: This is mostly to be sure to cover Bignums well.
70
- def test_powers_of_two
71
- 100.times do |p|
72
- n = 2 << p
73
-
74
- assert_equal n, n.to_ber.read_ber
75
- end
76
- end
77
-
78
- def test_powers_of_ten
79
- 100.times do |p|
80
- n = 5 * 10**p
81
-
82
- assert_equal n, n.to_ber.read_ber
83
- end
84
- end
85
-
86
- if "Ruby 1.9".respond_to?(:encoding)
87
- def test_encode_utf8_strings
88
- assert_equal "\x04\x02\xC3\xA5".b, "\u00e5".force_encoding("UTF-8").to_ber
89
- end
90
-
91
- def test_utf8_encodable_strings
92
- assert_equal "\x04\nteststring", "teststring".encode("US-ASCII").to_ber
93
- end
94
-
95
- def test_encode_binary_data
96
- # This is used for searching for GUIDs in Active Directory
97
- assert_equal "\x04\x10" + "j1\xB4\xA1*\xA2zA\xAC\xA9`?'\xDDQ\x16".b,
98
- ["6a31b4a12aa27a41aca9603f27dd5116"].pack("H*").to_ber_bin
99
- end
100
-
101
- def test_non_utf8_encodable_strings
102
- assert_equal "\x04\x01\x81".b, "\x81".to_ber
103
- end
104
- end
105
- end
106
-
107
- class TestBERDecoding < Test::Unit::TestCase
108
- def test_decode_number
109
- assert_equal 6, "\002\001\006".read_ber(Net::LDAP::AsnSyntax)
110
- end
111
-
112
- def test_decode_string
113
- assert_equal "testing", "\004\007testing".read_ber(Net::LDAP::AsnSyntax)
114
- end
115
-
116
- def test_decode_ldap_bind_request
117
- assert_equal [1, [3, "Administrator", "ad_is_bogus"]], "0$\002\001\001`\037\002\001\003\004\rAdministrator\200\vad_is_bogus".read_ber(Net::LDAP::AsnSyntax)
118
- end
119
- end
120
-
121
- class TestBERIdentifiedString < Test::Unit::TestCase
122
- def test_binary_data
123
- data = ["6a31b4a12aa27a41aca9603f27dd5116"].pack("H*").force_encoding("ASCII-8BIT")
124
- bis = Net::BER::BerIdentifiedString.new(data)
125
-
126
- assert bis.valid_encoding?, "should be a valid encoding"
127
- assert_equal "ASCII-8BIT", bis.encoding.name
128
- end
129
-
130
- def test_ascii_data_in_utf8
131
- data = "some text".force_encoding("UTF-8")
132
- bis = Net::BER::BerIdentifiedString.new(data)
133
-
134
- assert bis.valid_encoding?, "should be a valid encoding"
135
- assert_equal "UTF-8", bis.encoding.name
136
- end
137
-
138
- def test_umlaut_data_in_utf8
139
- data = "Müller".force_encoding("UTF-8")
140
- bis = Net::BER::BerIdentifiedString.new(data)
141
-
142
- assert bis.valid_encoding?, "should be a valid encoding"
143
- assert_equal "UTF-8", bis.encoding.name
144
- end
145
-
146
- def test_utf8_data_in_utf8
147
- data = ["e4b8ad"].pack("H*").force_encoding("UTF-8")
148
- bis = Net::BER::BerIdentifiedString.new(data)
149
-
150
- assert bis.valid_encoding?, "should be a valid encoding"
151
- assert_equal "UTF-8", bis.encoding.name
152
- end
153
- end
@@ -1,20 +0,0 @@
1
- -----BEGIN CERTIFICATE-----
2
- MIIDRzCCAf+gAwIBAgIEVHpbmjANBgkqhkiG9w0BAQsFADATMREwDwYDVQQDEwhy
3
- dWJ5bGRhcDAeFw0xNDExMjkyMzQ5NDZaFw0xNTExMjkyMzQ5NDZaMBMxETAPBgNV
4
- BAMTCHJ1YnlsZGFwMIIBUjANBgkqhkiG9w0BAQEFAAOCAT8AMIIBOgKCATEA4pKe
5
- cDCNuL53fkpO/WSAS+gmMTsOs+oOK71kZlk2QT/MBz8TxC6m358qCADjnXcMVVxa
6
- ySQbQlVKZMkIvLNciZbiLDgC5II0NbHACNa8rqenoKRjS4J9W3OhA8EmnXn/Me+8
7
- uMCI9tfnKNRZYdkQZlra4I+Idn+xYfl/5q5b/7ZjPS2zY/585hFEYE+5vfOZVBSU
8
- 3HMNSeuJvTehLv7dD7aQfXNM4cRgHXequkJQ/HLLFAO4AgJ+LJrFWpj7GWz3crgr
9
- 9G5px4T78wJH3NQiOsG6UBXPw8c4T+Z6GAWX2l1zs1gZsaiCVbAraqK3404lL7yp
10
- +ThbsW3ifzgNPhmjScXBLdbEDrrAKosW7kkTOGzxiMCBmNlj2SKhcztoduAtfF1f
11
- Fs2Jk8MRTHwO8ThD7wIDAQABo0MwQTAPBgNVHRMBAf8EBTADAQH/MA8GA1UdDwEB
12
- /wQFAwMHBAAwHQYDVR0OBBYEFJDm67ekyFu4/Z7VcO6Vk/5pinGcMA0GCSqGSIb3
13
- DQEBCwUAA4IBMQDHeEPzfYRtjynpUKyrtxx/6ZVOfCLuz4eHkBZggz/pJacDCv/a
14
- I//W03XCk8RWq/fWVVUzvxXgPwnYcw992PLM7XW81zp6ruRUDWooYnjHZZz3bRhe
15
- kC4QvM2mZhcsMVmhmWWKZn81qXgVdUY1XNRhk87cuXjF/UTpEieFvWAsCUkFZkqB
16
- AmySCuI/FuPaauT1YAltkIlYAEIGNJGZDMf2BTVUQpXhTXeS9/AZWLNDBwiq+fwo
17
- YYnsr9MnBXCEmg1gVSR/Ay2AZmbYfiYtb5kU8uq2lSWAUb4LX6HZl82wo3OilrJ2
18
- WXl6Qf+Fcy4qqkRt4AKHjtzizpEDCOVYuuG0Zoy+QnxNXRsEzpb8ymnJFrcgYfk/
19
- 6Lv2gWAFl5FqCZp7gBWg55eL2coT4C+mbNTF
20
- -----END CERTIFICATE-----
@@ -1,33 +0,0 @@
1
- dn: cn=module,cn=config
2
- cn: module
3
- objectClass: olcModuleList
4
- objectClass: top
5
- olcModulePath: /usr/lib/ldap
6
- olcModuleLoad: memberof.la
7
-
8
- dn: olcOverlay={0}memberof,olcDatabase={1}hdb,cn=config
9
- objectClass: olcConfig
10
- objectClass: olcMemberOf
11
- objectClass: olcOverlayConfig
12
- objectClass: top
13
- olcOverlay: memberof
14
- olcMemberOfDangling: ignore
15
- olcMemberOfRefInt: TRUE
16
- olcMemberOfGroupOC: groupOfNames
17
- olcMemberOfMemberAD: member
18
- olcMemberOfMemberOfAD: memberOf
19
-
20
- dn: cn=module,cn=config
21
- cn: module
22
- objectclass: olcModuleList
23
- objectclass: top
24
- olcmoduleload: refint.la
25
- olcmodulepath: /usr/lib/ldap
26
-
27
- dn: olcOverlay={1}refint,olcDatabase={1}hdb,cn=config
28
- objectClass: olcConfig
29
- objectClass: olcOverlayConfig
30
- objectClass: olcRefintConfig
31
- objectClass: top
32
- olcOverlay: {1}refint
33
- olcRefintAttribute: memberof member manager owner
@@ -1,76 +0,0 @@
1
- dn: cn=module,cn=config
2
- cn: module
3
- objectClass: olcModuleList
4
- objectClass: top
5
- olcModulePath: /usr/lib/ldap
6
- olcModuleLoad: retcode.la
7
-
8
- # source: http://www.opensource.apple.com/source/OpenLDAP/OpenLDAP-186/OpenLDAP/tests/data/retcode.conf?txt
9
-
10
- dn: olcOverlay={2}retcode,olcDatabase={1}hdb,cn=config
11
- objectClass: olcConfig
12
- objectClass: olcRetcodeConfig
13
- objectClass: olcOverlayConfig
14
- objectClass: top
15
- olcOverlay: retcode
16
- olcRetcodeParent: ou=Retcodes,dc=rubyldap,dc=com
17
- olcRetcodeInDir: TRUE
18
- olcRetcodeSleep: 0
19
- olcRetcodeItem: "cn=success" 0x00
20
- olcRetcodeItem: "cn=success w/ delay" 0x00 sleeptime=2
21
- olcRetcodeItem: "cn=operationsError" 0x01
22
- olcRetcodeItem: "cn=protocolError" 0x02
23
- olcRetcodeItem: "cn=timeLimitExceeded" 0x03 op=search
24
- olcRetcodeItem: "cn=sizeLimitExceeded" 0x04 op=search
25
- olcRetcodeItem: "cn=compareFalse" 0x05 op=compare
26
- olcRetcodeItem: "cn=compareTrue" 0x06 op=compare
27
- olcRetcodeItem: "cn=authMethodNotSupported" 0x07
28
- olcRetcodeItem: "cn=strongAuthNotSupported" 0x07 text="same as authMethodNotSupported"
29
- olcRetcodeItem: "cn=strongAuthRequired" 0x08
30
- olcRetcodeItem: "cn=strongerAuthRequired" 0x08 text="same as strongAuthRequired"
31
- olcRetcodeItem: "cn=referral" 0x0a text="LDAPv3" ref="ldap://:9019"
32
- olcRetcodeItem: "cn=adminLimitExceeded" 0x0b text="LDAPv3"
33
- olcRetcodeItem: "cn=unavailableCriticalExtension" 0x0c text="LDAPv3"
34
- olcRetcodeItem: "cn=confidentialityRequired" 0x0d text="LDAPv3"
35
- olcRetcodeItem: "cn=saslBindInProgress" 0x0e text="LDAPv3"
36
- olcRetcodeItem: "cn=noSuchAttribute" 0x10
37
- olcRetcodeItem: "cn=undefinedAttributeType" 0x11
38
- olcRetcodeItem: "cn=inappropriateMatching" 0x12
39
- olcRetcodeItem: "cn=constraintViolation" 0x13
40
- olcRetcodeItem: "cn=attributeOrValueExists" 0x14
41
- olcRetcodeItem: "cn=invalidAttributeSyntax" 0x15
42
- olcRetcodeItem: "cn=noSuchObject" 0x20
43
- olcRetcodeItem: "cn=aliasProblem" 0x21
44
- olcRetcodeItem: "cn=invalidDNSyntax" 0x22
45
- olcRetcodeItem: "cn=aliasDereferencingProblem" 0x24
46
- olcRetcodeItem: "cn=proxyAuthzFailure" 0x2F text="LDAPv3 proxy authorization"
47
- olcRetcodeItem: "cn=inappropriateAuthentication" 0x30
48
- olcRetcodeItem: "cn=invalidCredentials" 0x31
49
- olcRetcodeItem: "cn=insufficientAccessRights" 0x32
50
- olcRetcodeItem: "cn=busy" 0x33
51
- olcRetcodeItem: "cn=unavailable" 0x34
52
- olcRetcodeItem: "cn=unwillingToPerform" 0x35
53
- olcRetcodeItem: "cn=loopDetect" 0x36
54
- olcRetcodeItem: "cn=namingViolation" 0x40
55
- olcRetcodeItem: "cn=objectClassViolation" 0x41
56
- olcRetcodeItem: "cn=notAllowedOnNonleaf" 0x42
57
- olcRetcodeItem: "cn=notAllowedOnRDN" 0x43
58
- olcRetcodeItem: "cn=entryAlreadyExists" 0x44
59
- olcRetcodeItem: "cn=objectClassModsProhibited" 0x45
60
- olcRetcodeItem: "cn=resultsTooLarge" 0x46 text="CLDAP"
61
- olcRetcodeItem: "cn=affectsMultipleDSAs" 0x47 text="LDAPv3"
62
- olcRetcodeItem: "cn=other" 0x50
63
- olcRetcodeItem: "cn=cupResourcesExhausted" 0x71
64
- olcRetcodeItem: "cn=cupSecurityViolation" 0x72
65
- olcRetcodeItem: "cn=cupInvalidData" 0x73
66
- olcRetcodeItem: "cn=cupUnsupportedScheme" 0x74
67
- olcRetcodeItem: "cn=cupReloadRequired" 0x75
68
- olcRetcodeItem: "cn=cancelled" 0x76
69
- olcRetcodeItem: "cn=noSuchOperation" 0x77
70
- olcRetcodeItem: "cn=tooLate" 0x78
71
- olcRetcodeItem: "cn=cannotCancel" 0x79
72
- olcRetcodeItem: "cn=syncRefreshRequired" 0x4100
73
- olcRetcodeItem: "cn=noOperation" 0x410e
74
- olcRetcodeItem: "cn=assertionFailed" 0x410f
75
- olcRetcodeItem: "cn=noReferralsFound" 0x4110
76
- olcRetcodeItem: "cn=cannotChain" 0x4111
@@ -1,67 +0,0 @@
1
- dn: cn=config
2
- objectClass: olcGlobal
3
- cn: config
4
- olcPidFile: /var/run/slapd/slapd.pid
5
- olcArgsFile: /var/run/slapd/slapd.args
6
- olcLogLevel: -1
7
- olcToolThreads: 1
8
-
9
- dn: olcDatabase={-1}frontend,cn=config
10
- objectClass: olcDatabaseConfig
11
- objectClass: olcFrontendConfig
12
- olcDatabase: {-1}frontend
13
- olcSizeLimit: 500
14
- olcAccess: {0}to * by dn.exact=gidNumber=0+uidNumber=0,cn=peercred,cn=external,cn=auth manage by * break
15
- olcAccess: {1}to dn.exact="" by * read
16
- olcAccess: {2}to dn.base="cn=Subschema" by * read
17
-
18
- dn: olcDatabase=config,cn=config
19
- objectClass: olcDatabaseConfig
20
- olcDatabase: config
21
- olcAccess: to * by dn.exact=gidNumber=0+uidNumber=0,cn=peercred,cn=external,cn=auth manage by * break
22
-
23
- dn: cn=schema,cn=config
24
- objectClass: olcSchemaConfig
25
- cn: schema
26
-
27
- include: file:///etc/ldap/schema/core.ldif
28
- include: file:///etc/ldap/schema/cosine.ldif
29
- include: file:///etc/ldap/schema/nis.ldif
30
- include: file:///etc/ldap/schema/inetorgperson.ldif
31
-
32
- dn: cn=module{0},cn=config
33
- objectClass: olcModuleList
34
- cn: module{0}
35
- olcModulePath: /usr/lib/ldap
36
- olcModuleLoad: back_hdb
37
-
38
- dn: olcBackend=hdb,cn=config
39
- objectClass: olcBackendConfig
40
- olcBackend: hdb
41
-
42
- dn: olcDatabase=hdb,cn=config
43
- objectClass: olcDatabaseConfig
44
- objectClass: olcHdbConfig
45
- olcDatabase: hdb
46
- olcDbCheckpoint: 512 30
47
- olcDbConfig: set_cachesize 1 0 0
48
- olcDbConfig: set_lk_max_objects 1500
49
- olcDbConfig: set_lk_max_locks 1500
50
- olcDbConfig: set_lk_max_lockers 1500
51
- olcLastMod: TRUE
52
- olcSuffix: dc=rubyldap,dc=com
53
- olcDbDirectory: /var/lib/ldap
54
- olcRootDN: cn=admin,dc=rubyldap,dc=com
55
- # admin's password: "passworD1"
56
- olcRootPW: {SHA}LFSkM9eegU6j3PeGG7UuHrT/KZM=
57
- olcDbIndex: objectClass eq
58
- olcAccess: to attrs=userPassword,shadowLastChange
59
- by self write
60
- by anonymous auth
61
- by dn="cn=admin,dc=rubyldap,dc=com" write
62
- by * none
63
- olcAccess: to dn.base="" by * read
64
- olcAccess: to *
65
- by self write
66
- by dn="cn=admin,dc=rubyldap,dc=com" write
67
- by * read