---
name: "Lemonldap::NG::Common::Conf"
section: "3pm"
platform: "linux"
package: "liblemonldap-ng-common-perl"
version: "2.21.2+ds-1+deb13u3"
release: "Debian 13 (Trixie)"
platforms: ["linux"]
url: "https://new.carta.tech/Lemonldap::NG::Common::Conf"
---

# Lemonldap::NG::Common::Conf(3pm)

Perl extension written to manage Lemonldap::NG Web-SSO configuration.

## NAME

Lemonldap::NG::Common::Conf - Perl extension written to manage Lemonldap::NG Web-SSO configuration.

## SYNOPSIS

```
  use Lemonldap::NG::Common::Conf;
  # Lemonldap::NG::Common::Conf reads loacl configuration from lemonldap-ng.ini.
  # Parameters can be overridden in a hash:
  my $confAccess = new Lemonldap::NG::Common::Conf(
              {
                  type=>'File',
                  dirName=>"/tmp/",
                  # To use local cache, set :
                  localStorage => "Cache::FileCache",
                  localStorageOptions = {
                      'namespace' => 'lemonldap-ng-config',
                      'default_expires_in' => 600,
                      'directory_umask' => '007',
                      'cache_root' => '/tmp',
                      'cache_depth' => 5,
                  },
              },
    ) or die "Unable to build Lemonldap::NG::Common::Conf, see Apache logs";
  # Next, get global configuration. Note that local parameters override global
  # ones
  my $config = $confAccess->getConf();
```

## DESCRIPTION

Lemonldap::NG::Common::Conf is used by all Lemonldap::NG packages to access to local/global configuration.

### SUBROUTINES

- •

  **new** (constructor)

  It can takes any Lemonldap::NG parameter to override configuration. The 'confFile' parameter can be used to override lemonldap-ng.ini path. Examples:

  - •

    **Set another lemonldap-ng.ini file**\
       `$confAccess` = new Lemonldap::NG::Common::Conf(\
                       { confFile =\> '/opt/lemonldap-ng.ini' } ); =item \* **Override global storage**:\
       `$confAccess` = new Lemonldap::NG::Common::Conf(\
                       {\
                         type    =\> 'File',\
                         dirName =\> '/var/lib/lemonldap-ng/conf',\
                        });

- •

  **getConf**: returns a hash reference to the configuration. it takes a hash reference as first argument containing 2 optional parameters:

  - •

    `"cfgNum ="` `$number`\>: the number of the configuration wanted. If this argument is omitted, the last configuration is returned.

- •

  **saveConf**: stores the Lemonldap::NG configuration passed in argument (hash reference). it returns the number of the new configuration.

## SEE ALSO

\<http://lemonldap-ng.org/\>

## AUTHORS

- LemonLDAP::NG team \<http://lemonldap-ng.org/team\>

  ## BUG REPORT

Use OW2 system to report bug or ask for features: \<https://gitlab.ow2.org/lemonldap-ng/lemonldap-ng/issues\>

## DOWNLOAD

Lemonldap::NG is available at \<https://lemonldap-ng.org/download\>

## COPYRIGHT AND LICENSE

See COPYING file for details.

This library is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation; either version 2, or (at your option) any later version.

This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU General Public License for more details.

You should have received a copy of the GNU General Public License along with this program.  If not, see \<http://www.gnu.org/licenses/\>.
