isReadOnly() ) pla_error( $lang['no_updates_in_read_only_mode'] ); if( ! $ldapserver->haveAuthInfo()) pla_error( $lang['not_enough_login_info'] ); $dn = rawurldecode( $_GET['dn'] ); $attr = $_GET['attr']; // if there are multiple values in this attribute, which one do you want to see? $value_num = isset( $_GET['value_num'] ) ? $_GET['value_num'] : 0; dn_exists( $ldapserver, $dn ) or pla_error( sprintf( $lang['no_such_entry'], pretty_print_dn( $dn ) ) ); $search = @ldap_read( $ldapserver->connect(),$dn,"(objectClass=*)",array($attr),0,0,0,get_view_deref_setting() ); if( ! $search ) pla_error( $lang['error_performing_search'],ldap_error($ldapserver->connect()),ldap_errno($ldapserver->connect()) ); $entry = ldap_first_entry( $ldapserver->connect(),$search ); $attrs = ldap_get_attributes( $ldapserver->connect(),$entry ); $attr = ldap_first_attribute( $ldapserver->connect(),$entry,$attrs ); $values = ldap_get_values_len( $ldapserver->connect(),$entry,$attr ); $count = $values['count']; // Dump the binary data to the browser header( "Content-type: octet-stream" ); header( "Content-disposition: attachment; filename=$attr" ); header( "Expires: Mon, 26 Jul 1997 05:00:00 GMT" ); header( "Last-Modified: " . gmdate("D, d M Y H:i:s") . " GMT" ); echo $values[$value_num]; ?>