net: lwm2m: introduce LWM2M_HAS_PERM macro

Standardize permission checks via the LWM2M_HAS_PERM macro.

Signed-off-by: Michael Scott <michael@opensourcefoundries.com>
This commit is contained in:
Michael Scott 2018-04-30 15:30:12 -07:00 committed by Jukka Rissanen
commit f80c52d668
5 changed files with 6 additions and 6 deletions

View file

@ -2640,8 +2640,7 @@ static int do_read_op(struct lwm2m_engine_obj *obj,
res->res_id);
if (!obj_field) {
ret = -ENOENT;
} else if ((obj_field->permissions &
LWM2M_PERM_R) != LWM2M_PERM_R) {
} else if (!LWM2M_HAS_PERM(obj_field, LWM2M_PERM_R)) {
ret = -EPERM;
} else {
/* formatter startup if needed */

View file

@ -81,6 +81,8 @@
LWM2M_OP_BIT(LWM2M_OP_CREATE) | \
LWM2M_OP_BIT(LWM2M_OP_EXECUTE))
#define LWM2M_HAS_PERM(of, p) ((of->permissions & p) == p)
/* resource types */
#define LWM2M_RES_TYPE_NONE 0
#define LWM2M_RES_TYPE_OPAQUE 1

View file

@ -569,8 +569,7 @@ int do_write_op_json(struct lwm2m_engine_obj *obj,
goto skip_optional;
}
if ((obj_field->permissions & LWM2M_PERM_W) !=
LWM2M_PERM_W) {
if (!LWM2M_HAS_PERM(obj_field, LWM2M_PERM_W)) {
return -EPERM;
}

View file

@ -741,7 +741,7 @@ static int do_write_op_tlv_item(struct lwm2m_engine_context *context)
return -ENOENT;
}
if ((obj_field->permissions & LWM2M_PERM_W) != LWM2M_PERM_W) {
if (!LWM2M_HAS_PERM(obj_field, LWM2M_PERM_W)) {
return -EPERM;
}

View file

@ -354,7 +354,7 @@ int do_write_op_plain_text(struct lwm2m_engine_obj *obj,
return -ENOENT;
}
if ((obj_field->permissions & LWM2M_PERM_W) != LWM2M_PERM_W) {
if (!LWM2M_HAS_PERM(obj_field, LWM2M_PERM_W)) {
return -EPERM;
}