NO-TICKET AuditUtils added
[platform/core/security/suspicious-activity-monitor.git] / device-agent / daemon / audit / audit_utils.h
1 /**
2  * Samsung Ukraine R&D Center (SRK under a contract between)
3  * LLC "Samsung Electronics Co", Ltd (Seoul, Republic of Korea)
4  * Copyright (C) 2018 Samsung Electronics Co., Ltd. All rights reserved.
5  */
6 /**
7  * @file   audit_utils.h
8  * @brief  Audit helper
9  * @date   Created Apr 03, 2018
10  * @author Mail to: <A HREF="mailto:i.metelytsia@samsung.com">Iurii Metelytsia, i.metelytsia@samsung.com</A>
11  */
12
13 #ifndef AUDIT_UTILS_H
14 #define AUDIT_UTILS_H
15
16 #include <string>
17 #include <vector>
18 #include <utility>
19
20 namespace audit
21 {
22 /**
23  * @brief Audit helper class
24  */
25 class AuditUtils
26 {
27 public:
28     /**
29      * @typedef SyscallList
30      * @brief System call list
31      */
32     using SyscallList = std::vector<std::pair<int,std::string>>;
33
34     /**
35      * @brief Get supported system calls
36      * @return system call list
37      */
38     static SyscallList syscallTable();
39
40     /**
41      * @brief Get the platform type
42      * @return platform string or nullptr
43      */
44     static const char* platformType();
45
46 private:
47     /**
48      * @brief Get the platform type
49      * @return platform type or -1 in case of error
50      */
51     static int platform();
52 };
53
54 } // namespace audit
55
56 #endif // AUDIT_UTILS_H