blob: 19fd5e44a0966de7f180b8a4f1ee5e5038cb6b73 [file] [log] [blame]
# Copyright (c) 2017 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.
import logging
import os
from autotest_lib.client.bin import test
from autotest_lib.client.common_lib import error
from autotest_lib.client.common_lib.cros import chrome
from autotest_lib.client.cros import cryptohome
class login_CryptohomeDataLeak(test.test):
"""Verify decrypted user data is cleared after end of session.
version = 1
def run_once(self):
"""Entry point of test"""
username = ''
test_file = ''
with chrome.Chrome() as cr:
username = cr.username
if not cryptohome.is_permanent_vault_mounted(username):
raise error.TestError('Expected to find a mounted vault.')
test_file = '/home/.shadow/%s/mount/hello' \
% cryptohome.get_user_hash(username)"Test file: %s", test_file)
open(test_file, 'w').close()
if cryptohome.is_vault_mounted(user=username, allow_fail=True):
raise error.TestError('Expected to not find a mounted vault.')
# At this point, the session is not active and the file name is expected
# to be encrypted again.
if os.path.isfile(test_file):
raise error.TestFail('File still visible after end of session.')