NAME

Net::ISC::DHCPd::Config - Parse and create ISC DHCPd config


SYNOPSIS

    use Net::ISC::DHCPd::Config;
    my $config = Net::ISC::DHCPd::Config->new(
                     file => '/etc/dhcpd3/dhcpd.conf',
                 );
    # parse the config
    $config->parse;
    # parsing includes are lazy
    for my $include ($config->includes) {
        $include->parse;
    }
    print $config->subnets->[0]->dump;
    print $config->includes->[0]->hosts->[0]->dump;
    print $config->generate;


DESCRIPTION

This class does the role the Net::ISC::DHCPd::Config::Root manpage.


POSSIBLE CONFIG TREE

 Config
  |- Config::Include
  |- Config::Subnet
  |  |- Config::Option
  |  |- Config::Declaration
  |  |- Config::Range
  |  |- Config::Host
  |  |  |- ...
  |  |- Config::Filename
  |  '- Config::Pool
  |     |- Option
  |     |- Range
  |     '- KeyValue
  |
  |- Config::SharedNetwork
  |  |- Config::Subnet
  |  |  |- ...
  |  |- Config::Declaration
  |  '- Config::KeyValue
  |
  |- Config::Group
  |  |- Config::Host
  |  |  |- ...
  |  |- Config::Option
  |  |- Config::Declaration
  |  '- Config::KeyValue
  |
  |- Config::Host
  |  |- Config::Option
  |  |- Config::Filename
  |  |- Config::Declaration
  |  '- Config::KeyValue
  |
  |- Config::OptionSpace
  |  '- Config::OptionSpace::Option
  |
  |- Config::Option
  |- Config::Declaration *
  |- Config::Function
  |- Config::KeyValue
  '- Config::Single      *


METHODS

filehandle

This method will be deprecated.


COPYRIGHT & LICENSE


AUTHOR

See the Net::ISC::DHCPd manpage.