[PATCH 2/2] cmap: Check RO flag in adjust int function

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



Signed-off-by: Jan Friesse <jfriesse@xxxxxxxxxx>
---
 corosync.spec.in |    2 +-
 exec/cmap.c      |    7 ++++++-
 2 files changed, 7 insertions(+), 2 deletions(-)

diff --git a/corosync.spec.in b/corosync.spec.in
index 4e0f086..82d3cdb 100644
--- a/corosync.spec.in
+++ b/corosync.spec.in
@@ -301,7 +301,7 @@ The Corosync Cluster Engine APIs.
 %{_mandir}/man8/evs_overview.8*
 %{_mandir}/man8/votequorum_overview.8*
 %{_mandir}/man8/sam_overview.8*
-%{_mandir}/man8/cmap_*3*
+%{_mandir}/man3/cmap_*3*
 %{_mandir}/man8/cmap_overview.8*
 
 %changelog
diff --git a/exec/cmap.c b/exec/cmap.c
index 9cff299..284e895 100644
--- a/exec/cmap.c
+++ b/exec/cmap.c
@@ -338,7 +338,12 @@ static void message_handler_req_lib_cmap_adjust_int(void *conn, const void *mess
 	struct res_lib_cmap_adjust_int res_lib_cmap_adjust_int;
 	cs_error_t ret;
 
-	ret = icmap_adjust_int((char *)req_lib_cmap_adjust_int->key_name.value, req_lib_cmap_adjust_int->step);
+	if (icmap_is_key_ro((char *)req_lib_cmap_adjust_int->key_name.value)) {
+		ret = CS_ERR_ACCESS;
+	} else {
+		ret = icmap_adjust_int((char *)req_lib_cmap_adjust_int->key_name.value,
+		    req_lib_cmap_adjust_int->step);
+	}
 
 	memset(&res_lib_cmap_adjust_int, 0, sizeof(res_lib_cmap_adjust_int));
 	res_lib_cmap_adjust_int.header.size = sizeof(res_lib_cmap_adjust_int);
-- 
1.7.1

_______________________________________________
discuss mailing list
discuss@xxxxxxxxxxxx
http://lists.corosync.org/mailman/listinfo/discuss


[Index of Archives]     [Linux Clusters]     [Corosync Project]     [Linux USB Devel]     [Linux Audio Users]     [Photo]     [Yosemite News]    [Yosemite Photos]    [Linux Kernel]     [Linux SCSI]     [X.Org]

  Powered by Linux