122c0b7e4Sopenharmony_ci/* 222c0b7e4Sopenharmony_ci * Copyright (c) 2023 Huawei Device Co., Ltd. 322c0b7e4Sopenharmony_ci * Licensed under the Apache License, Version 2.0 (the "License"); 422c0b7e4Sopenharmony_ci * you may not use this file except in compliance with the License. 522c0b7e4Sopenharmony_ci * You may obtain a copy of the License at 622c0b7e4Sopenharmony_ci * 722c0b7e4Sopenharmony_ci * http://www.apache.org/licenses/LICENSE-2.0 822c0b7e4Sopenharmony_ci * 922c0b7e4Sopenharmony_ci * Unless required by applicable law or agreed to in writing, software 1022c0b7e4Sopenharmony_ci * distributed under the License is distributed on an "AS IS" BASIS, 1122c0b7e4Sopenharmony_ci * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 1222c0b7e4Sopenharmony_ci * See the License for the specific language governing permissions and 1322c0b7e4Sopenharmony_ci * limitations under the License. 1422c0b7e4Sopenharmony_ci */ 1522c0b7e4Sopenharmony_ci 1622c0b7e4Sopenharmony_ci#include "fuzztest_helper.h" 1722c0b7e4Sopenharmony_ci 1822c0b7e4Sopenharmony_ci#include "accesstoken_kit.h" 1922c0b7e4Sopenharmony_ci#include "nativetoken_kit.h" 2022c0b7e4Sopenharmony_ci#include "token_setproc.h" 2122c0b7e4Sopenharmony_ci 2222c0b7e4Sopenharmony_cinamespace OHOS { 2322c0b7e4Sopenharmony_cinamespace DeviceUsageStats { 2422c0b7e4Sopenharmony_ciFuzztestHelper::FuzztestHelper() {} 2522c0b7e4Sopenharmony_ci 2622c0b7e4Sopenharmony_ciFuzztestHelper::~FuzztestHelper() {} 2722c0b7e4Sopenharmony_ci 2822c0b7e4Sopenharmony_civoid FuzztestHelper::NativeTokenGet() 2922c0b7e4Sopenharmony_ci{ 3022c0b7e4Sopenharmony_ci if (isPermissionSet_) { 3122c0b7e4Sopenharmony_ci return; 3222c0b7e4Sopenharmony_ci } 3322c0b7e4Sopenharmony_ci uint64_t tokenId; 3422c0b7e4Sopenharmony_ci static const char *perms[] = { 3522c0b7e4Sopenharmony_ci "ohos.permission.BUNDLE_ACTIVE_INFO", 3622c0b7e4Sopenharmony_ci }; 3722c0b7e4Sopenharmony_ci 3822c0b7e4Sopenharmony_ci NativeTokenInfoParams infoInstance = { 3922c0b7e4Sopenharmony_ci .dcapsNum = 0, 4022c0b7e4Sopenharmony_ci .permsNum = 1, 4122c0b7e4Sopenharmony_ci .aclsNum = 0, 4222c0b7e4Sopenharmony_ci .dcaps = nullptr, 4322c0b7e4Sopenharmony_ci .perms = perms, 4422c0b7e4Sopenharmony_ci .acls = nullptr, 4522c0b7e4Sopenharmony_ci .aplStr = "system_basic", 4622c0b7e4Sopenharmony_ci }; 4722c0b7e4Sopenharmony_ci 4822c0b7e4Sopenharmony_ci infoInstance.processName = "BundleActiveOnRemoteRequestFuzzTest"; 4922c0b7e4Sopenharmony_ci tokenId = GetAccessTokenId(&infoInstance); 5022c0b7e4Sopenharmony_ci SetSelfTokenID(tokenId); 5122c0b7e4Sopenharmony_ci OHOS::Security::AccessToken::AccessTokenKit::ReloadNativeTokenInfo(); 5222c0b7e4Sopenharmony_ci isPermissionSet_ = true; 5322c0b7e4Sopenharmony_ci} 5422c0b7e4Sopenharmony_ci} 5522c0b7e4Sopenharmony_ci}