ACC SHELL
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.1//EN" "http://www.w3.org/TR/xhtml11/DTD/xhtml11.dtd">
<html>
<head>
<title>
Configuration of LDAP client</title>
<style type="text/css">body { background-color: #c8c8c8 }
h1 { color: #e00000 }
table { width: 100%/ border: none }
img { border: 0px }
.sigbox { background-color: #ffc080; border: solid thin #f96500 }
.sig { font: larger monospace }
.padtbl { background-color: #ffc080; padding: 10px; margin: 10px }
/* arrow */
.a { color: #606060 }
/* type, parameter */
.t, .p { color: #c05000 }
.pbox { width: 20% }
.descbox { }
.right { align: right }
.header {}
.footer { clear: both}
.menu { width: 10%; float: left }
.main { width: 90%; float: left }
</style>
</head>
<body>
<div class="header">
<i>YaST2 Developers Documentation:</i>
<a href="index.html">
<b>
Configuration of LDAP client</b>
</a>
<img class="right" alt="" src="/usr/share/doc/packages/yast2-devtools/images/yast2-mini.png" />
<hr />
</div>
<div class="menu">
<img alt="YaST" src="/usr/share/doc/packages/yast2-devtools/images/yast2-half.png" />
<br />
<br />
<a href="index.html">functions</a>
<br />
<a href="files.html">files</a>
<br />
<a href="intro.html">intro</a>
</div>
<div class="main">
<div class="sigbox">
<table class="padtbl">
<tr>
<td>
<h1>
Configuration of LDAP client</h1>
</td>
<td class="filecell">modules/Ldap.ycp</td>
</tr>
<tr>
<td>LDAP client configuration data, I/O functions.</td>
</tr>
<tr>
<td>
<ul>
<li>Thorsten Kukuk <kukuk@suse.de></li>
<li> Anas Nashif <nashif@suse.de></li>
</ul>
</td>
</tr>
<tr>
<td>
<p>This module has an unstable interface.</p>
</td>
</tr>
</table>
<table class="padtbl">
<tr>
<td>
<h1>Imports</h1>
<ul>
<li>Autologin</li>
<li>DNS</li>
<li>Directory</li>
<li>FileUtils</li>
<li>Hostname</li>
<li>Label</li>
<li>Message</li>
<li>Mode</li>
<li>Nsswitch</li>
<li>Package</li>
<li>Pam</li>
<li>Popup</li>
<li>ProductFeatures</li>
<li>Progress</li>
<li>Report</li>
<li>Service</li>
<li>Stage</li>
<li>Summary</li>
</ul>
<h1>Includes</h1>
<ul>
<li>ldap/routines.ycp</li>
</ul>
<h1>Global Variables</h1>
<ul>
<li>
<a href="#_autofs_allowed">_autofs_allowed</a>
</li>
<li>
<a href="#_start_autofs">_start_autofs</a>
</li>
<li>
<a href="#attr_types">attr_types</a>
</li>
<li>
<a href="#available_config_modules">available_config_modules</a>
</li>
<li>
<a href="#base_config_dn">base_config_dn</a>
</li>
<li>
<a href="#bind_dn">bind_dn</a>
</li>
<li>
<a href="#file_server">file_server</a>
</li>
<li>
<a href="#hash_schemas">hash_schemas</a>
</li>
<li>
<a href="#initial_defaults">initial_defaults</a>
</li>
<li>
<a href="#initial_defaults_used">initial_defaults_used</a>
</li>
<li>
<a href="#login_enabled">login_enabled</a>
</li>
<li>
<a href="#member_attribute">member_attribute</a>
</li>
<li>
<a href="#mkhomedir">mkhomedir</a>
</li>
<li>
<a href="#new_objects">new_objects</a>
</li>
<li>
<a href="#nis_available">nis_available</a>
</li>
<li>
<a href="#object_classes">object_classes</a>
</li>
<li>
<a href="#read_settings">read_settings</a>
</li>
<li>
<a href="#required_packages">required_packages</a>
</li>
<li>
<a href="#restart_sshd">restart_sshd</a>
</li>
<li>
<a href="#server">server</a>
</li>
<li>
<a href="#start">start</a>
</li>
<li>
<a href="#use_gui">use_gui</a>
</li>
<li>
<a href="#write_only">write_only</a>
</li>
</ul>
<h1>Global Functions</h1>
<ul>
<li>
<a href="#AddMissingAttributes">AddMissingAttributes (map object)</a>
</li>
<li>
<a href="#AttributeDescription">AttributeDescription (string attr)</a>
</li>
<li>
<a href="#AutoPackages">AutoPackages ()</a>
</li>
<li>
<a href="#BaseDNChanged">BaseDNChanged ()</a>
</li>
<li>
<a href="#CheckBaseConfig">CheckBaseConfig (string dn)</a>
</li>
<li>
<a href="#CheckNDS">CheckNDS ()</a>
</li>
<li>
<a href="#CheckOES">CheckOES ()</a>
</li>
<li>
<a href="#CheckOrderOfCreation">CheckOrderOfCreation ()</a>
</li>
<li>
<a href="#CheckTemplateDN">CheckTemplateDN (string dn)</a>
</li>
<li>
<a href="#CommitConfigModules">CommitConfigModules (map modules)</a>
</li>
<li>
<a href="#CommitTemplates">CommitTemplates (map templs)</a>
</li>
<li>
<a href="#ConnectWithoutTLS">ConnectWithoutTLS (map errmap)</a>
</li>
<li>
<a href="#ConvertDefaultValues">ConvertDefaultValues (map templ)</a>
</li>
<li>
<a href="#CreateModule">CreateModule (string cn, string class)</a>
</li>
<li>
<a href="#CreateTemplate">CreateTemplate (string cn, list<string> classes)</a>
</li>
<li>
<a href="#Export">Export ()</a>
</li>
<li>
<a href="#GetAllAttributes">GetAllAttributes (string class)</a>
</li>
<li>
<a href="#GetBaseDN">GetBaseDN ()</a>
</li>
<li>
<a href="#GetBindDN">GetBindDN ()</a>
</li>
<li>
<a href="#GetConfigModules">GetConfigModules ()</a>
</li>
<li>
<a href="#GetDefaultObjectClasses">GetDefaultObjectClasses (map template)</a>
</li>
<li>
<a href="#GetGroupsDN">GetGroupsDN (string base)</a>
</li>
<li>
<a href="#GetLDAPEntry">GetLDAPEntry (string dn)</a>
</li>
<li>
<a href="#GetLDAPPassword">GetLDAPPassword (boolean enable_anonymous)</a>
</li>
<li>
<a href="#GetMainConfigDN">GetMainConfigDN ()</a>
</li>
<li>
<a href="#GetObjectAttributes">GetObjectAttributes (list classes)</a>
</li>
<li>
<a href="#GetRequiredAttributes">GetRequiredAttributes (string class)</a>
</li>
<li>
<a href="#GetTemplates">GetTemplates ()</a>
</li>
<li>
<a href="#Import">Import (map settings)</a>
</li>
<li>
<a href="#InitSchema">InitSchema ()</a>
</li>
<li>
<a href="#LDAPAskAndBind">LDAPAskAndBind (boolean enable_anonymous)</a>
</li>
<li>
<a href="#LDAPBind">LDAPBind (string pass)</a>
</li>
<li>
<a href="#LDAPError">LDAPError ()</a>
</li>
<li>
<a href="#LDAPErrorMap">LDAPErrorMap ()</a>
</li>
<li>
<a href="#LDAPErrorMessage">LDAPErrorMessage (string type, string error)</a>
</li>
<li>
<a href="#LDAPInit">LDAPInit ()</a>
</li>
<li>
<a href="#LDAPInitWithTLSCheck">LDAPInitWithTLSCheck (map args)</a>
</li>
<li>
<a href="#ObjectClassExists">ObjectClassExists (string class)</a>
</li>
<li>
<a href="#ObjectClassStructural">ObjectClassStructural (string class)</a>
</li>
<li>
<a href="#ParentExists">ParentExists (string dn)</a>
</li>
<li>
<a href="#Read">Read ()</a>
</li>
<li>
<a href="#ReadConfigModules">ReadConfigModules ()</a>
</li>
<li>
<a href="#ReadDN">ReadDN (string base, string search_filter)</a>
</li>
<li>
<a href="#ReadTemplates">ReadTemplates ()</a>
</li>
<li>
<a href="#RestartSSHD">RestartSSHD (boolean restart)</a>
</li>
<li>
<a href="#Set">Set (map settings)</a>
</li>
<li>
<a href="#SetAnonymous">SetAnonymous (boolean anon)</a>
</li>
<li>
<a href="#SetBaseDN">SetBaseDN (string new_base_dn)</a>
</li>
<li>
<a href="#SetBindPassword">SetBindPassword (string pass)</a>
</li>
<li>
<a href="#SetDefaults">SetDefaults (map settings)</a>
</li>
<li>
<a href="#SetGUI">SetGUI (boolean gui)</a>
</li>
<li>
<a href="#SetReadSettings">SetReadSettings (boolean read)</a>
</li>
<li>
<a href="#ShortSummary">ShortSummary ()</a>
</li>
<li>
<a href="#SingleValued">SingleValued (string attr)</a>
</li>
<li>
<a href="#Summary">Summary ()</a>
</li>
<li>
<a href="#Write">Write (block<boolean> abort)</a>
</li>
<li>
<a href="#WriteLDAP">WriteLDAP (map objects)</a>
</li>
<li>
<a href="#WriteNow">WriteNow ()</a>
</li>
<li>
<a href="#WriteOpenLdapConf">WriteOpenLdapConf ()</a>
</li>
<li>
<a href="#WritePlusLine">WritePlusLine (boolean login)</a>
</li>
<li>
<a href="#WriteToLDAP">WriteToLDAP (map objects)</a>
</li>
</ul>
<h1>Local Functions</h1>
<ul>
<li>
<a href="#AddLdapConfEntry">AddLdapConfEntry (string entry, string value)</a>
</li>
<li>
<a href="#CreateDefaultLDAPConfiguration">CreateDefaultLDAPConfiguration ()</a>
</li>
<li>
<a href="#ReadLdapConfEntries">ReadLdapConfEntries (string entry)</a>
</li>
<li>
<a href="#ReadLdapConfEntry">ReadLdapConfEntry (string entry, string defvalue)</a>
</li>
<li>
<a href="#WriteLdapConfEntries">WriteLdapConfEntries (string entry, list<string> value)</a>
</li>
<li>
<a href="#WriteLdapConfEntry">WriteLdapConfEntry (string entry, string value)</a>
</li>
</ul>
</td>
</tr>
</table>
</div>
<p />
<div class="sigbox">
<span class="sig" id="use_gui">global
<b>use_gui
<span class="a"> -> </span>
<span class="t">boolean</span>
</b>
</span>
</div>
<p>
show popups with error messages?</p>
<div class="sigbox">
<span class="sig" id="base_config_dn">global
<b>base_config_dn
<span class="a"> -> </span>
<span class="t">string</span>
</b>
</span>
</div>
<p>
DN of base configuration object</p>
<div class="sigbox">
<span class="sig" id="required_packages">global
<b>required_packages
<span class="a"> -> </span>
<span class="t">list<string></span>
</b>
</span>
</div>
<p>
Required packages for this module to operate
-- they are now required only when LDAP is set for authentication</p>
<div class="sigbox">
<span class="sig" id="write_only">global
<b>write_only
<span class="a"> -> </span>
<span class="t">boolean</span>
</b>
</span>
</div>
<p>
Write only, used during autoinstallation.
Don't run services and SuSEconfig, it's all done at one place.</p>
<div class="sigbox">
<span class="sig" id="start">global
<b>start
<span class="a"> -> </span>
<span class="t">boolean</span>
</b>
</span>
</div>
<p>
Are LDAP services available via nsswitch.conf?</p>
<div class="sigbox">
<span class="sig" id="nis_available">global
<b>nis_available
<span class="a"> -> </span>
<span class="t">boolean</span>
</b>
</span>
</div>
<p>
Is NIS service available? If yes, and LDAP client will be enabled, warn
user (see bug #36981)</p>
<div class="sigbox">
<span class="sig" id="_autofs_allowed">global
<b>_autofs_allowed
<span class="a"> -> </span>
<span class="t">boolean</span>
</b>
</span>
</div>
<p>
If no, automounter will not be affected.</p>
<div class="sigbox">
<span class="sig" id="_start_autofs">global
<b>_start_autofs
<span class="a"> -> </span>
<span class="t">boolean</span>
</b>
</span>
</div>
<p>
Start automounter and import the settings from LDAP</p>
<div class="sigbox">
<span class="sig" id="login_enabled">global
<b>login_enabled
<span class="a"> -> </span>
<span class="t">boolean</span>
</b>
</span>
</div>
<p>
If login of LDAP uses to local machine is enabled</p>
<div class="sigbox">
<span class="sig" id="member_attribute">global
<b>member_attribute
<span class="a"> -> </span>
<span class="t">string</span>
</b>
</span>
</div>
<p>
which attribute have LDAP groups for list of members</p>
<div class="sigbox">
<span class="sig" id="server">global
<b>server
<span class="a"> -> </span>
<span class="t">string</span>
</b>
</span>
</div>
<p>
IP addresses of LDAP server.</p>
<div class="sigbox">
<span class="sig" id="file_server">global
<b>file_server
<span class="a"> -> </span>
<span class="t">boolean</span>
</b>
</span>
</div>
<p>
If home directories of LDAP users are stored on this machine</p>
<div class="sigbox">
<span class="sig" id="bind_dn">global
<b>bind_dn
<span class="a"> -> </span>
<span class="t">string</span>
</b>
</span>
</div>
<p>
DN for binding to LDAP server</p>
<div class="sigbox">
<span class="sig" id="new_objects">global
<b>new_objects
<span class="a"> -> </span>
<span class="t">map</span>
</b>
</span>
</div>
<p>
defaults for adding new config objects and templates</p>
<div class="sigbox">
<span class="sig" id="object_classes">global
<b>object_classes
<span class="a"> -> </span>
<span class="t">map</span>
</b>
</span>
</div>
<p>
Map of object classes (from schema). Indexed by names.</p>
<div class="sigbox">
<span class="sig" id="attr_types">global
<b>attr_types
<span class="a"> -> </span>
<span class="t">map</span>
</b>
</span>
</div>
<p>
Map of atribute types (from schema). Indexed by names.</p>
<div class="sigbox">
<span class="sig" id="hash_schemas">global
<b>hash_schemas
<span class="a"> -> </span>
<span class="t">list</span>
</b>
</span>
</div>
<p>
encryption schemes supported by slappasswd</p>
<div class="sigbox">
<span class="sig" id="available_config_modules">global
<b>available_config_modules
<span class="a"> -> </span>
<span class="t">list<string></span>
</b>
</span>
</div>
<p>
Available configuration modules (objectClass names)
TODO update</p>
<div class="sigbox">
<span class="sig" id="initial_defaults">global
<b>initial_defaults
<span class="a"> -> </span>
<span class="t">map</span>
</b>
</span>
</div>
<p>
The defualt values, which should replace the ones from Read ()
Used during instalation, when we want to do a reasonable proposal</p>
<div class="sigbox">
<span class="sig" id="initial_defaults_used">global
<b>initial_defaults_used
<span class="a"> -> </span>
<span class="t">boolean</span>
</b>
</span>
</div>
<p>
If the default values, used from ldap-server module were used
to configure ldap-client</p>
<div class="sigbox">
<span class="sig" id="read_settings">global
<b>read_settings
<span class="a"> -> </span>
<span class="t">boolean</span>
</b>
</span>
</div>
<p>
If false, do not read settings already set from outside
used e.g. for Users YaPI. see bug #60898</p>
<div class="sigbox">
<span class="sig" id="restart_sshd">global
<b>restart_sshd
<span class="a"> -> </span>
<span class="t">boolean</span>
</b>
</span>
</div>
<p>
if sshd should be restarted during write phase</p>
<div class="sigbox">
<span class="sig" id="mkhomedir">global
<b>mkhomedir
<span class="a"> -> </span>
<span class="t">boolean</span>
</b>
</span>
</div>
<p>
if pam_mkhomedir is set in /etc/pam.d/commond-session</p>
<div class="sigbox">
<span class="sig" id="BaseDNChanged">global
<b>BaseDNChanged ()
<span class="a"> -> </span>
<span class="t">boolean</span>
</b>
</span>
</div>
<p>
If the base DN has changed from a nonempty one, it may only be
changed at boot time. Use this to warn the user.</p>
<dl>
<dt>
<b>Return value:</b>
</dt>
<dd>
<table>
<tr>
<td class="pbox">
<span class="t" />
</td>
<td class="descbox">whether changed by SetBaseDN</td>
</tr>
</table>
</dd>
</dl>
<div class="sigbox">
<span class="sig" id="GetBaseDN">global
<b>GetBaseDN ()
<span class="a"> -> </span>
<span class="t">string</span>
</b>
</span>
</div>
<p>
Get the Base DN</p>
<div class="sigbox">
<span class="sig" id="SetBaseDN">global
<b>SetBaseDN (string new_base_dn)
<span class="a"> -> </span>
<span class="t">void</span>
</b>
</span>
</div>
<p>
Set new LDAP base DN</p>
<dl>
<dt>
<b>Parameters:</b>
</dt>
<dd>
<table>
<tr>
<td class="pbox">
<span class="p">new_base_dn</span>
</td>
<td class="descbox">a new base DN</td>
</tr>
</table>
</dd>
</dl>
<div class="sigbox">
<span class="sig" id="SetDefaults">global
<b>SetDefaults (map settings)
<span class="a"> -> </span>
<span class="t">boolean</span>
</b>
</span>
</div>
<p>
Set the defualt values, which should replace the ones from Read ()
Used during instalation, when we want to do a reasonable proposal</p>
<dl>
<dt>
<b>Parameters:</b>
</dt>
<dd>
<table>
<tr>
<td class="pbox">
<span class="p">settings</span>
</td>
<td class="descbox"></td>
</tr>
</table>
</dd>
</dl>
<div class="sigbox">
<span class="sig" id="SetReadSettings">global
<b>SetReadSettings (boolean read)
<span class="a"> -> </span>
<span class="t">boolean</span>
</b>
</span>
</div>
<p>
set the value of read_settings variable
which means, do not read some settings from system</p>
<dl>
<dt>
<b>Parameters:</b>
</dt>
<dd>
<table>
<tr>
<td class="pbox">
<span class="p">read</span>
</td>
<td class="descbox"></td>
</tr>
</table>
</dd>
</dl>
<div class="sigbox">
<span class="sig" id="AutoPackages">global
<b>AutoPackages ()
<span class="a"> -> </span>
<span class="t">map</span>
</b>
</span>
</div>
<p>
Return needed packages and packages to be removed
during autoinstallation.</p>
<dl>
<dt>
<b>Return value:</b>
</dt>
<dd>
<table>
<tr>
<td class="pbox">
<span class="t" />
</td>
<td class="descbox">of lists.</td>
</tr>
</table>
</dd>
</dl>
<div class="sigbox">
<span class="sig" id="Set">global
<b>Set (map settings)
<span class="a"> -> </span>
<span class="t">void</span>
</b>
</span>
</div>
<p>
Only set variables, without checking anything</p>
<dl>
<dt>
<b>Parameters:</b>
</dt>
<dd>
<table>
<tr>
<td class="pbox">
<span class="p">settings</span>
</td>
<td class="descbox"></td>
</tr>
</table>
</dd>
</dl>
<div class="sigbox">
<span class="sig" id="Import">global
<b>Import (map settings)
<span class="a"> -> </span>
<span class="t">boolean</span>
</b>
</span>
</div>
<p>
Get all the LDAP configuration from a map.
When called by ldap_auto (preparing autoinstallation data)
the map may be empty.</p>
<dl>
<dt>
<b>Parameters:</b>
</dt>
<dd>
<table>
<tr>
<td class="pbox">
<span class="p">settings</span>
</td>
<td class="descbox">$["start": "domain": "servers":[...] ]</td>
</tr>
</table>
</dd>
</dl>
<dl>
<dt>
<b>Return value:</b>
</dt>
<dd>
<table>
<tr>
<td class="pbox">
<span class="t" />
</td>
<td class="descbox">success</td>
</tr>
</table>
</dd>
</dl>
<div class="sigbox">
<span class="sig" id="Export">global
<b>Export ()
<span class="a"> -> </span>
<span class="t">map</span>
</b>
</span>
</div>
<p>
Dump the LDAP settings to a map, for autoinstallation use.</p>
<dl>
<dt>
<b>Return value:</b>
</dt>
<dd>
<table>
<tr>
<td class="pbox">
<span class="t" />
</td>
<td class="descbox">$["start":, "servers":[...], "domain":]</td>
</tr>
</table>
</dd>
</dl>
<div class="sigbox">
<span class="sig" id="Summary">global
<b>Summary ()
<span class="a"> -> </span>
<span class="t">string</span>
</b>
</span>
</div>
<p>
Summary()
returns html formated configuration summary</p>
<dl>
<dt>
<b>Return value:</b>
</dt>
<dd>
<table>
<tr>
<td class="pbox">
<span class="t" />
</td>
<td class="descbox">summary</td>
</tr>
</table>
</dd>
</dl>
<div class="sigbox">
<span class="sig" id="ShortSummary">global
<b>ShortSummary ()
<span class="a"> -> </span>
<span class="t">string</span>
</b>
</span>
</div>
<p>
returns html formated configuration summary (shorter than Summary)</p>
<dl>
<dt>
<b>Return value:</b>
</dt>
<dd>
<table>
<tr>
<td class="pbox">
<span class="t" />
</td>
<td class="descbox">summary</td>
</tr>
</table>
</dd>
</dl>
<div class="sigbox">
<span class="sig" id="ReadLdapConfEntry">local
<b>ReadLdapConfEntry (string entry, string defvalue)
<span class="a"> -> </span>
<span class="t">string</span>
</b>
</span>
</div>
<p>
Read single entry from /etc/ldap.conf file</p>
<dl>
<dt>
<b>Parameters:</b>
</dt>
<dd>
<table>
<tr>
<td class="pbox">
<span class="p">entry</span>
</td>
<td class="descbox">entry name</td>
</tr>
<tr>
<td class="pbox">
<span class="p">defvalue</span>
</td>
<td class="descbox">default value if entry is not present</td>
</tr>
</table>
</dd>
</dl>
<dl>
<dt>
<b>Return value:</b>
</dt>
<dd>
<table>
<tr>
<td class="pbox">
<span class="t" />
</td>
<td class="descbox">entry value</td>
</tr>
</table>
</dd>
</dl>
<div class="sigbox">
<span class="sig" id="ReadLdapConfEntries">local
<b>ReadLdapConfEntries (string entry)
<span class="a"> -> </span>
<span class="t">list<string></span>
</b>
</span>
</div>
<p>
Read multi-valued entry from /etc/ldap.conf file</p>
<dl>
<dt>
<b>Parameters:</b>
</dt>
<dd>
<table>
<tr>
<td class="pbox">
<span class="p">entry</span>
</td>
<td class="descbox">entry name</td>
</tr>
</table>
</dd>
</dl>
<dl>
<dt>
<b>Return value:</b>
</dt>
<dd>
<table>
<tr>
<td class="pbox">
<span class="t" />
</td>
<td class="descbox">entry value</td>
</tr>
</table>
</dd>
</dl>
<div class="sigbox">
<span class="sig" id="WriteLdapConfEntry">local
<b>WriteLdapConfEntry (string entry, string value)
<span class="a"> -> </span>
<span class="t">void</span>
</b>
</span>
</div>
<p>
Write (single valued) entry to /etc/ldap.conf</p>
<dl>
<dt>
<b>Parameters:</b>
</dt>
<dd>
<table>
<tr>
<td class="pbox">
<span class="p">entry</span>
</td>
<td class="descbox">name</td>
</tr>
<tr>
<td class="pbox">
<span class="p">value</span>
</td>
<td class="descbox">; if value is nil, entry will be removed</td>
</tr>
</table>
</dd>
</dl>
<div class="sigbox">
<span class="sig" id="WriteLdapConfEntries">local
<b>WriteLdapConfEntries (string entry, list<string> value)
<span class="a"> -> </span>
<span class="t">void</span>
</b>
</span>
</div>
<p>
Write (possibly multi valued) entry to /etc/ldap.conf</p>
<dl>
<dt>
<b>Parameters:</b>
</dt>
<dd>
<table>
<tr>
<td class="pbox">
<span class="p">entry</span>
</td>
<td class="descbox">name</td>
</tr>
<tr>
<td class="pbox">
<span class="p">value</span>
</td>
<td class="descbox">it is of type [attr1, attr2],
in /etc/ldap.conf should be written as "entry attr1 attr2"</td>
</tr>
</table>
</dd>
</dl>
<dl>
<dt>
<b>Example</b>
</dt>
<dd>
<table>
<tr>
<td align="left" valign="top"><pre>
to write "nss_map_attribute uniquemember member", call
WriteLdapConfEntries ("nss_map_attribute", ["uniquemember", "member"])</pre></td>
</tr>
</table>
</dd>
</dl>
<div class="sigbox">
<span class="sig" id="AddLdapConfEntry">local
<b>AddLdapConfEntry (string entry, string value)
<span class="a"> -> </span>
<span class="t">void</span>
</b>
</span>
</div>
<p>
Add a new value to the entry in /etc/ldap.conf</p>
<dl>
<dt>
<b>Parameters:</b>
</dt>
<dd>
<table>
<tr>
<td class="pbox">
<span class="p">entry</span>
</td>
<td class="descbox">name</td>
</tr>
<tr>
<td class="pbox">
<span class="p">value</span>
</td>
<td class="descbox"></td>
</tr>
</table>
</dd>
</dl>
<div class="sigbox">
<span class="sig" id="CheckOES">global
<b>CheckOES ()
<span class="a"> -> </span>
<span class="t">boolean</span>
</b>
</span>
</div>
<p>
Check if current machine runs OES</p>
<div class="sigbox">
<span class="sig" id="Read">global
<b>Read ()
<span class="a"> -> </span>
<span class="t">boolean</span>
</b>
</span>
</div>
<p>
Reads LDAP settings from the SCR</p>
<dl>
<dt>
<b>Return value:</b>
</dt>
<dd>
<table>
<tr>
<td class="pbox">
<span class="t" />
</td>
<td class="descbox">success</td>
</tr>
</table>
</dd>
</dl>
<div class="sigbox">
<span class="sig" id="LDAPErrorMessage">global
<b>LDAPErrorMessage (string type, string error)
<span class="a"> -> </span>
<span class="t">void</span>
</b>
</span>
</div>
<p>
Error popup for errors detected during LDAP operation</p>
<dl>
<dt>
<b>Parameters:</b>
</dt>
<dd>
<table>
<tr>
<td class="pbox">
<span class="p">type</span>
</td>
<td class="descbox">error type: binding/reading/writing</td>
</tr>
<tr>
<td class="pbox">
<span class="p">error</span>
</td>
<td class="descbox"></td>
</tr>
</table>
</dd>
</dl>
<div class="sigbox">
<span class="sig" id="LDAPErrorMap">global
<b>LDAPErrorMap ()
<span class="a"> -> </span>
<span class="t">map</span>
</b>
</span>
</div>
<p>
Reads and returns error map (=message + code) from agent</p>
<div class="sigbox">
<span class="sig" id="LDAPError">global
<b>LDAPError ()
<span class="a"> -> </span>
<span class="t">string</span>
</b>
</span>
</div>
<p>
Reads and returns error message from agent</p>
<div class="sigbox">
<span class="sig" id="GetBindDN">global
<b>GetBindDN ()
<span class="a"> -> </span>
<span class="t">string</span>
</b>
</span>
</div>
<p>
return administrator's DN
if it was not read yet, read it now</p>
<div class="sigbox">
<span class="sig" id="LDAPInit">global
<b>LDAPInit ()
<span class="a"> -> </span>
<span class="t">string</span>
</b>
</span>
</div>
<p>
Initializes LDAP agent</p>
<div class="sigbox">
<span class="sig" id="ConnectWithoutTLS">global
<b>ConnectWithoutTLS (map errmap)
<span class="a"> -> </span>
<span class="t">boolean</span>
</b>
</span>
</div>
<p>
popup shown after failed connection: ask for retry withou TLS (see bug 246397)</p>
<dl>
<dt>
<b>Parameters:</b>
</dt>
<dd>
<table>
<tr>
<td class="pbox">
<span class="p">errmap</span>
</td>
<td class="descbox"></td>
</tr>
</table>
</dd>
</dl>
<dl>
<dt>
<b>Return value:</b>
</dt>
<dd>
<table>
<tr>
<td class="pbox">
<span class="t" />
</td>
<td class="descbox">true if user wants to retry without TLS</td>
</tr>
</table>
</dd>
</dl>
<div class="sigbox">
<span class="sig" id="LDAPInitWithTLSCheck">global
<b>LDAPInitWithTLSCheck (map args)
<span class="a"> -> </span>
<span class="t">string</span>
</b>
</span>
</div>
<p>
Initializes LDAP agent, offers to turn off TLS if it failed</p>
<dl>
<dt>
<b>Parameters:</b>
</dt>
<dd>
<table>
<tr>
<td class="pbox">
<span class="p">args</span>
</td>
<td class="descbox"></td>
</tr>
</table>
</dd>
</dl>
<div class="sigbox">
<span class="sig" id="LDAPBind">global
<b>LDAPBind (string pass)
<span class="a"> -> </span>
<span class="t">string</span>
</b>
</span>
</div>
<p>
Binds to LDAP server</p>
<dl>
<dt>
<b>Parameters:</b>
</dt>
<dd>
<table>
<tr>
<td class="pbox">
<span class="p">pass</span>
</td>
<td class="descbox">password</td>
</tr>
</table>
</dd>
</dl>
<div class="sigbox">
<span class="sig" id="GetLDAPPassword">global
<b>GetLDAPPassword (boolean enable_anonymous)
<span class="a"> -> </span>
<span class="t">string</span>
</b>
</span>
</div>
<p>
Asks user for bind password to LDAP server</p>
<dl>
<dt>
<b>Parameters:</b>
</dt>
<dd>
<table>
<tr>
<td class="pbox">
<span class="p">enable_anonymous</span>
</td>
<td class="descbox"></td>
</tr>
</table>
</dd>
</dl>
<dl>
<dt>
<b>Return value:</b>
</dt>
<dd>
<table>
<tr>
<td class="pbox">
<span class="t" />
</td>
<td class="descbox">password</td>
</tr>
</table>
</dd>
</dl>
<div class="sigbox">
<span class="sig" id="LDAPAskAndBind">global
<b>LDAPAskAndBind (boolean enable_anonymous)
<span class="a"> -> </span>
<span class="t">string</span>
</b>
</span>
</div>
<p>
Asks for LDAP password and tries to bind with it</p>
<dl>
<dt>
<b>Parameters:</b>
</dt>
<dd>
<table>
<tr>
<td class="pbox">
<span class="p">enable_anonymous</span>
</td>
<td class="descbox"></td>
</tr>
</table>
</dd>
</dl>
<dl>
<dt>
<b>Return value:</b>
</dt>
<dd>
<table>
<tr>
<td class="pbox">
<span class="t" />
</td>
<td class="descbox">password entered, nil on cancel</td>
</tr>
</table>
</dd>
</dl>
<div class="sigbox">
<span class="sig" id="SingleValued">global
<b>SingleValued (string attr)
<span class="a"> -> </span>
<span class="t">boolean</span>
</b>
</span>
</div>
<p>
Check if attribute allowes only single or multiple value</p>
<dl>
<dt>
<b>Parameters:</b>
</dt>
<dd>
<table>
<tr>
<td class="pbox">
<span class="p">attr</span>
</td>
<td class="descbox">attribute name</td>
</tr>
</table>
</dd>
</dl>
<dl>
<dt>
<b>Return value:</b>
</dt>
<dd>
<table>
<tr>
<td class="pbox">
<span class="t" />
</td>
<td class="descbox">answer</td>
</tr>
</table>
</dd>
</dl>
<div class="sigbox">
<span class="sig" id="AttributeDescription">global
<b>AttributeDescription (string attr)
<span class="a"> -> </span>
<span class="t">string</span>
</b>
</span>
</div>
<p>
Gets the description of attribute (from schema)</p>
<dl>
<dt>
<b>Parameters:</b>
</dt>
<dd>
<table>
<tr>
<td class="pbox">
<span class="p">attr</span>
</td>
<td class="descbox">attribute name</td>
</tr>
</table>
</dd>
</dl>
<dl>
<dt>
<b>Return value:</b>
</dt>
<dd>
<table>
<tr>
<td class="pbox">
<span class="t" />
</td>
<td class="descbox">description</td>
</tr>
</table>
</dd>
</dl>
<div class="sigbox">
<span class="sig" id="ObjectClassExists">global
<b>ObjectClassExists (string class)
<span class="a"> -> </span>
<span class="t">boolean</span>
</b>
</span>
</div>
<p>
Returns true if given object class exists in schema</p>
<dl>
<dt>
<b>Parameters:</b>
</dt>
<dd>
<table>
<tr>
<td class="pbox">
<span class="p">class</span>
</td>
<td class="descbox">ObjectClass name</td>
</tr>
</table>
</dd>
</dl>
<div class="sigbox">
<span class="sig" id="ObjectClassStructural">global
<b>ObjectClassStructural (string class)
<span class="a"> -> </span>
<span class="t">boolean</span>
</b>
</span>
</div>
<p>
Returns true if given object class is of 'structural' type</p>
<dl>
<dt>
<b>Parameters:</b>
</dt>
<dd>
<table>
<tr>
<td class="pbox">
<span class="p">class</span>
</td>
<td class="descbox">ObjectClass name</td>
</tr>
</table>
</dd>
</dl>
<div class="sigbox">
<span class="sig" id="GetAllAttributes">global
<b>GetAllAttributes (string class)
<span class="a"> -> </span>
<span class="t">list</span>
</b>
</span>
</div>
<p>
Returns allowed and required attributes of given object class
Read it from LDAP if it was not done yet.</p>
<dl>
<dt>
<b>Parameters:</b>
</dt>
<dd>
<table>
<tr>
<td class="pbox">
<span class="p">class</span>
</td>
<td class="descbox"></td>
</tr>
</table>
</dd>
</dl>
<dl>
<dt>
<b>Return value:</b>
</dt>
<dd>
<table>
<tr>
<td class="pbox">
<span class="t" />
</td>
<td class="descbox">attribute names (list of strings)</td>
</tr>
</table>
</dd>
</dl>
<div class="sigbox">
<span class="sig" id="GetRequiredAttributes">global
<b>GetRequiredAttributes (string class)
<span class="a"> -> </span>
<span class="t">list<string></span>
</b>
</span>
</div>
<p>
Returns required attributes of given object class
Read it from LDAP if it was not done yet.</p>
<dl>
<dt>
<b>Parameters:</b>
</dt>
<dd>
<table>
<tr>
<td class="pbox">
<span class="p">class</span>
</td>
<td class="descbox"></td>
</tr>
</table>
</dd>
</dl>
<dl>
<dt>
<b>Return value:</b>
</dt>
<dd>
<table>
<tr>
<td class="pbox">
<span class="t" />
</td>
<td class="descbox">attribute names (list of strings)</td>
</tr>
</table>
</dd>
</dl>
<div class="sigbox">
<span class="sig" id="GetObjectAttributes">global
<b>GetObjectAttributes (list classes)
<span class="a"> -> </span>
<span class="t">list</span>
</b>
</span>
</div>
<p>
Returns the list of all allowed and required attributes for each
object class, given in the list of object classes</p>
<dl>
<dt>
<b>Parameters:</b>
</dt>
<dd>
<table>
<tr>
<td class="pbox">
<span class="p">classes</span>
</td>
<td class="descbox">list of object classes whose attributes we want</td>
</tr>
</table>
</dd>
</dl>
<dl>
<dt>
<b>Return value:</b>
</dt>
<dd>
<table>
<tr>
<td class="pbox">
<span class="t" />
</td>
<td class="descbox">attribute names (list of strings)</td>
</tr>
</table>
</dd>
</dl>
<div class="sigbox">
<span class="sig" id="AddMissingAttributes">global
<b>AddMissingAttributes (map object)
<span class="a"> -> </span>
<span class="t">map</span>
</b>
</span>
</div>
<p>
For a given object, add all atributes this object is allowed to have
according to its "objectClass" value. Added attributes have empty values.</p>
<dl>
<dt>
<b>Parameters:</b>
</dt>
<dd>
<table>
<tr>
<td class="pbox">
<span class="p">object</span>
</td>
<td class="descbox">map describing LDAP entry</td>
</tr>
</table>
</dd>
</dl>
<dl>
<dt>
<b>Return value:</b>
</dt>
<dd>
<table>
<tr>
<td class="pbox">
<span class="t" />
</td>
<td class="descbox">updated map</td>
</tr>
</table>
</dd>
</dl>
<div class="sigbox">
<span class="sig" id="InitSchema">global
<b>InitSchema ()
<span class="a"> -> </span>
<span class="t">string</span>
</b>
</span>
</div>
<p>
Prepare agent for later schema queries
(agent reads schema to its internal structures)</p>
<dl>
<dt>
<b>Return value:</b>
</dt>
<dd>
<table>
<tr>
<td class="pbox">
<span class="t" />
</td>
<td class="descbox">error message</td>
</tr>
</table>
</dd>
</dl>
<div class="sigbox">
<span class="sig" id="ConvertDefaultValues">global
<b>ConvertDefaultValues (map templ)
<span class="a"> -> </span>
<span class="t">map</span>
</b>
</span>
</div>
<p>
In template object, convert the list of values
(which is in the form [ "a1=v1", "a2=v2"])
to map (in the form $[ "a1":"v1", "a2":"v2"]</p>
<dl>
<dt>
<b>Parameters:</b>
</dt>
<dd>
<table>
<tr>
<td class="pbox">
<span class="p">templ</span>
</td>
<td class="descbox">original template map</td>
</tr>
</table>
</dd>
</dl>
<dl>
<dt>
<b>Return value:</b>
</dt>
<dd>
<table>
<tr>
<td class="pbox">
<span class="t" />
</td>
<td class="descbox">updated template map</td>
</tr>
</table>
</dd>
</dl>
<div class="sigbox">
<span class="sig" id="ReadTemplates">global
<b>ReadTemplates ()
<span class="a"> -> </span>
<span class="t">string</span>
</b>
</span>
</div>
<p>
Read object templates from LDAP server</p>
<dl>
<dt>
<b>Return value:</b>
</dt>
<dd>
<table>
<tr>
<td class="pbox">
<span class="t" />
</td>
<td class="descbox">error message</td>
</tr>
</table>
</dd>
</dl>
<div class="sigbox">
<span class="sig" id="ReadConfigModules">global
<b>ReadConfigModules ()
<span class="a"> -> </span>
<span class="t">string</span>
</b>
</span>
</div>
<p>
Read configuration moduels from LDAP server</p>
<dl>
<dt>
<b>Return value:</b>
</dt>
<dd>
<table>
<tr>
<td class="pbox">
<span class="t" />
</td>
<td class="descbox">error message</td>
</tr>
</table>
</dd>
</dl>
<div class="sigbox">
<span class="sig" id="GetLDAPEntry">global
<b>GetLDAPEntry (string dn)
<span class="a"> -> </span>
<span class="t">map</span>
</b>
</span>
</div>
<p>
Search for one entry (=base scope) in LDAP directory</p>
<dl>
<dt>
<b>Parameters:</b>
</dt>
<dd>
<table>
<tr>
<td class="pbox">
<span class="p">dn</span>
</td>
<td class="descbox">DN of entry</td>
</tr>
</table>
</dd>
</dl>
<dl>
<dt>
<b>Return value:</b>
</dt>
<dd>
<table>
<tr>
<td class="pbox">
<span class="t" />
</td>
<td class="descbox">with entry values, empty map if nothing found, nil on error</td>
</tr>
</table>
</dd>
</dl>
<div class="sigbox">
<span class="sig" id="ParentExists">global
<b>ParentExists (string dn)
<span class="a"> -> </span>
<span class="t">boolean</span>
</b>
</span>
</div>
<p>
Check for existence of parent object of given DN in LDAP tree
return the answer</p>
<dl>
<dt>
<b>Parameters:</b>
</dt>
<dd>
<table>
<tr>
<td class="pbox">
<span class="p">dn</span>
</td>
<td class="descbox"></td>
</tr>
</table>
</dd>
</dl>
<div class="sigbox">
<span class="sig" id="GetMainConfigDN">global
<b>GetMainConfigDN ()
<span class="a"> -> </span>
<span class="t">string</span>
</b>
</span>
</div>
<p>
Return main configuration object DN</p>
<div class="sigbox">
<span class="sig" id="GetConfigModules">global
<b>GetConfigModules ()
<span class="a"> -> </span>
<span class="t">map</span>
</b>
</span>
</div>
<p>
Return the map of configuration modules (new copy)
(in the form $[ DN: $[ map_of_one_module] ])</p>
<div class="sigbox">
<span class="sig" id="GetTemplates">global
<b>GetTemplates ()
<span class="a"> -> </span>
<span class="t">map</span>
</b>
</span>
</div>
<p>
Return the map of templates (new copy)</p>
<div class="sigbox">
<span class="sig" id="GetDefaultObjectClasses">global
<b>GetDefaultObjectClasses (map template)
<span class="a"> -> </span>
<span class="t">list</span>
</b>
</span>
</div>
<p>
Return list of default object classes for user or group
There is fixed list here, it is not saved anywhere (only in default
users plugin for LDAP objects)</p>
<dl>
<dt>
<b>Parameters:</b>
</dt>
<dd>
<table>
<tr>
<td class="pbox">
<span class="p">template</span>
</td>
<td class="descbox">used for differ if we need user or group list</td>
</tr>
</table>
</dd>
</dl>
<div class="sigbox">
<span class="sig" id="CreateTemplate">global
<b>CreateTemplate (string cn, list<string> classes)
<span class="a"> -> </span>
<span class="t">map</span>
</b>
</span>
</div>
<p>
Creates default new map for a new object template</p>
<dl>
<dt>
<b>Parameters:</b>
</dt>
<dd>
<table>
<tr>
<td class="pbox">
<span class="p">cn</span>
</td>
<td class="descbox">cn of new template</td>
</tr>
<tr>
<td class="pbox">
<span class="p">classes</span>
</td>
<td class="descbox">object classes of the object the template will belong to</td>
</tr>
</table>
</dd>
</dl>
<dl>
<dt>
<b>Return value:</b>
</dt>
<dd>
<table>
<tr>
<td class="pbox">
<span class="t" />
</td>
<td class="descbox">template map</td>
</tr>
</table>
</dd>
</dl>
<div class="sigbox">
<span class="sig" id="CreateModule">global
<b>CreateModule (string cn, string class)
<span class="a"> -> </span>
<span class="t">map<string,any></span>
</b>
</span>
</div>
<p>
Creates default new map for new configuration object</p>
<dl>
<dt>
<b>Parameters:</b>
</dt>
<dd>
<table>
<tr>
<td class="pbox">
<span class="p">cn</span>
</td>
<td class="descbox"></td>
</tr>
<tr>
<td class="pbox">
<span class="p">class</span>
</td>
<td class="descbox">additional objectClass of new module (e.g.userConfiguration)</td>
</tr>
</table>
</dd>
</dl>
<dl>
<dt>
<b>Return value:</b>
</dt>
<dd>
<table>
<tr>
<td class="pbox">
<span class="t" />
</td>
<td class="descbox">new module map</td>
</tr>
</table>
</dd>
</dl>
<div class="sigbox">
<span class="sig" id="ReadDN">global
<b>ReadDN (string base, string search_filter)
<span class="a"> -> </span>
<span class="t">list<string></span>
</b>
</span>
</div>
<p>
Searches for DN's of all objects defined by filter in given base ("sub")</p>
<dl>
<dt>
<b>Parameters:</b>
</dt>
<dd>
<table>
<tr>
<td class="pbox">
<span class="p">base</span>
</td>
<td class="descbox">search base</td>
</tr>
<tr>
<td class="pbox">
<span class="p">search_filter</span>
</td>
<td class="descbox">if filter is empty, "objectClass=*" is used</td>
</tr>
</table>
</dd>
</dl>
<dl>
<dt>
<b>Return value:</b>
</dt>
<dd>
<table>
<tr>
<td class="pbox">
<span class="t" />
</td>
<td class="descbox">of DN's (list of strings)</td>
</tr>
</table>
</dd>
</dl>
<div class="sigbox">
<span class="sig" id="GetGroupsDN">global
<b>GetGroupsDN (string base)
<span class="a"> -> </span>
<span class="t">list</span>
</b>
</span>
</div>
<p>
Returns DN's of groups (objectClass=posixGroup) in given base</p>
<dl>
<dt>
<b>Parameters:</b>
</dt>
<dd>
<table>
<tr>
<td class="pbox">
<span class="p">base</span>
</td>
<td class="descbox">LDAP search base</td>
</tr>
</table>
</dd>
</dl>
<dl>
<dt>
<b>Return value:</b>
</dt>
<dd>
<table>
<tr>
<td class="pbox">
<span class="t" />
</td>
<td class="descbox">groups (list of strings)</td>
</tr>
</table>
</dd>
</dl>
<div class="sigbox">
<span class="sig" id="CheckTemplateDN">global
<b>CheckTemplateDN (string dn)
<span class="a"> -> </span>
<span class="t">map</span>
</b>
</span>
</div>
<p>
Check if given DN exist and if it points to some template</p>
<dl>
<dt>
<b>Parameters:</b>
</dt>
<dd>
<table>
<tr>
<td class="pbox">
<span class="p">dn</span>
</td>
<td class="descbox"></td>
</tr>
</table>
</dd>
</dl>
<dl>
<dt>
<b>Return value:</b>
</dt>
<dd>
<table>
<tr>
<td class="pbox">
<span class="t" />
</td>
<td class="descbox">empty map if DN don't exist, template map if DN points
to template object, nil if object with given DN is not template</td>
</tr>
</table>
</dd>
</dl>
<div class="sigbox">
<span class="sig" id="CommitConfigModules">global
<b>CommitConfigModules (map modules)
<span class="a"> -> </span>
<span class="t">boolean</span>
</b>
</span>
</div>
<p>
Save the edited map of configuration modules to global map</p>
<dl>
<dt>
<b>Parameters:</b>
</dt>
<dd>
<table>
<tr>
<td class="pbox">
<span class="p">modules</span>
</td>
<td class="descbox"></td>
</tr>
</table>
</dd>
</dl>
<div class="sigbox">
<span class="sig" id="CommitTemplates">global
<b>CommitTemplates (map templs)
<span class="a"> -> </span>
<span class="t">boolean</span>
</b>
</span>
</div>
<p>
Save the edited map of templates to global map</p>
<dl>
<dt>
<b>Parameters:</b>
</dt>
<dd>
<table>
<tr>
<td class="pbox">
<span class="p">templs</span>
</td>
<td class="descbox"></td>
</tr>
</table>
</dd>
</dl>
<div class="sigbox">
<span class="sig" id="WriteToLDAP">global
<b>WriteToLDAP (map objects)
<span class="a"> -> </span>
<span class="t">map</span>
</b>
</span>
</div>
<p>
Writes map of objects to LDAP</p>
<dl>
<dt>
<b>Parameters:</b>
</dt>
<dd>
<table>
<tr>
<td class="pbox">
<span class="p">objects</span>
</td>
<td class="descbox">map of objects to write. It is in the form:
$[ DN: (map) attribute_values]</td>
</tr>
</table>
</dd>
</dl>
<dl>
<dt>
<b>Return value:</b>
</dt>
<dd>
<table>
<tr>
<td class="pbox">
<span class="t" />
</td>
<td class="descbox">error map (empty on success)</td>
</tr>
</table>
</dd>
</dl>
<dl>
<dt>
<b>Example</b>
</dt>
<dd>
<table>
<tr>
<td align="left" valign="top"><pre>
TODO</pre></td>
</tr>
</table>
</dd>
</dl>
<div class="sigbox">
<span class="sig" id="WriteLDAP">global
<b>WriteLDAP (map objects)
<span class="a"> -> </span>
<span class="t">boolean</span>
</b>
</span>
</div>
<p>
Writes map of objects to LDAP. Ask for password, when needed and
shows the error message when necessary.</p>
<dl>
<dt>
<b>Parameters:</b>
</dt>
<dd>
<table>
<tr>
<td class="pbox">
<span class="p">objects</span>
</td>
<td class="descbox"></td>
</tr>
</table>
</dd>
</dl>
<dl>
<dt>
<b>Return value:</b>
</dt>
<dd>
<table>
<tr>
<td class="pbox">
<span class="t" />
</td>
<td class="descbox">success</td>
</tr>
</table>
</dd>
</dl>
<div class="sigbox">
<span class="sig" id="WriteOpenLdapConf">global
<b>WriteOpenLdapConf ()
<span class="a"> -> </span>
<span class="t">boolean</span>
</b>
</span>
</div>
<p>
Modify also /etc/openldap/ldap.conf for the use of
ldap client utilities (like ldapsearch)</p>
<dl>
<dt>
<b>Return value:</b>
</dt>
<dd>
<table>
<tr>
<td class="pbox">
<span class="t" />
</td>
<td class="descbox">modified?</td>
</tr>
</table>
</dd>
</dl>
<div class="sigbox">
<span class="sig" id="WritePlusLine">global
<b>WritePlusLine (boolean login)
<span class="a"> -> </span>
<span class="t">boolean</span>
</b>
</span>
</div>
<p>
If a file does not + entry, add it.</p>
<dl>
<dt>
<b>Parameters:</b>
</dt>
<dd>
<table>
<tr>
<td class="pbox">
<span class="p">login</span>
</td>
<td class="descbox"></td>
</tr>
</table>
</dd>
</dl>
<dl>
<dt>
<b>Return value:</b>
</dt>
<dd>
<table>
<tr>
<td class="pbox">
<span class="t" />
</td>
<td class="descbox">success?</td>
</tr>
</table>
</dd>
</dl>
<div class="sigbox">
<span class="sig" id="CheckOrderOfCreation">global
<b>CheckOrderOfCreation ()
<span class="a"> -> </span>
<span class="t">boolean</span>
</b>
</span>
</div>
<p>
Check if references to other objects are correct;
create these objects if possible</p>
<div class="sigbox">
<span class="sig" id="CreateDefaultLDAPConfiguration">local
<b>CreateDefaultLDAPConfiguration ()
<span class="a"> -> </span>
<span class="t">boolean</span>
</b>
</span>
</div>
<p>
create the default objects for users and groups</p>
<div class="sigbox">
<span class="sig" id="CheckNDS">global
<b>CheckNDS ()
<span class="a"> -> </span>
<span class="t">boolean</span>
</b>
</span>
</div>
<p>
Check the server if it is NDS (novell directory service)</p>
<div class="sigbox">
<span class="sig" id="Write">global
<b>Write (block<boolean> abort)
<span class="a"> -> </span>
<span class="t">symbol</span>
</b>
</span>
</div>
<p>
Saves LDAP configuration.</p>
<dl>
<dt>
<b>Parameters:</b>
</dt>
<dd>
<table>
<tr>
<td class="pbox">
<span class="p">abort</span>
</td>
<td class="descbox">block for abort</td>
</tr>
</table>
</dd>
</dl>
<div class="sigbox">
<span class="sig" id="WriteNow">global
<b>WriteNow ()
<span class="a"> -> </span>
<span class="t">boolean</span>
</b>
</span>
</div>
<p>
wrapper for Write, without abort block</p>
<div class="sigbox">
<span class="sig" id="CheckBaseConfig">global
<b>CheckBaseConfig (string dn)
<span class="a"> -> </span>
<span class="t">boolean</span>
</b>
</span>
</div>
<p>
Check if base config DN belongs to some existing object and offer
creating it if necessary</p>
<dl>
<dt>
<b>Parameters:</b>
</dt>
<dd>
<table>
<tr>
<td class="pbox">
<span class="p">dn</span>
</td>
<td class="descbox"></td>
</tr>
</table>
</dd>
</dl>
<div class="sigbox">
<span class="sig" id="SetBindPassword">global
<b>SetBindPassword (string pass)
<span class="a"> -> </span>
<span class="t">void</span>
</b>
</span>
</div>
<p>
Set the value of bind_pass variable</p>
<dl>
<dt>
<b>Parameters:</b>
</dt>
<dd>
<table>
<tr>
<td class="pbox">
<span class="p">pass</span>
</td>
<td class="descbox">new password valure</td>
</tr>
</table>
</dd>
</dl>
<div class="sigbox">
<span class="sig" id="SetAnonymous">global
<b>SetAnonymous (boolean anon)
<span class="a"> -> </span>
<span class="t">void</span>
</b>
</span>
</div>
<p>
Set the value of 'anonymous' variable (= bind without password)</p>
<dl>
<dt>
<b>Parameters:</b>
</dt>
<dd>
<table>
<tr>
<td class="pbox">
<span class="p">anon</span>
</td>
<td class="descbox">new value</td>
</tr>
</table>
</dd>
</dl>
<div class="sigbox">
<span class="sig" id="SetGUI">global
<b>SetGUI (boolean gui)
<span class="a"> -> </span>
<span class="t">void</span>
</b>
</span>
</div>
<p>
Set the value of 'use_gui' variable (= show error popups)</p>
<dl>
<dt>
<b>Parameters:</b>
</dt>
<dd>
<table>
<tr>
<td class="pbox">
<span class="p">gui</span>
</td>
<td class="descbox">new value</td>
</tr>
</table>
</dd>
</dl>
<div class="sigbox">
<span class="sig" id="RestartSSHD">global
<b>RestartSSHD (boolean restart)
<span class="a"> -> </span>
<span class="t">void</span>
</b>
</span>
</div>
<p>
Set the value of restart_sshd (= restart sshd during write)</p>
<dl>
<dt>
<b>Parameters:</b>
</dt>
<dd>
<table>
<tr>
<td class="pbox">
<span class="p">restart</span>
</td>
<td class="descbox"></td>
</tr>
</table>
</dd>
</dl>
</div>
<div class="footer">
<hr />
<i>YaST2 Developers Documentation</i>
<img class="right" alt="" src="/usr/share/doc/packages/yast2-devtools/images/yast2-mini.png" />
</div>
</body>
</html>
ACC SHELL 2018