pvl/config/dhcp.py
changeset 9 2156906bfbf1
parent 8 46d36bc33086
child 10 65d91f6a2d2a
--- a/pvl/config/dhcp.py	Sun Jul 12 02:14:08 2009 +0300
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,81 +0,0 @@
-"""
-    Higher-level DHCP config structure model
-"""
-
-import dhcp_conf as dhcpc
-
-class Config (dhcpc.ConfFile) :
-    """
-        A full configuration file
-    """
-
-    def __init__ (self, name=dhcpc.ConfFile.DEFAULT_NAME, path=dhcpc.ConfFile.DEFAULT_PATH, 
-            settings=None, options=None, shared_network=False, subnets=None, hosts=None, comment=None
-    ) :
-        """
-            Create a full configuration file for the given settings:
-            
-            settings:       a { name: value } mappping of general settings to set
-            options:        a { opt_name: opt_value } mapping of options to set
-            shared_network: define the subnets as a shared network of the given name
-            subnets:        an iterable of Subnet's to define
-            hosts:          an iterable of Host's to define
-
-        """
-
-        dhcpc.ConfFile.__init__(self, name, path, comment=comment)
-
-        # define global settings
-        if settings :
-            self.add_params(dhcpc.Parameter(setting, value) for setting, value in settings.iteritems())
-        
-        # define global options
-        if options :
-            self.add_params(dhcpc.Option(option, value) for option, value in options.iteritems())
-        
-        # the shared-network section, or a series of subnets
-        if shared_network :
-            self.add_decl(dhcpc.SharedNetwork(shared_network, decls=subnets))
-        
-        elif subnets :
-            self.add_decls(subnets)
-        
-        # hosts section
-        if hosts :
-            self.add_decls(hosts)
-
-class Subnet (dhcpc.Subnet) :
-    """
-        A subnet declaration with a router, and optionally a dynamic address pool, and allow/deny unknown clients
-    """
-
-    def __init__ (self, subnet, router_idx=1, range=None, unknown_clients=None, comment=None) :
-        """
-            @param subnet the addr.IP representing the subnet
-            @param router_idx the subnet[index] of the default gateway
-            @param range optional (from_idx, to_idx) to define a dhcp pool
-            @param unknown_clients optional 'allow'/'deny' to set a policy for unknown clients
-        """
-        
-        # validate
-        if unknown_clients :
-            assert unknown_clients in ('allow', 'deny')
-
-        super(Subnet, self).__init__(subnet, params=[
-            dhcpc.Option("routers", subnet[router_idx]),
-            dhcpc.Parameter("range", subnet[range[0]], subnet[range[1]]) if range else None,
-            dhcpc.Parameter(unknown_clients, "unknown-clients") if unknown_clients else None,
-        ], comment=comment)
-
-
-class Host (dhcpc.Host) :
-    """
-        A host declaration with a hardware address and a IP address
-    """
-
-    def __init__ (self, hostname, mac_addr, ip_addr, comment=None) :
-        super(Host, self).__init__(hostname, params=[
-            dhcpc.Parameter("hardware ethernet", mac_addr),
-            dhcpc.Parameter("fixed-address", ip_addr)
-        ], comment=comment)
-