Huge News!Announcing our $40M Series B led by Abstract Ventures.Learn More
Socket
Sign inDemoInstall
Socket

ruby-ldap

Package Overview
Dependencies
Maintainers
1
Alerts
File Explorer

Advanced tools

Socket logo

Install Socket

Detect and block malicious and high-risk dependencies

Install

ruby-ldap

  • 0.9.20
  • Rubygems
  • Socket score

Version published
Maintainers
1
Created
Source
             Ruby/LDAP -- A Ruby extension library for LDAP

DESCRIPTION

Ruby/LDAP is a Ruby extension library that provides an interface to the LDAP API as described in RFC1823.

REQUIREMENT

  • Ruby 1.8.x or 1.9.x
  • OpenLDAP, Netscape SDK, Windows 2003 or Windows XP

PORTS


BUILDING

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

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

This will create ldap.so, which you can either manually copy into place or install with:

$ make install

If you're building the software on Windows, you may need to use nmake instead of make.

LICENSE

See COPYING.

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#sasl_bind(dn = nil, mech = nil, cred = nil,
		  sctrls=nil, cctrls=nil) {|conn| ... } 
		  (raise LDAP::ResultError)
 LDAP::Conn#sasl_bind(dn = nil, mech = nil, cred = nil,
		  sctrls=nil, cctrls=nil) : conn
		  (raise LDAP::ResultError)
 LDAP::Conn#bound? : true || false
 LDAP::Conn#unbind() (raise LDAP::ResultError)
 LDAP::Conn#start_tls
 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#search_ext(basedn, scope, filter, attrs = nil,
		   attrsonly = false, serverctrls, clientctrls,
		   sec = 0, usec = 0,
		   s_attr = nil, s_proc = nil) {|entry| ... }
                       : conn (raise LDAP::ResultError)
 LDAP::Conn#search_ext2(basedn, scope, filter, attrs = nil,
		    attrsonly = false,
                        serverctrls, clientctrls, 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#add_ext(dn, ldap_mods, serverctrls, clientctrls)
                    : self (raise LDAP::ResultError)
 LDAP::Conn#modify(dn, ldap_mods) : self (raise LDAP::ResultError)
 LDAP::Conn#modify_ext(dn, ldap_mods, serverctrls, clientctrls)
                       : self (raise LDAP::ResultError)
 LDAP::Conn#modrdn(olddn, newdn, delete) : self (raise LDAP::ResultError)
 LDAP::Conn#delete(dn) : self (raise LDAP::ResultError)
 LDAP::Conn#delete(dn, serverctrls, clientctrls) : self
	       (raise LDAP::ResultError)
 LDAP::Conn#compare(dn, attr, val) : self
 LDAP::Conn#compare_ext(dn, attr, val, serverctrls, clientctrls) : self
 LDAP::Conn#set_option(opt, data) : self (raise LDAP::ResultError)
 LDAP::Conn#get_option(opt) : data (raise LDAP::ResultError)
 LDAP::Conn#schema(base = nil, attrs = nil,
	       sec = 0, usec = 0) : LDAP::Schema
 LDAP::Conn#root_dse(attrs = nil, sec = 0, usec = 0) : Array of Hash
 LDAP::SSLConn.new(host = 'localhost', port = LDAP_PORT,
	       start_tls = false, sctrls=nil, cctrls=nil)
	       : conn (raise LDAP::Error)
 LDAP::Mod.new(mod_op, mod_type, mod_vals) : ldap_mod
 LDAP::Mod#inspect : String
 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 (= get_values)
 LDAP::Entry#[] (= get_values)
 LDAP::Entry#attrs (= get_attributes)
 LDAP::Entry#to_hash : Hash
 LDAP::Entry#inspect : String
 LDAP::Control.new : LDAP::Control
 LDAP::Control#oid : String
 LDAP::Control#oid=(oid) : oid
 LDAP::Control#critical : true || false
 LDAP::Control#critical? : true || false
 LDAP::Control#critical=(crit) : crit
 LDAP::Control#value : String
 LDAP::Control#value=(val) : val
 LDAP::Control#inspect : String

SSLConn is a subclass of Conn, so its objects have access to the same methods as Conn objects.

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
 LDAP::Schema#sup(oc)  : object class

In ldap/control.rb:

 LDAP::Control.encode(array) : String
 LDAP::Control#decode : Array

In ldap/ldif.rb:

 LDAP::Entry#to_ldif : LDAP::LDIF::Entry
 LDAP::Entry#to_s : Alias of LDAP::Entry#to_ldif
 LDAP::Mod#to_ldif(dn) : LDAP::LDIF::Mod
 LDAP::Mod#to_s(dn) : Alias of LDAP::Mod#to_ldif
 LDAP::Record.new(dn, change_type, attrs, mods=nil, ctrls=nil)
 LDAP::Record#send(conn) : self
 LDAP::Record#clean : self
 LDAP::LDIF.mods_to_ldif( dn, *mods )
 LDAP::LDIF.parse_entry(lines) : LDAP::Record (raise LDAP::LDIFError)
 LDAP::LDIF.parse_file(file, sort=false)
		   : self (if a block is given) /
		     Array (if no block is given)

See also test/*.rb for examples.

REFERENCES

  • T. Howes, M. Smith (University of Michigan): RFC1823, The LDAP Application Program Interface, August 1995
  • 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
  • C. Weider, A. Herron, A. Anantha, T. Howes: RFC2696, LDAP Control Extension for Simple Paged Results Manipulation, September 1999
  • Luiz Ernesto Pinheiro Malere: LDAP Linux HOWTO, February 2000
  • G. Good: RFC2849, The LDAP Data Interchange Format (LDIF) - Technical Specification, June 2000.
  • Tim Howes, Mark Smith: Understanding and Deploying LDAP Directory Servers
  • The OpenLDAP Project: OpenLDAP 2.2 Administrator's Guide, February 2004

Here are some URLs that contain useful information about LDAP:


THANKS

This list maybe not correct. If you notice mistakes of this list, please point out.

  • Adam Doligalski
  • Akinori MUSHA
  • Akira Yamada
  • Andrew Broman
  • Anthony M. Martinez
  • Antonio Terceiro
  • Aprotim Sanyal
  • Brian Leake
  • Chris Scharf
  • David Campbell
  • Francesco Malvezzi
  • Hadmut Danisch
  • Hiroki Najima
  • Jan Mikkelsen
  • Kouhei Sutou
  • Marek Veber
  • Mark Kittisopikul
  • Michael Granger
  • Milos Jakubicek
  • Pirmin Kalberer
  • Radek Hnilica
  • S. Potter
  • SUENAGA Hiroki
  • Tilo Sloboda
  • Usa Nakamura
  • Yuri Arabadji
  • Yuuzou Gotou
  • atsu@@metallic.co.jp
  • bbense
  • bidon

FAQs

Package last updated on 11 Jul 2018

Did you know?

Socket

Socket for GitHub automatically highlights issues in each pull request and monitors the health of all your open source dependencies. Discover the contents of your packages and block harmful activity before you install or update your dependencies.

Install

Related posts

SocketSocket SOC 2 Logo

Product

  • Package Alerts
  • Integrations
  • Docs
  • Pricing
  • FAQ
  • Roadmap
  • Changelog

Packages

npm

Stay in touch

Get open source security insights delivered straight into your inbox.


  • Terms
  • Privacy
  • Security

Made with ⚡️ by Socket Inc