blob: fb4d8ca196365681189d7b46c7505787939d164c [file] [log] [blame]
Karl Zhang3de5ab12021-05-31 11:45:48 +08001/*
Nik Dewallybacae6c2024-07-30 16:58:14 +01002 * Copyright (c) 2019-2024, Arm Limited. All rights reserved.
Karl Zhang3de5ab12021-05-31 11:45:48 +08003 *
4 * SPDX-License-Identifier: BSD-3-Clause
5 *
6 */
7
8#ifndef SECURITY_CALL_HPP
9#define SECURITY_CALL_HPP
10
11#include <string>
12#include <vector>
Nik Dewallybacae6c2024-07-30 16:58:14 +010013#include <iosfwd>
Karl Zhang3de5ab12021-05-31 11:45:48 +080014
Nik Dewallybacae6c2024-07-30 16:58:14 +010015#include "find_or_create_asset.hpp"
16#include "psa_call.hpp"
Karl Zhang3de5ab12021-05-31 11:45:48 +080017
Nik Dewallybacae6c2024-07-30 16:58:14 +010018class tf_fuzz_info;
Karl Zhang3de5ab12021-05-31 11:45:48 +080019
20using namespace std;
21
22class hash_call : public security_call
23{
24public:
25 // Data members: // (low value in hiding these behind setters and getters)
26 // Methods:
27 bool copy_call_to_asset (void);
28 bool copy_asset_to_call (void);
29 void fill_in_prep_code (void);
30 void fill_in_command (void);
31 /* Hash checks are different from the rest in that there's a single "call" --
32 not a PSA call though -- for all of the assets cited in the template line.
33 In other cases, create a single call for each asset cited by the template
34 line, but in this case it's a single call for all of them. */
35 hash_call (tf_fuzz_info *test_state, long &asset_ser_no,
36 asset_search how_asset_found); // (constructor)
37 ~hash_call (void);
38
39protected:
40 // Data members:
41 // Methods:
42// void calc_result_code (void); for *now* keep this in security_call::
43
44private:
45 // Data members:
46 // Methods:
47};
48
49#endif // #ifndef SECURITY_CALL_HPP