Project

General

Profile

Backport #10897

Updated by nobu (Nobuyoshi Nakada) about 9 years ago

Running the same code from the command line using a script and the same bundler gems works correctly.    However, when running inside or rails, or the rails console, when the bind is called a segmentation fault occurs.    The basic code is as follows (this is the working command line script, however it is equivalent to the rails one): 

 ~~~ruby ~~~ 
 #!/usr/bin/env ruby 

 require 'rubygems' 
 require 'bundler/setup' 

 require 'ldap' 
 username = 'username' 

 connect = LDAP::SSLConn.new( 'ldapserver', 636 ) 
 connect.set_option( LDAP::LDAP_OPT_PROTOCOL_VERSION, 3 ) 
 connect.bind('cn=Login,ou=Service Accounts,dc=example,dc=com','Password') do |conn| 
   connect.perror("bind") 
   scope = LDAP::LDAP_SCOPE_SUBTREE 
   base = "dc=example,dc=com" 
   filter = "(uid=#{username})" 
   result = nil 
   conn.search(base, scope, filter, "dn") do |entry| 
     result = entry.dn 
   end 
   puts result.inspect 
 end 
 ~~~

Back