ArgListValues attribute for agents registered as V40 and earlier

For agents registered as V40 and earlier, the ArgListValues attribute is an ordered list of attribute values. The attribute values are listed in the same order as in the ArgList attribute.

For C++ entry points, the parameter attr_val is an array of character pointers that contains the ArgListValues. The last element of the array is a NULL pointer.

For script entry points, the ArgListValues are passed as command-line arguments to scripts.

See the chapter describing the configuration language in the Administrator's Guide for attribute definitions.

For example, if Type "Foo" is defined in the file types.cf as:

Type Foo (

str Name

int IntAttr

str StringAttr

str VectorAttr[]

str AssocAttr{}

static str ArgList[] = { IntAttr, StringAttr,

VectorAttr, AssocAttr }

)

And if a resource "Bar" is defined in the file main.cf as:

Foo Bar (

IntAttr = 100

StringAttr = "Oracle"

VectorAttr = { "vol1", "vol2", "vol3" }

AssocAttr = { "disk1" = "1024", "disk2" = "512" }

)

Then, for V50 and later, the parameter attr_val is:

attr_val[0] = "IntAttr"

attr_val[1] = "1" // Number of components in

// IntAttr attr value

attr_val[2] = "100" // Value of IntAttr

attr_val[3] = "StringAttr"

attr_val[4] = "1" // Number of components in

// StringAttr attr value

attr_val[5] = "Oracle" // Value of StringAttr

attr_val[6] = "VectorAttr"

attr_val[7] = "3" // Number of components in

// VectorAttr attr value

attr_val[8] = "vol1"

attr_val[9] = "vol2"

attr_val[10] = "vol3"

attr_val[11] = "AssocAttr"

attr_val[12] = "4" // Number of components in

// AssocAttr attr value

attr_val[13] = "disk1"

attr_val[14] = "1024"

attr_val[15] = "disk2"

attr_val[16] = "512"

attr_val[17] = NULL // Last element

Or, for V40 and earlier, the parameter attr_val is:

attr_val[0] ===> "100" // Value of IntAttr, the first

// ArgList attribute.

attr_val[1] ===> "Oracle" // Value of StringAttr.

attr_val[2] ===> "3" // Number of components in

// VectorAttr.

attr_val[3] ===> "vol1"

attr_val[4] ===> "vol2"

attr_val[5] ===> "vol3"

attr_val[6] ===> "4" // Number of components in

// AssocAttr.

attr_val[7] ===> "disk1"

attr_val[8] ===> "1024"

attr_val[9] ===> "disk2"

attr_val[10]===> "512"

attr_val[11]===> NULL // Last element.