Эх сурвалжийг харах

netlabel: fix a problem with netlbl_secattr_catmap_setrng()

We try to be clever and set large chunks of the bitmap at once, when
possible; unfortunately we weren't very clever when we wrote the code
and messed up the if-conditional.  Fix this bug and restore proper
operation.

Signed-off-by: Janak Desai <Janak.Desai@gtri.gatech.edu>
Signed-off-by: Paul Moore <paul@paul-moore.com>
Janak Desai 9 жил өмнө
parent
commit
341e0cb593

+ 1 - 1
net/netlabel/netlabel_kapi.c

@@ -677,7 +677,7 @@ int netlbl_catmap_setrng(struct netlbl_lsm_catmap **catmap,
 	u32 spot = start;
 	u32 spot = start;
 
 
 	while (rc == 0 && spot <= end) {
 	while (rc == 0 && spot <= end) {
-		if (((spot & (BITS_PER_LONG - 1)) != 0) &&
+		if (((spot & (BITS_PER_LONG - 1)) == 0) &&
 		    ((end - spot) > BITS_PER_LONG)) {
 		    ((end - spot) > BITS_PER_LONG)) {
 			rc = netlbl_catmap_setlong(catmap,
 			rc = netlbl_catmap_setlong(catmap,
 						   spot,
 						   spot,