Manages DHCP host entries. It implements the complete module interface and uses meta-data
provided by the account modules for its functions.
Location and naming of modules
All LAM modules are placed in lib/modules/ and are named ".inc".
E.g. if you create a new module and its class name is "qmail" then the filename would be "qmail.inc".
The class name of a module must contain only a-z, A-Z, 0-9, -, and _.
You can avoid to override many functions by using {@link get_metaData()}.
All module classes should extend the baseModule class.
This function is overwritten because the fixed IPs are set after the ldap_add command.
Arguments
Name
Type
Description
Default
$newAccount
boolean
$attributes
array
LDAP attributes of this entry
Return value
Type
Description
array
array which contains status messages. Each entry is an array containing the status message parameters.
Tags
Name
Description
see
process_attributes(
)
:
array
Description
Processes user input of the primary module page. It checks if all input values are correct and updates the associated LDAP attributes.
Return value
Type
Description
array
list of info/error messages
reload_ips(
)
:
\true,
Description
Adapt the fixed ip with the subnet.
Return value
Type
Description
\true,
if ip were edit.
reset_overlapd_ip(
)
:
n/a
Description
Reset the overlapd_range() function
Return value
Type
Description
n/a
n/a
save_attributes(
)
:
array
Description
Returns a list of modifications which have to be made to the LDAP account.
Return value
Type
Description
array
list of modifications
<br>This function returns an array with 3 entries:
<br>array( DN1 ('add' => array($attr), 'remove' => array($attr), 'modify' => array($attr)), DN2 .... )
<br>DN is the DN to change. It may be possible to change several DNs (e.g. create a new user and add him to some groups via attribute memberUid)
<br>"add" are attributes which have to be added to LDAP entry
<br>"remove" are attributes which have to be removed from LDAP entry
<br>"modify" are attributes which have to been modified in LDAP entry
<br>"info" are values with informational value (e.g. to be used later by pre/postModify actions)