def test_config_applies_to_daemon_except():
    list1 = DaemonList(value=['all', 'except', 'sendmail'])
    list2 = DaemonList(value=['postfix'])
    facts = TcpWrappersFacts(daemon_lists=[list1, list2])

    assert lib.config_applies_to_daemon(facts, 'vsftpd') is True
    assert lib.config_applies_to_daemon(facts, 'sendmail') is False
    assert lib.config_applies_to_daemon(facts, 'postfix') is True
    assert lib.config_applies_to_daemon(facts, 'foo') is True

    list1 = DaemonList(value=['all', 'except', 'b*', 'EXCEPT', 'bar'])
    facts = TcpWrappersFacts(daemon_lists=[list1])
    assert lib.config_applies_to_daemon(facts, 'foo') is True
    assert lib.config_applies_to_daemon(facts, 'bar') is True
    assert lib.config_applies_to_daemon(facts, 'baar') is False

    list1 = DaemonList(value=['all', 'except', 'vsftpd'])
    facts = TcpWrappersFacts(daemon_lists=[list1])
    assert lib.config_applies_to_daemon(facts, 'vsftpd') is False

    list1 = DaemonList(value=['all', 'except', 'all', 'except', 'vsftpd'])
    facts = TcpWrappersFacts(daemon_lists=[list1])
    assert lib.config_applies_to_daemon(facts, 'vsftpd') is True

    list1 = DaemonList(
        value=['all', 'except', 'all', 'except', 'all', 'except', 'vsftpd'])
    facts = TcpWrappersFacts(daemon_lists=[list1])
    assert lib.config_applies_to_daemon(facts, 'vsftpd') is False
def test_config_applies_to_daemon_empty():
    daemon_list = DaemonList(value=[''])
    facts = TcpWrappersFacts(daemon_lists=[daemon_list])
    assert lib.config_applies_to_daemon(facts, 'vsftpd') is False

    daemon_list = DaemonList(value=[])
    facts = TcpWrappersFacts(daemon_lists=[daemon_list])
    assert lib.config_applies_to_daemon(facts, 'vsftpd') is False
def test_config_applies_to_daemon_question_mark_wildcard():
    daemon_list = DaemonList(value=['vs?tpd'])
    facts = TcpWrappersFacts(daemon_lists=[daemon_list])
    assert lib.config_applies_to_daemon(facts, 'vsftpd') is True

    daemon_list = DaemonList(value=['vsf?tpd'])
    facts = TcpWrappersFacts(daemon_lists=[daemon_list])
    assert lib.config_applies_to_daemon(facts, 'vsftpd') is False

    daemon_list = DaemonList(value=['?'])
    facts = TcpWrappersFacts(daemon_lists=[daemon_list])
    assert lib.config_applies_to_daemon(facts, 'vsftpd') is False

    daemon_list = DaemonList(value=['??????'])
    facts = TcpWrappersFacts(daemon_lists=[daemon_list])
    assert lib.config_applies_to_daemon(facts, 'vsftpd') is True
Esempio n. 4
0
def test_actor_without_sendmail_package(current_actor_context):
    tcpwrap_facts = TcpWrappersFacts(daemon_lists=[])
    current_actor_context.feed(
        create_modulesfacts(installed_rpm=without_sendmail))
    current_actor_context.feed(tcpwrap_facts)
    current_actor_context.run()
    assert not current_actor_context.consume(Report)
def test_config_applies_to_daemon_asterisk_wildcard():
    daemon_list = DaemonList(value=['*ftp*'])
    facts = TcpWrappersFacts(daemon_lists=[daemon_list])
    assert lib.config_applies_to_daemon(facts, 'vsftpd') is True

    daemon_list = DaemonList(value=['************'])
    facts = TcpWrappersFacts(daemon_lists=[daemon_list])
    assert lib.config_applies_to_daemon(facts, 'vsftpd') is True

    daemon_list = DaemonList(value=['*'])
    facts = TcpWrappersFacts(daemon_lists=[daemon_list])
    assert lib.config_applies_to_daemon(facts, 'vsftpd') is True

    daemon_list = DaemonList(value=['*foo*'])
    facts = TcpWrappersFacts(daemon_lists=[daemon_list])
    assert lib.config_applies_to_daemon(facts, 'vsftpd') is False
