From: Dongwoo Lee Date: Thu, 3 Feb 2022 06:31:33 +0000 (+0900) Subject: util: resource: Enable updating resources with interest mask X-Git-Tag: accepted/tizen/unified/20220302.131908~44 X-Git-Url: http://review.tizen.org/git/?a=commitdiff_plain;h=refs%2Fchanges%2F69%2F270469%2F3;p=platform%2Fcore%2Fsystem%2Fpass.git util: resource: Enable updating resources with interest mask Change-Id: I0ea7b2b9bae7ad1c5291307581cbfae78004400f Signed-off-by: Dongwoo Lee --- diff --git a/include/util/resource.h b/include/util/resource.h index bae4314..49d7f45 100644 --- a/include/util/resource.h +++ b/include/util/resource.h @@ -96,6 +96,7 @@ void delete_resource(struct resource *resource); int update_resource_attr(struct resource *resource, u_int64_t attr_id); int update_resource_attrs(struct resource *resource); +int update_resource_attrs_interest(struct resource *resource, u_int64_t attr_interest_mask); struct resource_attribute_value * get_resource_attr_value(struct resource *resource, u_int64_t attr_id); int get_resource_attr_integer(struct resource *resource, u_int64_t attr_id); diff --git a/src/util/resource.c b/src/util/resource.c index 73bf429..f164593 100644 --- a/src/util/resource.c +++ b/src/util/resource.c @@ -143,7 +143,7 @@ int update_resource_attr(struct resource *resource, u_int64_t attr_id) return 0; } -int update_resource_attrs(struct resource *resource) +int update_resource_attrs_interest(struct resource *resource, u_int64_t interest_mask) { int i, ret; @@ -151,6 +151,8 @@ int update_resource_attrs(struct resource *resource) return -EINVAL; for (i = 0; i < resource->num_attrs; i++) { + if (!(resource->attrs[i].id & interest_mask)) + continue; ret = update_resource_attr(resource, resource->attrs[i].id); if (ret < 0) { _E("failed to update resource attr\n"); @@ -160,6 +162,11 @@ int update_resource_attrs(struct resource *resource) return 0; } +int update_resource_attrs(struct resource *resource) +{ + return update_resource_attrs_interest(resource, RESOURCE_ATTR_MASK); +} + struct resource_attribute_value * get_resource_attr_value(struct resource *resource, u_int64_t attr_id) {