{"record":{"id":"2f0f2768ce1bf6ce","repo":"puppetlabs/puppet","slug":"could-not-set-up-ldap-connection-missing-ruby-lda","errorCode":null,"errorMessage":"Could not set up LDAP Connection: Missing ruby/ldap libraries","messagePattern":"Could not set up LDAP Connection: Missing ruby/ldap libraries","errorType":"exception","errorClass":"Puppet::Error","httpStatus":null,"severity":"error","filePath":"lib/puppet/util/ldap/connection.rb","lineNumber":39,"sourceCode":"    options[:ssl] = ssl\n    user = Puppet.settings[:ldapuser]\n    if user && user != \"\"\n      options[:user] = user\n      pass = Puppet.settings[:ldappassword]\n      if pass && pass != \"\"\n        options[:password] = pass\n      end\n    end\n\n    new(Puppet[:ldapserver], Puppet[:ldapport], options)\n  end\n\n  def close\n    connection.unbind if connection.bound?\n  end\n\n  def initialize(host, port, user: nil, password: nil, reset: nil, ssl: nil)\n    raise Puppet::Error, _(\"Could not set up LDAP Connection: Missing ruby/ldap libraries\") unless Puppet.features.ldap?\n\n    @host = host\n    @port = port\n    @user = user\n    @password = password\n    @reset = reset\n    @ssl = ssl\n  end\n\n  # Create a per-connection unique name.\n  def name\n    [host, port, user, password, ssl].collect(&:to_s).join(\"/\")\n  end\n\n  # Should we reset the connection?\n  def reset?\n    reset\n  end","sourceCodeStart":21,"sourceCodeEnd":57,"githubUrl":"https://github.com/puppetlabs/puppet/blob/e227c27540975c25aa22d533a52424a9d2fc886a/lib/puppet/util/ldap/connection.rb#L21-L57","documentation":"Error \"Could not set up LDAP Connection: Missing ruby/ldap libraries\" thrown in puppetlabs/puppet.","triggerScenarios":"Thrown at lib/puppet/util/ldap/connection.rb:39 when the library encounters an invalid state.","commonSituations":"See trigger scenarios.","solutions":[],"exampleFix":null,"handlingStrategy":null,"validationCode":null,"typeGuard":null,"tryCatchPattern":null,"preventionTips":[],"tags":[],"backgroundTag":null,"analyzedSha":"e227c27540975c25aa22d533a52424a9d2fc886a","analyzedAt":"2026-08-21T20:49:46.650Z","schemaVersion":2},"datasetVersion":"2026-08-21T23:17:16.201Z"}