Esempio n. 6
0
def test_actor_with_tcp_wrappers(current_actor_context):
    tcpwrap_facts = TcpWrappersFacts(
        daemon_lists=[DaemonList(value=['sendmail'])])
    current_actor_context.feed(
        create_modulesfacts(installed_rpm=with_sendmail))
    current_actor_context.feed(tcpwrap_facts)
    current_actor_context.run()
    assert 'inhibitor' in current_actor_context.consume(Report)[0].flags
def test_config_applies_to_daemon_simple():
    daemon_list = DaemonList(value=['vsftpd'])
    facts = TcpWrappersFacts(daemon_lists=[daemon_list])

    assert lib.config_applies_to_daemon(facts, 'vsftpd') is True
    assert lib.config_applies_to_daemon(facts, 'VsfTpd') is True
    assert lib.config_applies_to_daemon(facts, 'ftp') is False
    assert lib.config_applies_to_daemon(facts, 'foo') is False
def test_empty_tcp_wrappers():
    """ Test with empty tcp_wrappers facts """
    w = TcpWrappersFacts(daemon_lists=[])
    p = ["openssh", "systemd", "pam"]
    d = [("openssh", ["sshd"])]
    packages = config_affects_daemons(w, p, d)

    assert not packages
def test_matching_package():
    """ Test with matching package, but not daemon """
    w = TcpWrappersFacts(daemon_lists=[DaemonList(value=["imap"])])
    p = ["openssh", "systemd", "pam"]
    d = [("openssh", ["sshd"])]
    packages = config_affects_daemons(w, p, d)

    assert not packages
def test_empty_packages():
    """ Test with empty package list """
    w = TcpWrappersFacts(daemon_lists=[DaemonList(value=["ALL"])])
    p = []
    d = [("openssh", ["sshd"])]
    packages = config_affects_daemons(w, p, d)

    assert not packages
def test_config_applies_to_daemon_with_host():
    list1 = DaemonList(value=['vsftpd@localhost', 'sendmail'])
    list2 = DaemonList(value=['postfix'])
    facts = TcpWrappersFacts(daemon_lists=[list1, list2])

    assert lib.config_applies_to_daemon(facts, 'vsftpd') is True
    assert lib.config_applies_to_daemon(facts, 'sendmail') is True
    assert lib.config_applies_to_daemon(facts, 'postfix') is True
    assert lib.config_applies_to_daemon(facts, 'foo') is False
def test_matching_daemon():
    """ Test with matching package with daemon """
    w = TcpWrappersFacts(daemon_lists=[DaemonList(value=["sshd"])])
    p = ["openssh", "systemd", "pam"]
    d = [("openssh", ["sshd"])]
    packages = config_affects_daemons(w, p, d)

    assert len(packages) == 1
    assert "openssh" in packages
def test_config_applies_to_daemon_all_wildcard():
    daemon_list = DaemonList(value=['all'])
    facts = TcpWrappersFacts(daemon_lists=[daemon_list])
    assert lib.config_applies_to_daemon(facts, 'vsftpd') is True

    daemon_list = DaemonList(value=['aLl'])
    facts = TcpWrappersFacts(daemon_lists=[daemon_list])
    assert lib.config_applies_to_daemon(facts, 'vsftpd') is True

    daemon_list = DaemonList(value=['al'])
    facts = TcpWrappersFacts(daemon_lists=[daemon_list])
    assert lib.config_applies_to_daemon(facts, 'vsftpd') is False

    daemon_list = DaemonList(value=['ll'])
    facts = TcpWrappersFacts(daemon_lists=[daemon_list])
    assert lib.config_applies_to_daemon(facts, 'vsftpd') is False

    daemon_list = DaemonList(value=['valld'])
    facts = TcpWrappersFacts(daemon_lists=[daemon_list])
    assert lib.config_applies_to_daemon(facts, 'vsftpd') is False
