getattr 设备配置子例程

用途

返回属性对象的当前值。

对象数据管理器库 (libodm.a)

语法

#include <cf.h>
#include <sys/cfgodm.h>
#include <sys/cfgdb.h>
struct CuAt *getattr (devname, attrname, getall, how_many)
char *  devname;
char *  attrname;
int  getall;
int *  how_many;

参数

描述
devName 指定设备逻辑名。
属性名 指定属性名称。
盖塔尔 指定一个布尔标志,当该标志设置为 True 时,它指示要返回到调用例程的属性列表。
豪 _many 指向 盖塔特尔 子例程找到了多少个属性。

描述

getattr 设备配置子例程从定制属性 (CuAt) 对象类或预定义属性 (PdAt) 对象类返回属性对象的当前值或属性对象的当前值列表。 getattr 设备配置子例程查询 CuAt 对象类 以获取与设备逻辑名和属性名匹配的属性对象。 设备配置对象类是应用程序的责任。

getattr 子例程为返回的 CuAt 对象类结构分配内存。 当应用程序退出时,将自动释放此内存。 但是,如果应用程序多次调用 盖塔特尔 并运行很长时间,那么它必须释放此内存。

要获取单个属性,应将 盖塔尔 参数设置为 False。 如果对象存在于 CuAt 对象类中,那么会将指向此结构的指针返回到调用例程。

但是,如果找不到对象,那么 getattr 子例程假定属性采用在 PdAt 对象类中找到的缺省值。 在这种情况下,将查询 PdAt 对象类以获取属性信息。 如果找到此信息,那么会将相关属性值 (即,缺省值,标志信息和 NLS 索引) 复制到 CuAt 结构中。 然后,此结构将返回到调用例程。 否则,将返回空指针以指示错误。

要获取设备名的所有定制属性,应该将 盖塔尔 参数设置为 True。 在此情况下,将忽略 属性名 参数。 将查询 PdAt 和 CuAt 对象类,并返回 CuAt 结构的列表。 PdAt 对象将复制到 CuAt 结构,以便可以返回一个列表。

注: 除非先调用 odm_initialize 子例程,否则 盖塔特尔 设备配置子例程将失败。

返回值

成功完成时, getattr 子例程返回一个指向 CuAt 结构列表的指针。 如果操作不成功,那么将返回空指针。

文件

描述
/usr/lib/libcfg.a 设备配置子例程的归档。