File: README

package info (click to toggle)
libldap-ruby 0.6.1-2
  • links: PTS
  • area: main
  • in suites: woody
  • size: 484 kB
  • ctags: 343
  • sloc: ansic: 2,298; ruby: 613; sh: 125; makefile: 59
file content (162 lines) | stat: -rw-r--r-- 6,485 bytes parent folder | download
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
                 Ruby/LDAP -- ruby extension library for LDAP                  
                                                                               
     Copyright (C) 2000,2001,2002 Takaaki Tateishi <ttate@kt.jaist.ac.jp>      
 

DESCRIPTION

'Ruby/LDAP' is a ruby extension library which provides the interface to LDAP
API described in RFC1823.
 

REQUIREMENT

  Ruby 1.6.0 or later
  OpenLDAP, NetscapeSDK, Windows2000(or ADSI)

 

PORTS

  FreeBSD ("Akinori -Aki- MUSHA" <knu@idaemons.org>)
  Debian (Akira Yamada <akira@ruby-lang.org>)

 

BUILDING

extconf.rb try to use OpenLDAP2 or NetscapeSDK libraries, and guess paths to
some header files and libraries from the position of 'ldap.h'. If you'd like to
see available options for extconf.rb, run it with '--help' option.

    $ ruby extconf.rb [--with-openldap1|--with-openldap2|--with-netscape|--with-wldap32]
    $ make

you will get 'ldap.so', and copy it to somewhere you like or do 'make install'.

If you has a binary distribution, execute install.rb as follows:

    $ ruby install.rb

 

LICENSE

At present, I don't consider what license I apply to this module. But I will
not claim the payment forever.
 

AVAILABLE CLASSES and METHODS

    LDAP::LDAP_VERSION
    LDAP::LDAP_MAX_VERSION
    LDAP::VERSION
    LDAP::MAJOR_VERSION
    LDAP::MINOR_VERSION
    LDAP::LDAP_PORT
    LDAP::LDAPS_PORT
    LDAP::LDAP_API_INFO_VERSION
    LDAP::LDAP_VENDOR_NAME
    LDAP::LDAP_VENDOR_VERSION
    LDAP::LDAP_API_VERSION
    LDAP.err2string(errcode)
    LDAP.dn2ufn(dn)
    LDAP.mod(mod_op, mod_type, mod_vals) (= LDAP::Mod.new)
    LDAP.hash2mods(mod_op, hash)
    LDAP.entry2hash(entry) (= entry.to_hash)
    LDAP::Conn.new(host = "localhost", port = LDAP::LDAP_PORT) : conn (raise
    LDAP::Error)
    LDAP::Conn.open(host = "localhost", port = LDAP::LDAP_PORT) : conn (raise
    LDAP::Error)
    LDAP::Conn#simple_bind(dn = nil, password = nil){ ... } : conn (raise
    LDAP::ResultError)
    LDAP::Conn#bind(dn = nil, password = nil, method = LDAP::LDAP_AUTH_SIMPLE)
    {|conn| ... } (raise LDAP::ResultError)
    LDAP::Conn#bind(dn = nil, password = nil, method = LDAP::LDAP_AUTH_SIMPLE)
    : conn (raise LDAP::ResultError)
    LDAP::Conn#unbind (raise LDAP::ResultError)
    LDAP::Conn#perror(str)
    LDAP::Conn#result2error(ldap_msg) : errcode
    LDAP::Conn#err2string(errcode) : errmsg
    LDAP::Conn#get_errno : errcode [if available]
    LDAP::Conn#search(basedn, scope, filter, attrs = nil, attrsonly = false,
    sec = 0, usec = 0, s_attr = nil, s_proc = nil){|entry| ... } : conn (raise
    LDAP::ResultError)
    LDAP::Conn#search2(basedn, scope, filter, attrs = nil, attrsonly = false,
    sec = 0, usec = 0, s_attr = nil, s_proc = nil){|entry_as_hash| ... } : conn
    (if a block is given) / Array of Hash (if no block is given) (raise LDAP::
    ResultError)
    LDAP::Conn#add(dn, ldap_mods) : self (raise LDAP::ResultError)
    LDAP::Conn#modify(dn, ldap_mods) : self (raise LDAP::ResultError)
    LDAP::Conn#modrdn(olddn, newdn, delete) : self (raise LDAP::ResultError)
    LDAP::Conn#delete(dn) : self (raise LDAP::ResultError)
    LDAP::Conn#set_option(opt, data) : self [experimental] (raise LDAP::
    ResultError)
    LDAP::Conn#get_option(opt) : data [experimental] (raise LDAP::ResultError)
    LDAP::Mod.new(mod_op, mod_type, mod_vals) : ldap_mod
    LDAP::Mod#mod_op : mod_op
    LDAP::Mod#mod_type : mod_type
    LDAP::Mod#mod_vals : mod_vals
    LDAP::Mod#mod_op=(mod_op)
    LDAP::Mod#mod_type=(mod_type)
    LDAP::Mod#mod_vals=(mod_vals)
    LDAP::Entry#get_dn : dn
    LDAP::Entry#get_values : vals
    LDAP::Entry#get_attributes : attrs
    LDAP::Entry#dn (= get_dn)
    LDAP::Entry#vals (= vals)
    LDAP::Entry#attrs (= get_attributes)
    LDAP::Entry#to_hash : Hash

