Go to main content

man pages section 3: Extended Library Functions, Volume 3

Exit Print View

Updated: July 2017



ptree_get_node_by_path - get handle of node specified by PICL tree path


cc [ flag... ] file... –lpicltree [ library... ]
#include <picltree.h>

int ptree_get_node_by_path(const char *ptreepath,
     picl_nodehdl_t *nodeh);


The ptree_get_node_by_path() function copies the handle of the node in the PICL tree specified by the path given in ptreepath into the location nodeh.

The syntax of a PICL tree path is:

[def_propname:]/[def_propval[match_cond] … ]

where def_propname prefix is a shorthand notation to specify the name of the property whose value is specified in def_propval, and the match_cond expression specifies the matching criteria for that node in the form of one or more pairs of property names and values such as

[@address][?prop_name[=prop_val] … ]

where '@' is a shorthand notation to refer to the device address, which is followed by the device addres value address. The address value is matched with the value of the property "bus-addr" if it exists. If no "bus-addr" property exists, then it is matched with the value of the property "UnitAddress". Use the '?' notation to limit explicitly the comparison to "bus-addr" or "UnitAddress" property. The expression following '?' specifies matching property name and value pairs, where prop_name gives the property name and prop_val gives the property value for non PICL_PTYPE_VOID properties. The values for properties of type PICL_PTYPE_TABLE, PICL_PTYPE_BYTEARRAY, and PICL_PTYPE_REFERENCE cannot be specified in the match_cond expression.

A "_class" property value of "picl" may be used to match nodes of all PICL classes.

All valid paths must start at the root node denoted by '/'.

If no prefix is specified for the path, then the prefix defaults to the "name" property.

Return Values

Upon successful completion, 0 is returned. On failure, a non-negative integer is returned to indicate an error.

PICL_NOTNODE is returned if there is no node corresponding to the specified path.



Invalid argument


Not a node


General system failure


See attributes(5) for descriptions of the following attributes:

Interface Stability

See Also

ptree_get_propval_by_name(3PICLTREE), attributes(5)