Esempio n. 1
0
 /**
  * @return Reference|null
  * @throws ReferenceRetrievalFailureException
  */
 public function firstReference()
 {
     if (!($reference = ldap_first_reference($this->link, $this->result))) {
         if (0 !== ($errNo = ldap_errno($this->link))) {
             throw new ReferenceRetrievalFailureException(ldap_error($this->link), $errNo);
         }
         return null;
     }
     return new Reference($this->link, $reference);
 }
Esempio n. 2
0
<?php
require "connect.inc";
$link = ldap_connect_and_bind($host, $port, $user, $passwd, $protocol_version);
insert_dummy_data($link, $base);
ldap_add($link, "cn=userref,$base", array(
        "objectClass" => array("extensibleObject", "referral"),
        "cn" => "userref",
        "ref" => "cn=userA,$base",
));
ldap_set_option($link, LDAP_OPT_DEREF, LDAP_DEREF_NEVER);
$result = ldap_search($link, "$base", "(cn=*)");
var_dump($ref = ldap_first_reference($link, $result));
$refs = null;
ldap_parse_reference($link, $ref, $refs);
var_dump($refs);
?>
===DONE===
<?php
include "connect.inc";

$link = ldap_connect_and_bind($host, $port, $user, $passwd, $protocol_version);
// Referral can only be removed with Manage DSA IT Control
ldap_set_option($link, LDAP_OPT_SERVER_CONTROLS, array(array("oid" => "2.16.840.1.113730.3.4.2")));
ldap_delete($link, "cn=userref,$base");
remove_dummy_data($link, $base);
?>
<?php

require "connect.inc";
$link = ldap_connect_and_bind($host, $port, $user, $passwd, $protocol_version);
insert_dummy_data($link);
ldap_add($link, "cn=userref,dc=my-domain,dc=com", array("objectClass" => array("extensibleObject", "referral"), "cn" => "userref", "ref" => "cn=userA,dc=my-domain,dc=com"));
ldap_set_option($link, LDAP_OPT_DEREF, LDAP_DEREF_NEVER);
$result = ldap_search($link, "dc=my-domain,dc=com", "(cn=*)");
$ref = ldap_first_reference($link, $result);
$refs = null;
var_dump(ldap_parse_reference($link, $ref, $refs), $refs);
?>
===DONE===
<?php 
include "connect.inc";
$link = ldap_connect_and_bind($host, $port, $user, $passwd, $protocol_version);
// Referral can only be removed with Manage DSA IT Control
ldap_set_option($link, LDAP_OPT_SERVER_CONTROLS, array(array("oid" => "2.16.840.1.113730.3.4.2")));
ldap_delete($link, "cn=userref,dc=my-domain,dc=com");
remove_dummy_data($link);
<?php

require "connect.inc";
$link = ldap_connect($host, $port);
var_dump(ldap_first_reference($link));
var_dump(ldap_first_reference($link, $link, "Additional data"));
var_dump(ldap_first_reference($link, $link));
?>
===DONE===
 /**
  * @link http://php.net/manual/en/function.ldap-first-reference.php
  * @param $link
  * @param $result
  * @return resource
  */
 public function firstReference($link, $result)
 {
     return ldap_first_reference($link, $result);
 }