Exemplo n.º 1
0
Arquivo: msec.py Projeto: eugeni/msec
    # loading initial config
    msec_config = config.MsecConfig(log, config="%s%s" % (root, config.SECURITYCONF))
    permconf = None
    # loading permissions
    permconf = config.PermConfig(log, config="%s%s" % (root, config.PERMCONF))
    permconf.load()

    # forcing new level
    if force_level:
        # first load the default configuration for level
        levelconf = config.load_defaults(log, level, root=root)
        params = levelconf.list_options()
        if not params:
            log.error(_("Level '%s' not found, aborting.") % level)
            sys.exit(1)
        log.info(_("Switching to '%s' level.") % level)
        msec_config.reset()
        msec_config.merge(levelconf, overwrite=True)
        # now saving new permissions
        standard_permconf = config.load_default_perms(log, level, root=root)
        params = standard_permconf.list_options()
        if not params:
            log.error(_("No custom file permissions for level '%s'.") % level)
        log.info(_("Saving file permissions to '%s' level.") % level)
        # updating base level
        permconf.reset()
        permconf.merge(standard_permconf, overwrite=True)
    else:
        msec_config.load()

    # load base levels