From a0adce7c4a93a152a7d4d1d585bd234faad89816 Mon Sep 17 00:00:00 2001 From: Matt Schwager Date: Fri, 5 Oct 2012 13:23:59 -0400 Subject: Started adding code to Acl.py, need to parse acl xml file correctly --- src/lib/Bcfg2/Server/Plugins/Acl.py | 24 ++++++++++++++++++++---- 1 file changed, 20 insertions(+), 4 deletions(-) (limited to 'src') diff --git a/src/lib/Bcfg2/Server/Plugins/Acl.py b/src/lib/Bcfg2/Server/Plugins/Acl.py index 0dd056ba4..907d2b6a6 100644 --- a/src/lib/Bcfg2/Server/Plugins/Acl.py +++ b/src/lib/Bcfg2/Server/Plugins/Acl.py @@ -1,8 +1,24 @@ -""" Provides access-control lists for server connections """ - +import os import Bcfg2.Server.Plugin -class Acl(Bcfg2.Server.Plugin.PrioDir): - name = "Acl" +class AclFile(Bcfg2.Server.Plugin.XMLFileBacked): + """ representation of ACL config.xml """ + + def __init__(self, filename, core=None): + try: + fam = core.fam + except AttributeError: + fam = None + Bcfg2.Server.Plugin.XMLFileBacked.__init__(self, filename, fam=fam, + should_monitor=True) + self.core = core + self.ips = [] + +class Acl(Bcfg2.Server.Plugin.Plugin, + Bcfg2.Server.Plugin.Connector): + """ allow connections to bcfg-server based on IP address """ def __init__(self, core, datastore): + Bcfg2.Server.Plugin.Plugin.__init__(self, core, datastore) + Bcfg2.Server.Plugin.Connector.__init__(self) + self.config = AclFile(os.path.join(self.data, 'config.xml'), core=core) -- cgit v1.2.3-1-g7c22