Esempio n. 14
0
def test_actor_with_supported_tcpwrap_and_vsftpd_config(current_actor_context):
    config1 = VsftpdConfig(path='/etc/vsftpd/foo.conf', tcp_wrappers=False)
    config2 = VsftpdConfig(path='/etc/vsftpd/bar.conf', tcp_wrappers=False)
    vsftpd_facts = VsftpdFacts(configs=[config1, config2])
    daemon_list = DaemonList(value=['all', 'except', 'vsftpd'])
    tcpwrap_facts = TcpWrappersFacts(daemon_lists=[daemon_list])

    current_actor_context.feed(vsftpd_facts)
    current_actor_context.feed(tcpwrap_facts)
    current_actor_context.run()

    assert not current_actor_context.consume(Report)
Esempio n. 15
0
def test_actor_with_unsupported_tcpwrap_and_vsftpd_config(current_actor_context):
    config1 = VsftpdConfig(path='/etc/vsftpd/foo.conf', tcp_wrappers=False)
    config2 = VsftpdConfig(path='/etc/vsftpd/bar.conf', tcp_wrappers=True)
    vsftpd_facts = VsftpdFacts(configs=[config1, config2])
    daemon_list = DaemonList(value=['vsftpd'])
    tcpwrap_facts = TcpWrappersFacts(daemon_lists=[daemon_list])

    current_actor_context.feed(vsftpd_facts)
    current_actor_context.feed(tcpwrap_facts)
    current_actor_context.run()
    report = current_actor_context.consume(Report)[0]

    assert 'inhibitor' in report.flags
    assert 'foo.conf' not in report.detail['summary']
    assert 'bar.conf' in report.detail['summary']
def test_config_applies_to_daemon_with_host_except():
    daemon_list = DaemonList(value=['vsftpd@localhost', 'except', 'vsftpd'])
    facts = TcpWrappersFacts(daemon_lists=[daemon_list])
    assert lib.config_applies_to_daemon(facts, 'vsftpd') is False

    # It works like this for simplicity.
    daemon_list = DaemonList(
        value=['vsftpd@localhost', 'except', 'vsftpd@localhost'])
    facts = TcpWrappersFacts(daemon_lists=[daemon_list])
    assert lib.config_applies_to_daemon(facts, 'vsftpd') is True

    daemon_list = DaemonList(value=['vsftpd@localhost'])
    facts = TcpWrappersFacts(daemon_lists=[daemon_list])
    assert lib.config_applies_to_daemon(facts, 'vsftpd') is True

    daemon_list = DaemonList(value=['all', 'except', 'vsftpd@localhost'])
    facts = TcpWrappersFacts(daemon_lists=[daemon_list])
    assert lib.config_applies_to_daemon(facts, 'vsftpd') is True

    daemon_list = DaemonList(
        value=['all', 'except', 'all', 'except', 'vsftpd@localhost'])
    facts = TcpWrappersFacts(daemon_lists=[daemon_list])
    assert lib.config_applies_to_daemon(facts, 'vsftpd') is True

    daemon_list = DaemonList(value=[
        'all', 'except', 'all', 'except', 'all', 'except'
        'vsftpd@localhost'
    ])
    facts = TcpWrappersFacts(daemon_lists=[daemon_list])
    assert lib.config_applies_to_daemon(facts, 'vsftpd') is True

    daemon_list = DaemonList(value=[
        'all', 'except', 'all', 'except', 'all', 'except', 'all', 'except',
        'vsftpd@localhost'
    ])
    facts = TcpWrappersFacts(daemon_lists=[daemon_list])
    assert lib.config_applies_to_daemon(facts, 'vsftpd') is True
def test_config_applies_to_daemon_except_empty():
    daemon_list = DaemonList(value=['all', 'except'])
    facts = TcpWrappersFacts(daemon_lists=[daemon_list])
    assert lib.config_applies_to_daemon(facts, 'vsftpd') is True
def get_tcp_wrappers_facts(read_func=_read_file):
    daemon_lists = _get_daemon_lists(read_func=read_func)
    return TcpWrappersFacts(daemon_lists=daemon_lists)
def test_config_applies_to_daemon_whole_word():
    daemon_list = DaemonList(value=['ftp'])
    facts = TcpWrappersFacts(daemon_lists=[daemon_list])
    assert lib.config_applies_to_daemon(facts, 'vsftpd') is False