In ldap/schema.rb:

    LDAP::Conn#schema(attrs = nil, sec = 0, usec = 0) : schema
    LDAP::Schema#must(oc) : attributes
    LDAP::Schema#may(oc) : attributes
    LDAP::Schema#names(attr) : names

see also test/*.rb for examples.
 

REFERENCES

  T. Howes, M. Smith (University of Michigan): RFC1823, The LDAP Application
    Program Interface, August 1995
  The OpenLDAP Project: OpenLDAP 2.0 Administrator's Guide, September 2000
  T. Howes (University of Michigan): RFC1960, A String Representation of LDAP
    Search Filters, June 1996
  M. Wahl, Critical Angle Inc, T. Hows, Netscape Communications Gorp., S.
    Kille, Isode Limited: Lightweight Directory Access Protocol (v3), December
    1997
  M. Wahl, Critical Angle Inc., A. Coulbeck, Isode Inc., T. Howes, Netscape
    Communications Corp., S. Kille, Isode Limited: December 1997
  M .Wahl, Critical Angle Inc., S. Kille, Isode Ltd., T. Howes, Netscape
    Communications Corp.: Lightweight Directory Access Protocol (v3): UTF-8
    String Representation of Distinguished Names, December 1997
  T. Howes, Netscape Communications Gorp.: The String Representation of LDAP
    Search Filters, December 1997
  F. Yergeau (Alis Technologies): RFC2279, UTF-8, a transformation format of
    ISO 10646, October 1998
  Netscape Communications Corp.: Netscape Directory SDK
  Luiz Ernesto Pinheiro Malere: LDAP Linux HOWTO, February 2000
  Tim Howes, Mark Smith: Understanding and Deploying LDAP Directory Servers

Here are the URLs that contain usefull informations about LDAP:

  University of Michigan
    http://www.umich.edu/~dirsvcs/ldap/
  OpenLDAP Project
    http://www.openldap.org/
  Netscape Communications
    http://developer.netscape.com/docs/manuals/communicator/ldap45.htm
  Netscape Directory SDK
    http://www.mozilla.org/directory/
  Active Directory Service Interfaces Overview
    http://www.microsoft.com/windows2000/techinfo/howitworks/activedirectory/
    adsilinks.asp
  LDAP schema repository
    http://www.hklc.com/ldapschema/
    http://ldap.hklc.com/
  Object Identifiers Registry
    http://www.alvestrand.no/harald/objectid/