77 lines
2.9 KiB
Diff
77 lines
2.9 KiB
Diff
|
|
From f6a26ea0759f36ebcaebe05d4d24c7234a110c63 Mon Sep 17 00:00:00 2001
|
||
|
|
From: caixiaomeng <caixiaomeng2@.com>
|
||
|
|
Date: Fri, 11 Oct 2024 12:12:53 +0800
|
||
|
|
Subject: [PATCH] fix xalarm_Report function not refuse alarm msg exceeds
|
||
|
|
maximum
|
||
|
|
|
||
|
|
---
|
||
|
|
src/libso/xalarm/register_xalarm.c | 5 +++++
|
||
|
|
src/python/xalarm/register_xalarm.py | 6 +++---
|
||
|
|
src/python/xalarm/sentry_notify.py | 4 ++--
|
||
|
|
3 files changed, 10 insertions(+), 5 deletions(-)
|
||
|
|
|
||
|
|
diff --git a/src/libso/xalarm/register_xalarm.c b/src/libso/xalarm/register_xalarm.c
|
||
|
|
index 5aff2bc..952a28b 100644
|
||
|
|
--- a/src/libso/xalarm/register_xalarm.c
|
||
|
|
+++ b/src/libso/xalarm/register_xalarm.c
|
||
|
|
@@ -339,6 +339,11 @@ int xalarm_Report(unsigned short usAlarmId, unsigned char ucAlarmLevel,
|
||
|
|
return -1;
|
||
|
|
}
|
||
|
|
|
||
|
|
+ if (pucParas == NULL || (int)strlen(pucParas) > MAX_PARAS_LEN) {
|
||
|
|
+ fprintf(stderr, "%s: alarm info invalid\n", __func__);
|
||
|
|
+ return -1;
|
||
|
|
+ }
|
||
|
|
+
|
||
|
|
if (memset(&info, 0, sizeof(struct alarm_info)) == NULL) {
|
||
|
|
fprintf(stderr, "%s: memset info failed, ret: %d\n", __func__, ret);
|
||
|
|
return -1;
|
||
|
|
diff --git a/src/python/xalarm/register_xalarm.py b/src/python/xalarm/register_xalarm.py
|
||
|
|
index edd9994..39623bd 100644
|
||
|
|
--- a/src/python/xalarm/register_xalarm.py
|
||
|
|
+++ b/src/python/xalarm/register_xalarm.py
|
||
|
|
@@ -45,7 +45,7 @@ class AlarmRegister:
|
||
|
|
return False
|
||
|
|
|
||
|
|
if self.socket is None:
|
||
|
|
- sys.stderr.write("check_params: scoket create failed\n")
|
||
|
|
+ sys.stderr.write("check_params: socket create failed\n")
|
||
|
|
return False
|
||
|
|
return True
|
||
|
|
|
||
|
|
@@ -151,10 +151,10 @@ def xalarm_unregister(clientId: int) -> None:
|
||
|
|
def xalarm_upgrade(clientId: int, id_filter: list) -> None:
|
||
|
|
global ALARM_REGISTER_INFO
|
||
|
|
if clientId < 0:
|
||
|
|
- sys.stderr.write("xalarm_unregister: invalid client\n")
|
||
|
|
+ sys.stderr.write("xalarm_upgrade: invalid client\n")
|
||
|
|
return
|
||
|
|
if ALARM_REGISTER_INFO is None:
|
||
|
|
- sys.stderr.write("xalarm_unregister: alarm has not registered\n")
|
||
|
|
+ sys.stderr.write("xalarm_upgrade: alarm has not registered\n")
|
||
|
|
return
|
||
|
|
ALARM_REGISTER_INFO.id_filter = id_filter
|
||
|
|
|
||
|
|
diff --git a/src/python/xalarm/sentry_notify.py b/src/python/xalarm/sentry_notify.py
|
||
|
|
index c763a24..5838473 100644
|
||
|
|
--- a/src/python/xalarm/sentry_notify.py
|
||
|
|
+++ b/src/python/xalarm/sentry_notify.py
|
||
|
|
@@ -27,11 +27,11 @@ ALARM_SOCKET_PERMISSION = 0o700
|
||
|
|
|
||
|
|
def check_params(alarm_id, alarm_level, alarm_type, puc_paras) -> bool:
|
||
|
|
if not os.path.exists(DIR_XALARM):
|
||
|
|
- sys.stderr.write(f"check_params: {DIR_XALARM} not exist, failed")
|
||
|
|
+ sys.stderr.write(f"check_params: {DIR_XALARM} not exist, failed\n")
|
||
|
|
return False
|
||
|
|
|
||
|
|
if not os.path.exists(PATH_REPORT_ALARM):
|
||
|
|
- sys.stderr.write(f"check_params: {PATH_REPORT_ALARM} not exist, failed")
|
||
|
|
+ sys.stderr.write(f"check_params: {PATH_REPORT_ALARM} not exist, failed\n")
|
||
|
|
return False
|
||
|
|
|
||
|
|
if (alarm_id < MIN_ALARM_ID or alarm_id > MAX_ALARM_ID or
|
||
|
|
--
|
||
|
|
2.27.0
|
||
|
|
|
||
|
|
|