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:
parent
cf55b70b4c
commit
f80c52d668
5 changed files with 6 additions and 6 deletions
|
@ -2640,8 +2640,7 @@ static int do_read_op(struct lwm2m_engine_obj *obj,
|
||||||
res->res_id);
|
res->res_id);
|
||||||
if (!obj_field) {
|
if (!obj_field) {
|
||||||
ret = -ENOENT;
|
ret = -ENOENT;
|
||||||
} else if ((obj_field->permissions &
|
} else if (!LWM2M_HAS_PERM(obj_field, LWM2M_PERM_R)) {
|
||||||
LWM2M_PERM_R) != LWM2M_PERM_R) {
|
|
||||||
ret = -EPERM;
|
ret = -EPERM;
|
||||||
} else {
|
} else {
|
||||||
/* formatter startup if needed */
|
/* formatter startup if needed */
|
||||||
|
|
|
@ -81,6 +81,8 @@
|
||||||
LWM2M_OP_BIT(LWM2M_OP_CREATE) | \
|
LWM2M_OP_BIT(LWM2M_OP_CREATE) | \
|
||||||
LWM2M_OP_BIT(LWM2M_OP_EXECUTE))
|
LWM2M_OP_BIT(LWM2M_OP_EXECUTE))
|
||||||
|
|
||||||
|
#define LWM2M_HAS_PERM(of, p) ((of->permissions & p) == p)
|
||||||
|
|
||||||
/* resource types */
|
/* resource types */
|
||||||
#define LWM2M_RES_TYPE_NONE 0
|
#define LWM2M_RES_TYPE_NONE 0
|
||||||
#define LWM2M_RES_TYPE_OPAQUE 1
|
#define LWM2M_RES_TYPE_OPAQUE 1
|
||||||
|
|
|
@ -569,8 +569,7 @@ int do_write_op_json(struct lwm2m_engine_obj *obj,
|
||||||
goto skip_optional;
|
goto skip_optional;
|
||||||
}
|
}
|
||||||
|
|
||||||
if ((obj_field->permissions & LWM2M_PERM_W) !=
|
if (!LWM2M_HAS_PERM(obj_field, LWM2M_PERM_W)) {
|
||||||
LWM2M_PERM_W) {
|
|
||||||
return -EPERM;
|
return -EPERM;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
|
@ -741,7 +741,7 @@ static int do_write_op_tlv_item(struct lwm2m_engine_context *context)
|
||||||
return -ENOENT;
|
return -ENOENT;
|
||||||
}
|
}
|
||||||
|
|
||||||
if ((obj_field->permissions & LWM2M_PERM_W) != LWM2M_PERM_W) {
|
if (!LWM2M_HAS_PERM(obj_field, LWM2M_PERM_W)) {
|
||||||
return -EPERM;
|
return -EPERM;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
|
@ -354,7 +354,7 @@ int do_write_op_plain_text(struct lwm2m_engine_obj *obj,
|
||||||
return -ENOENT;
|
return -ENOENT;
|
||||||
}
|
}
|
||||||
|
|
||||||
if ((obj_field->permissions & LWM2M_PERM_W) != LWM2M_PERM_W) {
|
if (!LWM2M_HAS_PERM(obj_field, LWM2M_PERM_W)) {
|
||||||
return -EPERM;
|
return -EPERM;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
Loading…
Add table
Add a link
Reference in a new issue