支持FDSAN检测能力整改

Signed-off-by: xushengbin <xushengbin2@huawei.com>
This commit is contained in:
xushengbin
2025-03-04 03:14:16 +00:00
committed by Gitee
parent c45ecbc098
commit 478fed4891
3 changed files with 14 additions and 8 deletions
@@ -384,7 +384,8 @@ int IntelliSenseServer::CreateNewRtgGrp(int prioType, int rtNum)
struct rtg_grp_data grp_data;
int ret;
char fileName[] = "/proc/self/sched_rtg_ctrl";
int fd = open(fileName, O_RDWR);
FILE* f = fopen(fileName, "w+");
int fd = fileno(f);
if (fd < 0) {
RME_LOGE("Open file /proc/self/sched_rth_ctrl, errno = %{public}d", errno);
return fd;
@@ -403,7 +404,7 @@ int IntelliSenseServer::CreateNewRtgGrp(int prioType, int rtNum)
} else {
RME_LOGI("create rtg grp success, get rtg id %{public}d.", ret);
}
close(fd);
fclose(f);
return ret;
}
} // namespace RME
@@ -36,6 +36,7 @@ constexpr size_t MAX_LENGTH = 100;
const char RTG_SCHED_IPC_MAGIC = 0xAB;
static int g_fd = -1;
static FILE* fd = nullptr;
#define CMD_ID_SET_ENABLE \
_IOWR(RTG_SCHED_IPC_MAGIC, SET_ENABLE, struct rtg_enable_data)
@@ -65,7 +66,8 @@ static int g_fd = -1;
__attribute__((constructor)) void BasicOpenRtgNode()
{
char fileName[] = "/proc/self/sched_rtg_ctrl";
g_fd = open(fileName, O_RDWR);
fd = fopen(fileName, "w+");
g_fd = fileno(fd);
if (g_fd < 0) {
RME_LOGI("rtg Open fail, errno = %{public}d(%{public}s), dev = %{public}s", errno, strerror(errno), fileName);
return;
@@ -80,7 +82,7 @@ __attribute__((destructor)) void BasicCloseRtgNode()
return;
}
RME_LOGI("rtg Close g_fd ret is %{public}d", g_fd);
close(g_fd);
fclose(fd);
g_fd = -1;
}
+7 -4
View File
@@ -28,10 +28,13 @@ constexpr unsigned int AF_QOS_DELEGATED = 0x0001;
namespace OHOS {
namespace QosCommon {
static FILE* f = nullptr;
static int TrivalOpenAuthCtrlNode(void)
{
char fileName[] = "/dev/auth_ctrl";
int fd = open(fileName, O_RDWR);
f = fopen(fileName, "w+");
int fd = fileno(f);
return fd;
}
@@ -57,7 +60,7 @@ int AuthEnable(int pid, unsigned int flag, unsigned int status)
if (ret < 0) {
RME_LOGE("auth enable failed for pid %{public}d with status %{public}u\n", pid, status);
}
close(fd);
fclose(f);
return ret;
}
@@ -83,7 +86,7 @@ int AuthPause(int pid)
if (ret < 0) {
RME_LOGE("auth pause failed for pid %{public}d\n", pid);
}
close(fd);
fclose(f);
return ret;
}
@@ -106,7 +109,7 @@ int AuthDelete(int pid)
if (ret < 0) {
RME_LOGE("auth delete failed for pid %{public}d\n", pid);
}
close(fd);
fclose(f);
return ret;
}