2 * Copyright (c) 2013 Samsung Electronics Co., Ltd All Rights Reserved
4 * Licensed under the Apache License, Version 2.0 (the "License");
5 * you may not use this file except in compliance with the License.
6 * You may obtain a copy of the License at
8 * http://www.apache.org/licenses/LICENSE-2.0
10 * Unless required by applicable law or agreed to in writing, software
11 * distributed under the License is distributed on an "AS IS" BASIS,
12 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
13 * See the License for the specific language governing permissions and
14 * limitations under the License.
18 * @file tests_common.cpp
19 * @author Lukasz Kostyra (l.kostyra@partner.samsung.com)
21 * @brief Common functions and macros used in security-tests package.
24 #include "tests_common.h"
27 int DB::Transaction::db_result = PC_OPERATION_SUCCESS;
29 const char *WGT_APP_ID = "QwCqJ0ttyS";
31 int smack_runtime_check(void)
33 static int smack_present = -1;
34 if (-1 == smack_present) {
35 if (smack_smackfs_path()) {
46 #ifndef WRT_SMACK_ENABLED
49 return smack_runtime_check();
53 void closeFdPtr(int *fd)
55 TEMP_FAILURE_RETRY(close(*fd));
59 * Dropping root privileges
60 * returns 0 on success, 1 on error
62 int drop_root_privileges(void)
65 /* process is running as root, drop privileges */
66 if (setgid(APP_GID) != 0)
68 if (setuid(APP_UID) != 0)
78 void setLabelForSelf(const int line, const char *label)
80 int ret = smack_set_label_for_self(label);
81 RUNNER_ASSERT_MSG_BT(ret == 0, "Error in smack_set_label_for_self(): " << ret << ", line: " << line);