0) { $keys = array(); // if user has ssh keys if (isset($info[0]["sshpublickey"])) { for ($i = 0; $i < $info[0]["sshpublickey"]["count"]; $i++) { $key = $info[0]["sshpublickey"][$i]; $key_name = array(); preg_match("/\S+@\S+/", $key, $key_name); $keys[] = [$key_name[0] => $key]; } return $keys; } } } return false; } function add_ssh_key($id, $new_key) { global $ini; $ldap_bind = bind_as_operator(); if (!$ldap_bind[0]) { return false; } $dn = "uid=" . $id . "," . $ini['basedn']; $entry['sshPublicKey'] = $new_key; $res = @ldap_mod_add($ldap_bind[1], $dn, $entry); return $res; } function del_ssh_key($id, $key) { global $ini; $ldap_bind = bind_as_operator(); if (!$ldap_bind[0]) { return false; } $dn = "uid=" . $id . "," . $ini['basedn']; $entry["sshPublicKey"] = $key; $res = @ldap_mod_del($ldap_bind[1], $dn, $entry); return $res; }