!31 Automatically generate code patches with openeuler
From: @zhendongchen Reviewed-by: @yorifang Signed-off-by: @yorifang
This commit is contained in:
commit
4b767cdd06
97
input-add-invalid-opt-check-in-input.patch
Normal file
97
input-add-invalid-opt-check-in-input.patch
Normal file
@ -0,0 +1,97 @@
|
||||
From 4cddb3a35907a5d8bdc5af3d92c2dae1e02eafa8 Mon Sep 17 00:00:00 2001
|
||||
From: nocjj <1250062498@qq.com>
|
||||
Date: Sat, 27 Feb 2021 14:23:13 +0800
|
||||
Subject: [PATCH] input: add invalid opt check in input
|
||||
|
||||
Add invalid opt check while vmtop start with opts.
|
||||
|
||||
Signed-off-by: nocjj <1250062498@qq.com>
|
||||
---
|
||||
src/utils.c | 19 +++++++++++++++++++
|
||||
src/utils.h | 1 +
|
||||
src/vmtop.c | 17 ++++++++++-------
|
||||
3 files changed, 30 insertions(+), 7 deletions(-)
|
||||
|
||||
diff --git a/src/utils.c b/src/utils.c
|
||||
index 3cb1146..4b6983a 100644
|
||||
--- a/src/utils.c
|
||||
+++ b/src/utils.c
|
||||
@@ -56,3 +56,22 @@ int get_time_str(char *buf, int bufsize)
|
||||
}
|
||||
return 1;
|
||||
}
|
||||
+
|
||||
+int str_to_int(const char *str)
|
||||
+{
|
||||
+ long int sl;
|
||||
+ char *end = NULL;
|
||||
+ int ret = -1;
|
||||
+
|
||||
+ sl = strtol(str, &end, 10);
|
||||
+ /* if str starts or ends with non numeric char */
|
||||
+ if ((end == str) || (*end != '\0')) {
|
||||
+ printf("Invalid data!\n");
|
||||
+ } else if ((sl > INT_MAX) || (sl < INT_MIN)) {
|
||||
+ printf("Out of range!\n");
|
||||
+ } else {
|
||||
+ ret = (int)sl;
|
||||
+ }
|
||||
+
|
||||
+ return ret;
|
||||
+}
|
||||
diff --git a/src/utils.h b/src/utils.h
|
||||
index 11d3001..c8d0d01 100644
|
||||
--- a/src/utils.h
|
||||
+++ b/src/utils.h
|
||||
@@ -15,5 +15,6 @@
|
||||
|
||||
int read_file(char *buf, int bufsize, const char *path);
|
||||
int get_time_str(char *buf, int bufsize);
|
||||
+int str_to_int(const char *str);
|
||||
|
||||
#endif
|
||||
diff --git a/src/vmtop.c b/src/vmtop.c
|
||||
index f5fd4bd..4f45bef 100644
|
||||
--- a/src/vmtop.c
|
||||
+++ b/src/vmtop.c
|
||||
@@ -76,9 +76,9 @@ static void parse_args(int argc, char *argv[])
|
||||
while ((opt = getopt(argc, argv, arg_ops)) != -1) {
|
||||
switch (opt) {
|
||||
case 'd': {
|
||||
- delay_time = atoi(optarg);
|
||||
- if (delay_time < 1) {
|
||||
- delay_time = 1;
|
||||
+ delay_time = str_to_int(optarg);
|
||||
+ if (delay_time < 0) {
|
||||
+ exit(1);
|
||||
}
|
||||
break;
|
||||
}
|
||||
@@ -95,9 +95,9 @@ static void parse_args(int argc, char *argv[])
|
||||
exit(0);
|
||||
}
|
||||
case 'n': {
|
||||
- display_loop = atoi(optarg);
|
||||
- if (display_loop == 0) {
|
||||
- display_loop = -1;
|
||||
+ display_loop = str_to_int(optarg);
|
||||
+ if (display_loop < 0) {
|
||||
+ exit(1);
|
||||
}
|
||||
break;
|
||||
}
|
||||
@@ -106,7 +106,10 @@ static void parse_args(int argc, char *argv[])
|
||||
break;
|
||||
}
|
||||
case 'p': {
|
||||
- monitor_id = atoi(optarg);
|
||||
+ monitor_id = str_to_int(optarg);
|
||||
+ if (monitor_id < 0) {
|
||||
+ exit(1);
|
||||
+ }
|
||||
break;
|
||||
}
|
||||
default:
|
||||
--
|
||||
2.27.0
|
||||
|
||||
30
version-unified-with-release-version.patch
Normal file
30
version-unified-with-release-version.patch
Normal file
@ -0,0 +1,30 @@
|
||||
From 76f5626a69007a2f3509bb29548e7cd305699fb0 Mon Sep 17 00:00:00 2001
|
||||
From: nocjj <1250062498@qq.com>
|
||||
Date: Sat, 27 Feb 2021 14:27:31 +0800
|
||||
Subject: [PATCH] version: unified with release version
|
||||
|
||||
Currently, vmtop release version has been update to 1.1, but
|
||||
version in configure.ac is still 1.0. So, update release
|
||||
version to configure.ac.
|
||||
|
||||
Signed-off-by: nocjj <1250062498@qq.com>
|
||||
---
|
||||
configure.ac | 2 +-
|
||||
1 file changed, 1 insertion(+), 1 deletion(-)
|
||||
|
||||
diff --git a/configure.ac b/configure.ac
|
||||
index a968ae8..0acb1b7 100644
|
||||
--- a/configure.ac
|
||||
+++ b/configure.ac
|
||||
@@ -2,7 +2,7 @@
|
||||
# Process this file with autoconf to produce a configure script.
|
||||
|
||||
AC_PREREQ([2.69])
|
||||
-AC_INIT([vmtop], [1.0], [virt@openeuler.org])
|
||||
+AC_INIT([vmtop], [1.1], [virt@openeuler.org])
|
||||
AC_CONFIG_SRCDIR([src/vmtop.c])
|
||||
AC_CONFIG_HEADERS([config.h])
|
||||
|
||||
--
|
||||
2.27.0
|
||||
|
||||
10
vmtop.spec
10
vmtop.spec
@ -1,6 +1,6 @@
|
||||
Name: vmtop
|
||||
Version: 1.1
|
||||
Release: 3
|
||||
Release: 4
|
||||
Summary: A tool for collecting and analyzing data of virtual machine
|
||||
License: Mulan PSL V2
|
||||
Group: Application/System
|
||||
@ -28,6 +28,8 @@ Patch0017: display-del-screen-clear-after-key-response.patch
|
||||
Patch0018: arch-add-x86-kvm-exits-items.patch
|
||||
Patch0019: codestyle-del-unused-var.patch
|
||||
Patch0020: bugfix-add-check-to-avoid-invalid-ptr-for-strcmp.patch
|
||||
Patch0021: input-add-invalid-opt-check-in-input.patch
|
||||
Patch0022: version-unified-with-release-version.patch
|
||||
|
||||
Requires: libvirt, ncurses
|
||||
|
||||
@ -68,6 +70,12 @@ install -m 550 vmtop ${RPM_BUILD_ROOT}/usr/bin/%{name}
|
||||
%{_bindir}/vmtop
|
||||
|
||||
%changelog
|
||||
* Sat Feb 27 2021 Huawei Technologies Co., Ltd <alex.chen@huawei.com>
|
||||
- version: unified with release version
|
||||
|
||||
* Sat Feb 27 2021 Huawei Technologies Co., Ltd <alex.chen@huawei.com>
|
||||
- input: add invalid opt check in input
|
||||
|
||||
* Thu Jan 21 2021 Huawei Technologies Co., Ltd <alex.chen@huawei.com>
|
||||
- bugfix: add check to avoid invalid ptr for strcmp
|
||||
|
||||
|
||||
Loading…
x
Reference in New Issue
Block a user