1/*
2* Copyright (c) 2021-2022 Huawei Device Co., Ltd.
3* Licensed under the Apache License, Version 2.0 (the "License");
4* you may not use this file except in compliance with the License.
5* You may obtain a copy of the License at
6*
7*    http://www.apache.org/licenses/LICENSE-2.0
8*
9* Unless required by applicable law or agreed to in writing, software
10* distributed under the License is distributed on an "AS IS" BASIS,
11* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
12* See the License for the specific language governing permissions and
13* limitations under the License.
14*/
15
16#ifndef HAL_PMS_H
17#define HAL_PMS_H
18
19#include <stdbool.h>
20#include "perm_define.h"
21
22#ifdef __cplusplus
23#if __cplusplus
24extern "C" {
25#endif
26#endif /* __cplusplus */
27
28PermissionDef* HalGetPermissionList(unsigned int *length);
29const char *HalGetPermissionPath(void);
30int HalGetMaxPermissionSize(void);
31void* HalMalloc(unsigned int size);
32void HalFree(void *ptr);
33int HalAccess(const char *pathname);
34void HalMutexLock(void);
35void HalMutexUnlock(void);
36int HalGetDevUdid(unsigned char *udid, int size);
37bool HalIsValidPath(const char *path);
38
39#ifdef __cplusplus
40#if __cplusplus
41}
42#endif
43#endif /* __cplusplus */
44
45#endif  // HAL_PMS_H
46