In the ESD record for each external symbol, there is a pair of
4 byte fields located at offsets 28 and 32 for the Extended Attribute
ESDID and offset, respectively. These two items locate the place in
the object where the descriptive information about the symbol is found. The
ESDID identifies the element. The offset is calculated with respect
to the beginning of the element identified by the ESDID. The element
must reside in the same section as the ESD record specifying the extended
attribute information.
Extended Attribute information is represented using the following
data structures:
Table 1. Extended attribute
information data structuresField |
Length/Type |
Meaning |
Text length |
Unsigned 32-bit integer |
The length of the full attribute text including
this field. |
Extended attributes architecture level |
Unsigned 16-bit integer |
The level of definition for this extended attribute
data structure. |
Number of attribute entries |
Unsigned 16-bit integer |
The number of extended attribute data elements
for this ESD or RLD item |
Only architecture level 1 is currently supported.
Following the extended attributes header are one or more 8-byte
data element descriptors. Each such descriptor is a structure of the
following form:
Table 2. Data element descriptor
data structuresField |
Length/Type |
Meaning |
Attribute type |
Unsigned 16-bit integer |
The type of attribute information. |
Offset to data element |
Unsigned 16-bit integer |
The offset from the origin of the extended attributes
header to the first byte of the data element associated with this
descriptor. |
Data element length |
Unsigned 16-bit integer |
The length in bytes of the data element associated
with this descriptor. |
Reserved |
2 bytes |
Reserved. |
These data element descriptors are immediately followed by
the data elements.
The following attribute codes are currently supported:
Table 3. Supported extended attribute type codesType Code |
Attribute Assignment |
0 |
Not defined; reserved. |
1 |
XPLINK call descriptor for referenced function. |
2–65535 |
Reserved. |
IBM products currently place the attribute information in
an initial load class named C_EXTNATTR.