test_file_get_relro.cpp
Go to the documentation of this file.
1 //
2 // Bareflank Hypervisor
3 //
4 // Copyright (C) 2015 Assured Information Security, Inc.
5 // Author: Rian Quinn <quinnr@ainfosec.com>
6 // Author: Brendan Kerrigan <kerriganb@ainfosec.com>
7 //
8 // This library is free software; you can redistribute it and/or
9 // modify it under the terms of the GNU Lesser General Public
10 // License as published by the Free Software Foundation; either
11 // version 2.1 of the License, or (at your option) any later version.
12 //
13 // This library is distributed in the hope that it will be useful,
14 // but WITHOUT ANY WARRANTY; without even the implied warranty of
15 // MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
16 // Lesser General Public License for more details.
17 //
18 // You should have received a copy of the GNU Lesser General Public
19 // License along with this library; if not, write to the Free Software
20 // Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA
21 
22 #include <test.h>
23 
24 void
25 bfelf_loader_ut::test_bfelf_file_get_relro_invalid_ef()
26 {
27  bfelf64_addr addr = 0;
28  bfelf64_xword size = 0;
29 
30  auto ret = bfelf_file_get_relro(nullptr, &addr, &size);
32 }
33 
34 void
35 bfelf_loader_ut::test_bfelf_file_get_relro_invalid_addr()
36 {
37  auto ret = 0LL;
38  bfelf_file_t ef = {};
39  bfelf64_xword size = 0;
40 
41  ret = bfelf_file_get_relro(&ef, nullptr, &size);
43 }
44 
45 void
46 bfelf_loader_ut::test_bfelf_file_get_relro_invalid_size()
47 {
48  auto ret = 0LL;
49  bfelf_file_t ef = {};
50  bfelf64_addr addr = 0;
51 
52  ret = bfelf_file_get_relro(&ef, &addr, nullptr);
54 }
55 
56 void
57 bfelf_loader_ut::test_bfelf_file_get_relro_success()
58 {
59  auto ret = 0LL;
60  bfelf_file_t ef = {};
61  bfelf64_addr addr = 0;
62  bfelf64_xword size = 0;
63 
64  ret = bfelf_file_get_relro(&ef, &addr, &size);
65  this->expect_true(ret == BFELF_SUCCESS);
66 }
#define BFELF_ERROR_INVALID_ARG
Definition: error_codes.h:81
constexpr const auto size
constexpr const auto addr
Definition: cpuid_x64.h:80
#define BFELF_SUCCESS
Definition: error_codes.h:80
#define expect_true(a)