Commit 4fbe63d1 authored by Paul Moore's avatar Paul Moore

netlabel: shorter names for the NetLabel catmap funcs/structs

Historically the NetLabel LSM secattr catmap functions and data
structures have had very long names which makes a mess of the NetLabel
code and anyone who uses NetLabel.  This patch renames the catmap
functions and structures from "*_secattr_catmap_*" to just "*_catmap_*"
which improves things greatly.

There are no substantial code or logic changes in this patch.
Signed-off-by: default avatarPaul Moore <pmoore@redhat.com>
Tested-by: default avatarCasey Schaufler <casey@schaufler-ca.com>
parent d960a618
...@@ -139,7 +139,7 @@ struct netlbl_lsm_cache { ...@@ -139,7 +139,7 @@ struct netlbl_lsm_cache {
}; };
/** /**
* struct netlbl_lsm_secattr_catmap - NetLabel LSM secattr category bitmap * struct netlbl_lsm_catmap - NetLabel LSM secattr category bitmap
* @startbit: the value of the lowest order bit in the bitmap * @startbit: the value of the lowest order bit in the bitmap
* @bitmap: the category bitmap * @bitmap: the category bitmap
* @next: pointer to the next bitmap "node" or NULL * @next: pointer to the next bitmap "node" or NULL
...@@ -162,10 +162,10 @@ struct netlbl_lsm_cache { ...@@ -162,10 +162,10 @@ struct netlbl_lsm_cache {
#define NETLBL_CATMAP_SIZE (NETLBL_CATMAP_MAPSIZE * \ #define NETLBL_CATMAP_SIZE (NETLBL_CATMAP_MAPSIZE * \
NETLBL_CATMAP_MAPCNT) NETLBL_CATMAP_MAPCNT)
#define NETLBL_CATMAP_BIT (NETLBL_CATMAP_MAPTYPE)0x01 #define NETLBL_CATMAP_BIT (NETLBL_CATMAP_MAPTYPE)0x01
struct netlbl_lsm_secattr_catmap { struct netlbl_lsm_catmap {
u32 startbit; u32 startbit;
NETLBL_CATMAP_MAPTYPE bitmap[NETLBL_CATMAP_MAPCNT]; NETLBL_CATMAP_MAPTYPE bitmap[NETLBL_CATMAP_MAPCNT];
struct netlbl_lsm_secattr_catmap *next; struct netlbl_lsm_catmap *next;
}; };
/** /**
...@@ -209,7 +209,7 @@ struct netlbl_lsm_secattr { ...@@ -209,7 +209,7 @@ struct netlbl_lsm_secattr {
struct netlbl_lsm_cache *cache; struct netlbl_lsm_cache *cache;
struct { struct {
struct { struct {
struct netlbl_lsm_secattr_catmap *cat; struct netlbl_lsm_catmap *cat;
u32 lvl; u32 lvl;
} mls; } mls;
u32 secid; u32 secid;
...@@ -258,7 +258,7 @@ static inline void netlbl_secattr_cache_free(struct netlbl_lsm_cache *cache) ...@@ -258,7 +258,7 @@ static inline void netlbl_secattr_cache_free(struct netlbl_lsm_cache *cache)
} }
/** /**
* netlbl_secattr_catmap_alloc - Allocate a LSM secattr catmap * netlbl_catmap_alloc - Allocate a LSM secattr catmap
* @flags: memory allocation flags * @flags: memory allocation flags
* *
* Description: * Description:
...@@ -266,24 +266,22 @@ static inline void netlbl_secattr_cache_free(struct netlbl_lsm_cache *cache) ...@@ -266,24 +266,22 @@ static inline void netlbl_secattr_cache_free(struct netlbl_lsm_cache *cache)
* on failure. * on failure.
* *
*/ */
static inline struct netlbl_lsm_secattr_catmap *netlbl_secattr_catmap_alloc( static inline struct netlbl_lsm_catmap *netlbl_catmap_alloc(gfp_t flags)
gfp_t flags)
{ {
return kzalloc(sizeof(struct netlbl_lsm_secattr_catmap), flags); return kzalloc(sizeof(struct netlbl_lsm_catmap), flags);
} }
/** /**
* netlbl_secattr_catmap_free - Free a LSM secattr catmap * netlbl_catmap_free - Free a LSM secattr catmap
* @catmap: the category bitmap * @catmap: the category bitmap
* *
* Description: * Description:
* Free a LSM secattr catmap. * Free a LSM secattr catmap.
* *
*/ */
static inline void netlbl_secattr_catmap_free( static inline void netlbl_catmap_free(struct netlbl_lsm_catmap *catmap)
struct netlbl_lsm_secattr_catmap *catmap)
{ {
struct netlbl_lsm_secattr_catmap *iter; struct netlbl_lsm_catmap *iter;
while (catmap) { while (catmap) {
iter = catmap; iter = catmap;
...@@ -321,7 +319,7 @@ static inline void netlbl_secattr_destroy(struct netlbl_lsm_secattr *secattr) ...@@ -321,7 +319,7 @@ static inline void netlbl_secattr_destroy(struct netlbl_lsm_secattr *secattr)
if (secattr->flags & NETLBL_SECATTR_CACHE) if (secattr->flags & NETLBL_SECATTR_CACHE)
netlbl_secattr_cache_free(secattr->cache); netlbl_secattr_cache_free(secattr->cache);
if (secattr->flags & NETLBL_SECATTR_MLS_CAT) if (secattr->flags & NETLBL_SECATTR_MLS_CAT)
netlbl_secattr_catmap_free(secattr->attr.mls.cat); netlbl_catmap_free(secattr->attr.mls.cat);
} }
/** /**
...@@ -390,24 +388,22 @@ int netlbl_cfg_cipsov4_map_add(u32 doi, ...@@ -390,24 +388,22 @@ int netlbl_cfg_cipsov4_map_add(u32 doi,
/* /*
* LSM security attribute operations * LSM security attribute operations
*/ */
int netlbl_secattr_catmap_walk(struct netlbl_lsm_secattr_catmap *catmap, int netlbl_catmap_walk(struct netlbl_lsm_catmap *catmap, u32 offset);
u32 offset); int netlbl_catmap_walkrng(struct netlbl_lsm_catmap *catmap, u32 offset);
int netlbl_secattr_catmap_walk_rng(struct netlbl_lsm_secattr_catmap *catmap, int netlbl_catmap_getlong(struct netlbl_lsm_catmap *catmap,
u32 offset); u32 *offset,
int netlbl_secattr_catmap_getlong(struct netlbl_lsm_secattr_catmap *catmap, unsigned long *bitmap);
u32 *offset, int netlbl_catmap_setbit(struct netlbl_lsm_catmap **catmap,
unsigned long *bitmap); u32 bit,
int netlbl_secattr_catmap_setbit(struct netlbl_lsm_secattr_catmap **catmap, gfp_t flags);
u32 bit, int netlbl_catmap_setrng(struct netlbl_lsm_catmap **catmap,
gfp_t flags); u32 start,
int netlbl_secattr_catmap_setrng(struct netlbl_lsm_secattr_catmap **catmap, u32 end,
u32 start, gfp_t flags);
u32 end, int netlbl_catmap_setlong(struct netlbl_lsm_catmap **catmap,
gfp_t flags); u32 offset,
int netlbl_secattr_catmap_setlong(struct netlbl_lsm_secattr_catmap **catmap, unsigned long bitmap,
u32 offset, gfp_t flags);
unsigned long bitmap,
gfp_t flags);
/* /*
* LSM protocol operations (NetLabel LSM/kernel API) * LSM protocol operations (NetLabel LSM/kernel API)
...@@ -499,45 +495,39 @@ static inline int netlbl_cfg_cipsov4_map_add(u32 doi, ...@@ -499,45 +495,39 @@ static inline int netlbl_cfg_cipsov4_map_add(u32 doi,
{ {
return -ENOSYS; return -ENOSYS;
} }
static inline int netlbl_secattr_catmap_walk( static inline int netlbl_catmap_walk(struct netlbl_lsm_catmap *catmap,
struct netlbl_lsm_secattr_catmap *catmap, u32 offset)
u32 offset)
{ {
return -ENOENT; return -ENOENT;
} }
static inline int netlbl_secattr_catmap_walk_rng( static inline int netlbl_catmap_walkrng(struct netlbl_lsm_catmap *catmap,
struct netlbl_lsm_secattr_catmap *catmap, u32 offset)
u32 offset)
{ {
return -ENOENT; return -ENOENT;
} }
static inline int netlbl_secattr_catmap_getlong( static inline int netlbl_catmap_getlong(struct netlbl_lsm_catmap *catmap,
struct netlbl_lsm_secattr_catmap *catmap, u32 *offset,
u32 *offset, unsigned long *bitmap)
unsigned long *bitmap)
{ {
return 0; return 0;
} }
static inline int netlbl_secattr_catmap_setbit( static inline int netlbl_catmap_setbit(struct netlbl_lsm_catmap **catmap,
struct netlbl_lsm_secattr_catmap **catmap, u32 bit,
u32 bit, gfp_t flags)
gfp_t flags)
{ {
return 0; return 0;
} }
static inline int netlbl_secattr_catmap_setrng( static inline int netlbl_catmap_setrng(struct netlbl_lsm_catmap **catmap,
struct netlbl_lsm_secattr_catmap **catmap, u32 start,
u32 start, u32 end,
u32 end, gfp_t flags)
gfp_t flags)
{ {
return 0; return 0;
} }
static int netlbl_secattr_catmap_setlong( static int netlbl_catmap_setlong(struct netlbl_lsm_catmap **catmap,
struct netlbl_lsm_secattr_catmap **catmap, u32 offset,
u32 offset, unsigned long bitmap,
unsigned long bitmap, gfp_t flags)
gfp_t flags)
{ {
return 0; return 0;
} }
......
...@@ -890,8 +890,8 @@ static int cipso_v4_map_cat_rbm_hton(const struct cipso_v4_doi *doi_def, ...@@ -890,8 +890,8 @@ static int cipso_v4_map_cat_rbm_hton(const struct cipso_v4_doi *doi_def,
} }
for (;;) { for (;;) {
host_spot = netlbl_secattr_catmap_walk(secattr->attr.mls.cat, host_spot = netlbl_catmap_walk(secattr->attr.mls.cat,
host_spot + 1); host_spot + 1);
if (host_spot < 0) if (host_spot < 0)
break; break;
...@@ -973,7 +973,7 @@ static int cipso_v4_map_cat_rbm_ntoh(const struct cipso_v4_doi *doi_def, ...@@ -973,7 +973,7 @@ static int cipso_v4_map_cat_rbm_ntoh(const struct cipso_v4_doi *doi_def,
return -EPERM; return -EPERM;
break; break;
} }
ret_val = netlbl_secattr_catmap_setbit(&secattr->attr.mls.cat, ret_val = netlbl_catmap_setbit(&secattr->attr.mls.cat,
host_spot, host_spot,
GFP_ATOMIC); GFP_ATOMIC);
if (ret_val != 0) if (ret_val != 0)
...@@ -1039,8 +1039,7 @@ static int cipso_v4_map_cat_enum_hton(const struct cipso_v4_doi *doi_def, ...@@ -1039,8 +1039,7 @@ static int cipso_v4_map_cat_enum_hton(const struct cipso_v4_doi *doi_def,
u32 cat_iter = 0; u32 cat_iter = 0;
for (;;) { for (;;) {
cat = netlbl_secattr_catmap_walk(secattr->attr.mls.cat, cat = netlbl_catmap_walk(secattr->attr.mls.cat, cat + 1);
cat + 1);
if (cat < 0) if (cat < 0)
break; break;
if ((cat_iter + 2) > net_cat_len) if ((cat_iter + 2) > net_cat_len)
...@@ -1075,9 +1074,9 @@ static int cipso_v4_map_cat_enum_ntoh(const struct cipso_v4_doi *doi_def, ...@@ -1075,9 +1074,9 @@ static int cipso_v4_map_cat_enum_ntoh(const struct cipso_v4_doi *doi_def,
u32 iter; u32 iter;
for (iter = 0; iter < net_cat_len; iter += 2) { for (iter = 0; iter < net_cat_len; iter += 2) {
ret_val = netlbl_secattr_catmap_setbit(&secattr->attr.mls.cat, ret_val = netlbl_catmap_setbit(&secattr->attr.mls.cat,
get_unaligned_be16(&net_cat[iter]), get_unaligned_be16(&net_cat[iter]),
GFP_ATOMIC); GFP_ATOMIC);
if (ret_val != 0) if (ret_val != 0)
return ret_val; return ret_val;
} }
...@@ -1155,8 +1154,7 @@ static int cipso_v4_map_cat_rng_hton(const struct cipso_v4_doi *doi_def, ...@@ -1155,8 +1154,7 @@ static int cipso_v4_map_cat_rng_hton(const struct cipso_v4_doi *doi_def,
return -ENOSPC; return -ENOSPC;
for (;;) { for (;;) {
iter = netlbl_secattr_catmap_walk(secattr->attr.mls.cat, iter = netlbl_catmap_walk(secattr->attr.mls.cat, iter + 1);
iter + 1);
if (iter < 0) if (iter < 0)
break; break;
cat_size += (iter == 0 ? 0 : sizeof(u16)); cat_size += (iter == 0 ? 0 : sizeof(u16));
...@@ -1164,8 +1162,7 @@ static int cipso_v4_map_cat_rng_hton(const struct cipso_v4_doi *doi_def, ...@@ -1164,8 +1162,7 @@ static int cipso_v4_map_cat_rng_hton(const struct cipso_v4_doi *doi_def,
return -ENOSPC; return -ENOSPC;
array[array_cnt++] = iter; array[array_cnt++] = iter;
iter = netlbl_secattr_catmap_walk_rng(secattr->attr.mls.cat, iter = netlbl_catmap_walkrng(secattr->attr.mls.cat, iter);
iter);
if (iter < 0) if (iter < 0)
return -EFAULT; return -EFAULT;
cat_size += sizeof(u16); cat_size += sizeof(u16);
...@@ -1217,10 +1214,10 @@ static int cipso_v4_map_cat_rng_ntoh(const struct cipso_v4_doi *doi_def, ...@@ -1217,10 +1214,10 @@ static int cipso_v4_map_cat_rng_ntoh(const struct cipso_v4_doi *doi_def,
else else
cat_low = 0; cat_low = 0;
ret_val = netlbl_secattr_catmap_setrng(&secattr->attr.mls.cat, ret_val = netlbl_catmap_setrng(&secattr->attr.mls.cat,
cat_low, cat_low,
cat_high, cat_high,
GFP_ATOMIC); GFP_ATOMIC);
if (ret_val != 0) if (ret_val != 0)
return ret_val; return ret_val;
} }
...@@ -1340,7 +1337,7 @@ static int cipso_v4_parsetag_rbm(const struct cipso_v4_doi *doi_def, ...@@ -1340,7 +1337,7 @@ static int cipso_v4_parsetag_rbm(const struct cipso_v4_doi *doi_def,
tag_len - 4, tag_len - 4,
secattr); secattr);
if (ret_val != 0) { if (ret_val != 0) {
netlbl_secattr_catmap_free(secattr->attr.mls.cat); netlbl_catmap_free(secattr->attr.mls.cat);
return ret_val; return ret_val;
} }
...@@ -1431,7 +1428,7 @@ static int cipso_v4_parsetag_enum(const struct cipso_v4_doi *doi_def, ...@@ -1431,7 +1428,7 @@ static int cipso_v4_parsetag_enum(const struct cipso_v4_doi *doi_def,
tag_len - 4, tag_len - 4,
secattr); secattr);
if (ret_val != 0) { if (ret_val != 0) {
netlbl_secattr_catmap_free(secattr->attr.mls.cat); netlbl_catmap_free(secattr->attr.mls.cat);
return ret_val; return ret_val;
} }
...@@ -1521,7 +1518,7 @@ static int cipso_v4_parsetag_rng(const struct cipso_v4_doi *doi_def, ...@@ -1521,7 +1518,7 @@ static int cipso_v4_parsetag_rng(const struct cipso_v4_doi *doi_def,
tag_len - 4, tag_len - 4,
secattr); secattr);
if (ret_val != 0) { if (ret_val != 0) {
netlbl_secattr_catmap_free(secattr->attr.mls.cat); netlbl_catmap_free(secattr->attr.mls.cat);
return ret_val; return ret_val;
} }
......
...@@ -410,7 +410,7 @@ int netlbl_cfg_cipsov4_map_add(u32 doi, ...@@ -410,7 +410,7 @@ int netlbl_cfg_cipsov4_map_add(u32 doi,
#define _CM_F_WALK 0x00000002 #define _CM_F_WALK 0x00000002
/** /**
* _netlbl_secattr_catmap_getnode - Get a individual node from a catmap * _netlbl_catmap_getnode - Get a individual node from a catmap
* @catmap: pointer to the category bitmap * @catmap: pointer to the category bitmap
* @offset: the requested offset * @offset: the requested offset
* @cm_flags: catmap flags, see _CM_F_* * @cm_flags: catmap flags, see _CM_F_*
...@@ -424,36 +424,36 @@ int netlbl_cfg_cipsov4_map_add(u32 doi, ...@@ -424,36 +424,36 @@ int netlbl_cfg_cipsov4_map_add(u32 doi,
* be returned. Returns a pointer to the node on success, NULL on failure. * be returned. Returns a pointer to the node on success, NULL on failure.
* *
*/ */
static struct netlbl_lsm_secattr_catmap *_netlbl_secattr_catmap_getnode( static struct netlbl_lsm_catmap *_netlbl_catmap_getnode(
struct netlbl_lsm_secattr_catmap **catmap, struct netlbl_lsm_catmap **catmap,
u32 offset, u32 offset,
unsigned int cm_flags, unsigned int cm_flags,
gfp_t gfp_flags) gfp_t gfp_flags)
{ {
struct netlbl_lsm_secattr_catmap *iter = *catmap; struct netlbl_lsm_catmap *iter = *catmap;
struct netlbl_lsm_secattr_catmap *prev = NULL; struct netlbl_lsm_catmap *prev = NULL;
if (iter == NULL) if (iter == NULL)
goto secattr_catmap_getnode_alloc; goto catmap_getnode_alloc;
if (offset < iter->startbit) if (offset < iter->startbit)
goto secattr_catmap_getnode_walk; goto catmap_getnode_walk;
while (iter && offset >= (iter->startbit + NETLBL_CATMAP_SIZE)) { while (iter && offset >= (iter->startbit + NETLBL_CATMAP_SIZE)) {
prev = iter; prev = iter;
iter = iter->next; iter = iter->next;
} }
if (iter == NULL || offset < iter->startbit) if (iter == NULL || offset < iter->startbit)
goto secattr_catmap_getnode_walk; goto catmap_getnode_walk;
return iter; return iter;
secattr_catmap_getnode_walk: catmap_getnode_walk:
if (cm_flags & _CM_F_WALK) if (cm_flags & _CM_F_WALK)
return iter; return iter;
secattr_catmap_getnode_alloc: catmap_getnode_alloc:
if (!(cm_flags & _CM_F_ALLOC)) if (!(cm_flags & _CM_F_ALLOC))
return NULL; return NULL;
iter = netlbl_secattr_catmap_alloc(gfp_flags); iter = netlbl_catmap_alloc(gfp_flags);
if (iter == NULL) if (iter == NULL)
return NULL; return NULL;
iter->startbit = offset & ~(NETLBL_CATMAP_SIZE - 1); iter->startbit = offset & ~(NETLBL_CATMAP_SIZE - 1);
...@@ -470,7 +470,7 @@ static struct netlbl_lsm_secattr_catmap *_netlbl_secattr_catmap_getnode( ...@@ -470,7 +470,7 @@ static struct netlbl_lsm_secattr_catmap *_netlbl_secattr_catmap_getnode(
} }
/** /**
* netlbl_secattr_catmap_walk - Walk a LSM secattr catmap looking for a bit * netlbl_catmap_walk - Walk a LSM secattr catmap looking for a bit
* @catmap: the category bitmap * @catmap: the category bitmap
* @offset: the offset to start searching at, in bits * @offset: the offset to start searching at, in bits
* *
...@@ -479,15 +479,14 @@ static struct netlbl_lsm_secattr_catmap *_netlbl_secattr_catmap_getnode( ...@@ -479,15 +479,14 @@ static struct netlbl_lsm_secattr_catmap *_netlbl_secattr_catmap_getnode(
* returns the spot of the first set bit or -ENOENT if no bits are set. * returns the spot of the first set bit or -ENOENT if no bits are set.
* *
*/ */
int netlbl_secattr_catmap_walk(struct netlbl_lsm_secattr_catmap *catmap, int netlbl_catmap_walk(struct netlbl_lsm_catmap *catmap, u32 offset)
u32 offset)
{ {
struct netlbl_lsm_secattr_catmap *iter = catmap; struct netlbl_lsm_catmap *iter = catmap;
u32 idx; u32 idx;
u32 bit; u32 bit;
NETLBL_CATMAP_MAPTYPE bitmap; NETLBL_CATMAP_MAPTYPE bitmap;
iter = _netlbl_secattr_catmap_getnode(&catmap, offset, _CM_F_WALK, 0); iter = _netlbl_catmap_getnode(&catmap, offset, _CM_F_WALK, 0);
if (iter == NULL) if (iter == NULL)
return -ENOENT; return -ENOENT;
if (offset > iter->startbit) { if (offset > iter->startbit) {
...@@ -524,7 +523,7 @@ int netlbl_secattr_catmap_walk(struct netlbl_lsm_secattr_catmap *catmap, ...@@ -524,7 +523,7 @@ int netlbl_secattr_catmap_walk(struct netlbl_lsm_secattr_catmap *catmap,
} }
/** /**
* netlbl_secattr_catmap_walk_rng - Find the end of a string of set bits * netlbl_catmap_walkrng - Find the end of a string of set bits
* @catmap: the category bitmap * @catmap: the category bitmap
* @offset: the offset to start searching at, in bits * @offset: the offset to start searching at, in bits
* *
...@@ -534,17 +533,16 @@ int netlbl_secattr_catmap_walk(struct netlbl_lsm_secattr_catmap *catmap, ...@@ -534,17 +533,16 @@ int netlbl_secattr_catmap_walk(struct netlbl_lsm_secattr_catmap *catmap,
* the end of the bitmap. * the end of the bitmap.
* *
*/ */
int netlbl_secattr_catmap_walk_rng(struct netlbl_lsm_secattr_catmap *catmap, int netlbl_catmap_walkrng(struct netlbl_lsm_catmap *catmap, u32 offset)
u32 offset)
{ {
struct netlbl_lsm_secattr_catmap *iter; struct netlbl_lsm_catmap *iter;
struct netlbl_lsm_secattr_catmap *prev = NULL; struct netlbl_lsm_catmap *prev = NULL;
u32 idx; u32 idx;
u32 bit; u32 bit;
NETLBL_CATMAP_MAPTYPE bitmask; NETLBL_CATMAP_MAPTYPE bitmask;
NETLBL_CATMAP_MAPTYPE bitmap; NETLBL_CATMAP_MAPTYPE bitmap;
iter = _netlbl_secattr_catmap_getnode(&catmap, offset, _CM_F_WALK, 0); iter = _netlbl_catmap_getnode(&catmap, offset, _CM_F_WALK, 0);
if (iter == NULL) if (iter == NULL)
return -ENOENT; return -ENOENT;
if (offset > iter->startbit) { if (offset > iter->startbit) {
...@@ -584,7 +582,7 @@ int netlbl_secattr_catmap_walk_rng(struct netlbl_lsm_secattr_catmap *catmap, ...@@ -584,7 +582,7 @@ int netlbl_secattr_catmap_walk_rng(struct netlbl_lsm_secattr_catmap *catmap,
} }
/** /**
* netlbl_secattr_catmap_getlong - Export an unsigned long bitmap * netlbl_catmap_getlong - Export an unsigned long bitmap
* @catmap: pointer to the category bitmap * @catmap: pointer to the category bitmap
* @offset: pointer to the requested offset * @offset: pointer to the requested offset
* @bitmap: the exported bitmap * @bitmap: the exported bitmap
...@@ -597,11 +595,11 @@ int netlbl_secattr_catmap_walk_rng(struct netlbl_lsm_secattr_catmap *catmap, ...@@ -597,11 +595,11 @@ int netlbl_secattr_catmap_walk_rng(struct netlbl_lsm_secattr_catmap *catmap,
* Returns zero on sucess, negative values on failure. * Returns zero on sucess, negative values on failure.
* *
*/ */
int netlbl_secattr_catmap_getlong(struct netlbl_lsm_secattr_catmap *catmap, int netlbl_catmap_getlong(struct netlbl_lsm_catmap *catmap,
u32 *offset, u32 *offset,
unsigned long *bitmap) unsigned long *bitmap)
{ {
struct netlbl_lsm_secattr_catmap *iter; struct netlbl_lsm_catmap *iter;
u32 off = *offset; u32 off = *offset;
u32 idx; u32 idx;
...@@ -613,7 +611,7 @@ int netlbl_secattr_catmap_getlong(struct netlbl_lsm_secattr_catmap *catmap, ...@@ -613,7 +611,7 @@ int netlbl_secattr_catmap_getlong(struct netlbl_lsm_secattr_catmap *catmap,
off = catmap->startbit; off = catmap->startbit;
*offset = off; *offset = off;
} }
iter = _netlbl_secattr_catmap_getnode(&catmap, off, _CM_F_NONE, 0); iter = _netlbl_catmap_getnode(&catmap, off, _CM_F_NONE, 0);
if (iter == NULL) { if (iter == NULL) {
*offset = (u32)-1; *offset = (u32)-1;
return 0; return 0;
...@@ -632,7 +630,7 @@ int netlbl_secattr_catmap_getlong(struct netlbl_lsm_secattr_catmap *catmap, ...@@ -632,7 +630,7 @@ int netlbl_secattr_catmap_getlong(struct netlbl_lsm_secattr_catmap *catmap,
} }
/** /**
* netlbl_secattr_catmap_setbit - Set a bit in a LSM secattr catmap * netlbl_catmap_setbit - Set a bit in a LSM secattr catmap
* @catmap: pointer to the category bitmap * @catmap: pointer to the category bitmap
* @bit: the bit to set * @bit: the bit to set
* @flags: memory allocation flags * @flags: memory allocation flags
...@@ -642,14 +640,14 @@ int netlbl_secattr_catmap_getlong(struct netlbl_lsm_secattr_catmap *catmap, ...@@ -642,14 +640,14 @@ int netlbl_secattr_catmap_getlong(struct netlbl_lsm_secattr_catmap *catmap,
* negative values on failure. * negative values on failure.
* *
*/ */
int netlbl_secattr_catmap_setbit(struct netlbl_lsm_secattr_catmap **catmap, int netlbl_catmap_setbit(struct netlbl_lsm_catmap **catmap,
u32 bit, u32 bit,
gfp_t flags) gfp_t flags)
{ {
struct netlbl_lsm_secattr_catmap *iter; struct netlbl_lsm_catmap *iter;
u32 idx; u32 idx;
iter = _netlbl_secattr_catmap_getnode(catmap, bit, _CM_F_ALLOC, flags); iter = _netlbl_catmap_getnode(catmap, bit, _CM_F_ALLOC, flags);
if (iter == NULL) if (iter == NULL)
return -ENOMEM; return -ENOMEM;
...@@ -661,7 +659,7 @@ int netlbl_secattr_catmap_setbit(struct netlbl_lsm_secattr_catmap **catmap, ...@@ -661,7 +659,7 @@ int netlbl_secattr_catmap_setbit(struct netlbl_lsm_secattr_catmap **catmap,
} }
/** /**
* netlbl_secattr_catmap_setrng - Set a range of bits in a LSM secattr catmap * netlbl_catmap_setrng - Set a range of bits in a LSM secattr catmap
* @catmap: pointer to the category bitmap * @catmap: pointer to the category bitmap
* @start: the starting bit * @start: the starting bit
* @end: the last bit in the string * @end: the last bit in the string
...@@ -672,10 +670,10 @@ int netlbl_secattr_catmap_setbit(struct netlbl_lsm_secattr_catmap **catmap, ...@@ -672,10 +670,10 @@ int netlbl_secattr_catmap_setbit(struct netlbl_lsm_secattr_catmap **catmap,
* on success, negative values on failure. * on success, negative values on failure.
* *
*/ */
int netlbl_secattr_catmap_setrng(struct netlbl_lsm_secattr_catmap **catmap, int netlbl_catmap_setrng(struct netlbl_lsm_catmap **catmap,
u32 start, u32 start,
u32 end, u32 end,
gfp_t flags) gfp_t flags)
{ {
int rc = 0; int rc = 0;
u32 spot = start; u32 spot = start;
...@@ -683,22 +681,20 @@ int netlbl_secattr_catmap_setrng(struct netlbl_lsm_secattr_catmap **catmap, ...@@ -683,22 +681,20 @@ int netlbl_secattr_catmap_setrng(struct netlbl_lsm_secattr_catmap **catmap,
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_secattr_catmap_setlong(catmap, rc = netlbl_catmap_setlong(catmap,
spot, spot,
(unsigned long)-1, (unsigned long)-1,
flags); flags);
spot += BITS_PER_LONG; spot += BITS_PER_LONG;
} else } else
rc = netlbl_secattr_catmap_setbit(catmap, rc = netlbl_catmap_setbit(catmap, spot++, flags);
spot++,
flags);
} }
return rc; return rc;
} }
/** /**
* netlbl_secattr_catmap_setlong - Import an unsigned long bitmap * netlbl_catmap_setlong - Import an unsigned long bitmap
* @catmap: pointer to the category bitmap * @catmap: pointer to the category bitmap
* @offset: offset to the start of the imported bitmap * @offset: offset to the start of the imported bitmap
* @bitmap: the bitmap to import * @bitmap: the bitmap to import
...@@ -710,20 +706,19 @@ int netlbl_secattr_catmap_setrng(struct netlbl_lsm_secattr_catmap **catmap, ...@@ -710,20 +706,19 @@ int netlbl_secattr_catmap_setrng(struct netlbl_lsm_secattr_catmap **catmap,
* on success, negative values on failure. * on success, negative values on failure.
* *
*/ */
int netlbl_secattr_catmap_setlong(struct netlbl_lsm_secattr_catmap **catmap, int netlbl_catmap_setlong(struct netlbl_lsm_catmap **catmap,
u32 offset, u32 offset,
unsigned long bitmap, unsigned long bitmap,
gfp_t flags) gfp_t flags)
{ {
struct netlbl_lsm_secattr_catmap *iter; struct netlbl_lsm_catmap *iter;
u32 idx; u32 idx;
/* only allow aligned offsets */ /* only allow aligned offsets */
if ((offset & (BITS_PER_LONG - 1)) != 0) if ((offset & (BITS_PER_LONG - 1)) != 0)
return -EINVAL; return -EINVAL;
iter = _netlbl_secattr_catmap_getnode(catmap, iter = _netlbl_catmap_getnode(catmap, offset, _CM_F_ALLOC, flags);
offset, _CM_F_ALLOC, flags);
if (iter == NULL) if (iter == NULL)
return -ENOMEM; return -ENOMEM;
......
...@@ -86,7 +86,7 @@ int ebitmap_cpy(struct ebitmap *dst, struct ebitmap *src) ...@@ -86,7 +86,7 @@ int ebitmap_cpy(struct ebitmap *dst, struct ebitmap *src)
* *
*/ */
int ebitmap_netlbl_export(struct ebitmap *ebmap, int ebitmap_netlbl_export(struct ebitmap *ebmap,
struct netlbl_lsm_secattr_catmap **catmap) struct netlbl_lsm_catmap **catmap)
{ {
struct ebitmap_node *e_iter = ebmap->node; struct ebitmap_node *e_iter = ebmap->node;
unsigned long e_map; unsigned long e_map;
...@@ -100,7 +100,7 @@ int ebitmap_netlbl_export(struct ebitmap *ebmap, ...@@ -100,7 +100,7 @@ int ebitmap_netlbl_export(struct ebitmap *ebmap,
} }
if (*catmap != NULL) if (*catmap != NULL)
netlbl_secattr_catmap_free(*catmap); netlbl_catmap_free(*catmap);
*catmap = NULL; *catmap = NULL;
while (e_iter) { while (e_iter) {
...@@ -108,10 +108,10 @@ int ebitmap_netlbl_export(struct ebitmap *ebmap, ...@@ -108,10 +108,10 @@ int ebitmap_netlbl_export(struct ebitmap *ebmap,
for (iter = 0; iter < EBITMAP_UNIT_NUMS; iter++) { for (iter = 0; iter < EBITMAP_UNIT_NUMS; iter++) {
e_map = e_iter->maps[iter]; e_map = e_iter->maps[iter];
if (e_map != 0) { if (e_map != 0) {
rc = netlbl_secattr_catmap_setlong(catmap, rc = netlbl_catmap_setlong(catmap,
offset, offset,
e_map, e_map,
GFP_ATOMIC); GFP_ATOMIC);
if (rc != 0) if (rc != 0)
goto netlbl_export_failure; goto netlbl_export_failure;
} }
...@@ -123,7 +123,7 @@ int ebitmap_netlbl_export(struct ebitmap *ebmap, ...@@ -123,7 +123,7 @@ int ebitmap_netlbl_export(struct ebitmap *ebmap,
return 0; return 0;
netlbl_export_failure: netlbl_export_failure:
netlbl_secattr_catmap_free(*catmap); netlbl_catmap_free(*catmap);
return -ENOMEM; return -ENOMEM;
} }
...@@ -138,7 +138,7 @@ int ebitmap_netlbl_export(struct ebitmap *ebmap, ...@@ -138,7 +138,7 @@ int ebitmap_netlbl_export(struct ebitmap *ebmap,
* *
*/ */
int ebitmap_netlbl_import(struct ebitmap *ebmap, int ebitmap_netlbl_import(struct ebitmap *ebmap,
struct netlbl_lsm_secattr_catmap *catmap) struct netlbl_lsm_catmap *catmap)
{ {
int rc; int rc;
struct ebitmap_node *e_iter = NULL; struct ebitmap_node *e_iter = NULL;
...@@ -147,7 +147,7 @@ int ebitmap_netlbl_import(struct ebitmap *ebmap, ...@@ -147,7 +147,7 @@ int ebitmap_netlbl_import(struct ebitmap *ebmap,
unsigned long bitmap; unsigned long bitmap;
for (;;) { for (;;) {
rc = netlbl_secattr_catmap_getlong(catmap, &offset, &bitmap); rc = netlbl_catmap_getlong(catmap, &offset, &bitmap);
if (rc < 0) if (rc < 0)
goto netlbl_import_failure; goto netlbl_import_failure;
if (offset == (u32)-1) if (offset == (u32)-1)
......
...@@ -132,17 +132,17 @@ int ebitmap_write(struct ebitmap *e, void *fp); ...@@ -132,17 +132,17 @@ int ebitmap_write(struct ebitmap *e, void *fp);
#ifdef CONFIG_NETLABEL #ifdef CONFIG_NETLABEL
int ebitmap_netlbl_export(struct ebitmap *ebmap, int ebitmap_netlbl_export(struct ebitmap *ebmap,
struct netlbl_lsm_secattr_catmap **catmap); struct netlbl_lsm_catmap **catmap);
int ebitmap_netlbl_import(struct ebitmap *ebmap, int ebitmap_netlbl_import(struct ebitmap *ebmap,
struct netlbl_lsm_secattr_catmap *catmap); struct netlbl_lsm_catmap *catmap);
#else #else
static inline int ebitmap_netlbl_export(struct ebitmap *ebmap, static inline int ebitmap_netlbl_export(struct ebitmap *ebmap,
struct netlbl_lsm_secattr_catmap **catmap) struct netlbl_lsm_catmap **catmap)
{ {
return -ENOMEM; return -ENOMEM;
} }
static inline int ebitmap_netlbl_import(struct ebitmap *ebmap, static inline int ebitmap_netlbl_import(struct ebitmap *ebmap,
struct netlbl_lsm_secattr_catmap *catmap) struct netlbl_lsm_catmap *catmap)
{ {
return -ENOMEM; return -ENOMEM;
} }
......
...@@ -441,10 +441,10 @@ int smk_netlbl_mls(int level, char *catset, struct netlbl_lsm_secattr *sap, ...@@ -441,10 +441,10 @@ int smk_netlbl_mls(int level, char *catset, struct netlbl_lsm_secattr *sap,
for (m = 0x80; m != 0; m >>= 1, cat++) { for (m = 0x80; m != 0; m >>= 1, cat++) {
if ((m & *cp) == 0) if ((m & *cp) == 0)
continue; continue;
rc = netlbl_secattr_catmap_setbit(&sap->attr.mls.cat, rc = netlbl_catmap_setbit(&sap->attr.mls.cat,
cat, GFP_ATOMIC); cat, GFP_ATOMIC);
if (rc < 0) { if (rc < 0) {
netlbl_secattr_catmap_free(sap->attr.mls.cat); netlbl_catmap_free(sap->attr.mls.cat);
return rc; return rc;
} }
} }
......
...@@ -3091,9 +3091,9 @@ static struct smack_known *smack_from_secattr(struct netlbl_lsm_secattr *sap, ...@@ -3091,9 +3091,9 @@ static struct smack_known *smack_from_secattr(struct netlbl_lsm_secattr *sap,
break; break;
} }
for (acat = -1, kcat = -1; acat == kcat; ) { for (acat = -1, kcat = -1; acat == kcat; ) {
acat = netlbl_secattr_catmap_walk( acat = netlbl_catmap_walk(sap->attr.mls.cat,
sap->attr.mls.cat, acat + 1); acat + 1);
kcat = netlbl_secattr_catmap_walk( kcat = netlbl_catmap_walk(
skp->smk_netlabel.attr.mls.cat, skp->smk_netlabel.attr.mls.cat,
kcat + 1); kcat + 1);
if (acat < 0 || kcat < 0) if (acat < 0 || kcat < 0)
......
...@@ -777,7 +777,7 @@ static int cipso_seq_show(struct seq_file *s, void *v) ...@@ -777,7 +777,7 @@ static int cipso_seq_show(struct seq_file *s, void *v)
struct list_head *list = v; struct list_head *list = v;
struct smack_known *skp = struct smack_known *skp =
list_entry(list, struct smack_known, list); list_entry(list, struct smack_known, list);
struct netlbl_lsm_secattr_catmap *cmp = skp->smk_netlabel.attr.mls.cat; struct netlbl_lsm_catmap *cmp = skp->smk_netlabel.attr.mls.cat;
char sep = '/'; char sep = '/';
int i; int i;
...@@ -794,8 +794,8 @@ static int cipso_seq_show(struct seq_file *s, void *v) ...@@ -794,8 +794,8 @@ static int cipso_seq_show(struct seq_file *s, void *v)
seq_printf(s, "%s %3d", skp->smk_known, skp->smk_netlabel.attr.mls.lvl); seq_printf(s, "%s %3d", skp->smk_known, skp->smk_netlabel.attr.mls.lvl);
for (i = netlbl_secattr_catmap_walk(cmp, 0); i >= 0; for (i = netlbl_catmap_walk(cmp, 0); i >= 0;
i = netlbl_secattr_catmap_walk(cmp, i + 1)) { i = netlbl_catmap_walk(cmp, i + 1)) {
seq_printf(s, "%c%d", sep, i); seq_printf(s, "%c%d", sep, i);
sep = ','; sep = ',';
} }
...@@ -916,7 +916,7 @@ static ssize_t smk_set_cipso(struct file *file, const char __user *buf, ...@@ -916,7 +916,7 @@ static ssize_t smk_set_cipso(struct file *file, const char __user *buf,
rc = smk_netlbl_mls(maplevel, mapcatset, &ncats, SMK_CIPSOLEN); rc = smk_netlbl_mls(maplevel, mapcatset, &ncats, SMK_CIPSOLEN);
if (rc >= 0) { if (rc >= 0) {
netlbl_secattr_catmap_free(skp->smk_netlabel.attr.mls.cat); netlbl_catmap_free(skp->smk_netlabel.attr.mls.cat);
skp->smk_netlabel.attr.mls.cat = ncats.attr.mls.cat; skp->smk_netlabel.attr.mls.cat = ncats.attr.mls.cat;
skp->smk_netlabel.attr.mls.lvl = ncats.attr.mls.lvl; skp->smk_netlabel.attr.mls.lvl = ncats.attr.mls.lvl;
rc = count; rc = count;
...@@ -966,14 +966,14 @@ static int cipso2_seq_show(struct seq_file *s, void *v) ...@@ -966,14 +966,14 @@ static int cipso2_seq_show(struct seq_file *s, void *v)
struct list_head *list = v; struct list_head *list = v;
struct smack_known *skp = struct smack_known *skp =
list_entry(list, struct smack_known, list); list_entry(list, struct smack_known, list);
struct netlbl_lsm_secattr_catmap *cmp = skp->smk_netlabel.attr.mls.cat; struct netlbl_lsm_catmap *cmp = skp->smk_netlabel.attr.mls.cat;
char sep = '/'; char sep = '/';
int i; int i;
seq_printf(s, "%s %3d", skp->smk_known, skp->smk_netlabel.attr.mls.lvl); seq_printf(s, "%s %3d", skp->smk_known, skp->smk_netlabel.attr.mls.lvl);
for (i = netlbl_secattr_catmap_walk(cmp, 0); i >= 0; for (i = netlbl_catmap_walk(cmp, 0); i >= 0;
i = netlbl_secattr_catmap_walk(cmp, i + 1)) { i = netlbl_catmap_walk(cmp, i + 1)) {
seq_printf(s, "%c%d", sep, i); seq_printf(s, "%c%d", sep, i);
sep = ','; sep = ',';
} }
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment