On 28/06/2017 14:48, Fam Zheng wrote: > The get/set pair and the struct will be reused by qdev link prop, make > them public. > > Signed-off-by: Fam Zheng <f...@redhat.com>
Maybe it's better to make it a separate header file. No other objections. Paolo > --- > include/qom/object.h | 13 +++++++++++++ > qom/object.c | 18 ++++++------------ > 2 files changed, 19 insertions(+), 12 deletions(-) > > diff --git a/include/qom/object.h b/include/qom/object.h > index abaeb8c..4659e6a 100644 > --- a/include/qom/object.h > +++ b/include/qom/object.h > @@ -1613,4 +1613,17 @@ Object *container_get(Object *root, const char *path); > * Returns the instance_size of the given @typename. > */ > size_t object_type_get_instance_size(const char *typename); > + > +typedef struct { > + Object **child; > + void (*check)(Object *, const char *, Object *, Error **); > + ObjectPropertyLinkFlags flags; > +} LinkProperty; > + > +void object_get_link_property(Object *obj, Visitor *v, > + const char *name, void *opaque, > + Error **errp); > +void object_set_link_property(Object *obj, Visitor *v, > + const char *name, void *opaque, > + Error **errp); > #endif > diff --git a/qom/object.c b/qom/object.c > index 5f6fdfa..3868370 100644 > --- a/qom/object.c > +++ b/qom/object.c > @@ -1434,15 +1434,9 @@ void object_property_allow_set_link(Object *obj, const > char *name, > /* Allow the link to be set, always */ > } > > -typedef struct { > - Object **child; > - void (*check)(Object *, const char *, Object *, Error **); > - ObjectPropertyLinkFlags flags; > -} LinkProperty; > - > -static void object_get_link_property(Object *obj, Visitor *v, > - const char *name, void *opaque, > - Error **errp) > +void object_get_link_property(Object *obj, Visitor *v, > + const char *name, void *opaque, > + Error **errp) > { > LinkProperty *lprop = opaque; > Object **child = lprop->child; > @@ -1498,9 +1492,9 @@ static Object *object_resolve_link(Object *obj, const > char *name, > return target; > } > > -static void object_set_link_property(Object *obj, Visitor *v, > - const char *name, void *opaque, > - Error **errp) > +void object_set_link_property(Object *obj, Visitor *v, > + const char *name, void *opaque, > + Error **errp) > { > Error *local_err = NULL; > LinkProperty *prop = opaque; >