Ejemplo n.º 1
0
    def test_cache_config(self):
        """Test the config is properly cached between calls."""
        c = config.get_config()
        self.assertEqual(c.get("default", "attribute", fallback=None), None)

        c.add_section("default")
        c.set("default", "attribute", "value")
        self.assertEqual(c.get("default", "attribute"), "value")

        c_copy = config.get_config()
        self.assertEqual(c_copy.get("default", "attribute"), "value")
Ejemplo n.º 2
0
 def test_multiple_config(self):
     """Test reading multiple config files."""
     config.CONFIG_FILES = [
         os.path.join(CONFIG_DIR, "keylime-1.conf"),
         os.path.join(CONFIG_DIR, "keylime-2.conf"),
     ]
     c = config.get_config()
     self.assertEqual(c.get("default", "attribute_1"), "value_1")
     self.assertEqual(c.get("default", "attribute_2"), "value_2")
Ejemplo n.º 3
0
LOG_TO_FILE = []
LOG_TO_STREAM = []
for svc in ["registrar", "cloud_verifier"]:
    logdest = config.get(svc, "log_destination", fallback="")

    if logdest == "file":
        LOG_TO_FILE.append(svc)

    if logdest == "stream":
        LOG_TO_STREAM.append(svc)

LOGDIR = os.getenv("KEYLIME_LOGDIR", "/var/log/keylime")
# not clear that this works right.  console logging may not work
LOGSTREAM = os.path.join(LOGDIR, "keylime-stream.log")

logging_config.fileConfig(config.get_config())


def set_log_func(loglevel: int, logger: Logger) -> Callable[..., None]:
    log_func = logger.info

    if loglevel == logging.CRITICAL:
        log_func = logger.critical
    elif loglevel == logging.ERROR:
        log_func = logger.error
    elif loglevel == logging.WARNING:
        log_func = logger.warning
    elif loglevel == logging.INFO:
        log_func = logger.info
    elif loglevel == logging.DEBUG:
        log_func = logger.debug
Ejemplo n.º 4
0
'''
SPDX-License-Identifier: Apache-2.0
Copyright 2017 Massachusetts Institute of Technology.
'''

import time
import os

import keylime.tornado_requests as tornado_requests
import keylime.ca_util as ca_util
import keylime.secure_mount as secure_mount
import keylime.config as common
import keylime.keylime_logging as keylime_logging

# read the config file
config = common.get_config()
logger = keylime_logging.init_logging('update_crl')


def execute(json_revocation):
    if json_revocation['type'] != 'revocation':
        return

    secdir = secure_mount.mount()

    cert_path = config.get('cloud_agent', 'revocation_cert')
    if cert_path == "default":
        cert_path = '%s/unzipped/RevocationNotifier-cert.crt' % (secdir)
    else:
        # if it is a relative, convert to absolute in work_dir
        if cert_path[0] != '/':
Ejemplo n.º 5
0
 def test_no_config(self):
     """Test that no config files is an empty set."""
     c = config.get_config()
     self.assertEqual(c.get("default", "value_1", fallback=None), None)