# Copyright (c) 2013 The Chromium OS Authors. All rights reserved.
# Use of this source code is governed by a BSD-style license that can be
# found in the LICENSE file.

AUTHOR = "Chrome OS Team"
NAME = "kASLR"
TIME = "LONG"
TEST_CATEGORY = "Functional"
TEST_CLASS = "security"
TEST_TYPE = "server"
ATTRIBUTES = "suite:security_weekly"
SUITE = "security_weekly"

DOC = """
This test reboots the host many times to check kASLR entropy.
"""

def run_bootmessages(machine):
    host = hosts.create_host(machine)
    job.run_test("security_kASLR", host=host)

parallel_simple(run_bootmessages, machines)
