2.5.2 ANR_REC

 Each ANR_REC structure corresponds to a node in the ANR index tree. The server constructs the tree as a threaded tree so that searches are efficient, and traversing to the next and previous records is also efficient. The root of the tree MUST be the first ANR_REC in the ANR Index file.


0


1


2


3


4


5


6


7


8


9

1
0


1


2


3


4


5


6


7


8


9

2
0


1


2


3


4


5


6


7


8


9

3
0


1

oLT

oGT

iBrowse

a

b

oPrev

oNext

acKey (variable)

...

oLT (4 bytes):  A 32-bit unsigned integer that specifies the offset of the left ANR_REC child of the current node in the ANR Index file. The left child MUST sort to the same value as the current node or less. This field MUST be set to 0x00000000 to indicate that there is no left child node.

oGT (4 bytes):  A 32-bit unsigned integer that specifies the offset of the right ANR_REC child of the current node in the ANR Index file. The right child MUST sort to the same value as the current node or greater. This field MUST be set to 0x00000000 to indicate that there is no right child node.

iBrowse (3 bytes):  A 32-bit unsigned integer that specifies the index to the B2_REC in the Browse file that references this record. The values 0x000000 through 0x000002 are reserved and MUST NOT be used. The index value in the browse file is computed by using the following equation: iBrowse – 0x000003.

a (1 bit):  A single bit value. This field MUST be set to 1 for e-mail alias records. This field MUST be set to 0 for display name, office location, and surname records.

b (7 bits):  A 7-bit value. This field MUST be all zeros.

oPrev (4 bytes):  A 32-bit unsigned integer that specifies the offset of the previous ANR_REC record in the ANR Index file when sorted as a flat list. This field MUST be set to 0x00000000 when this is the first node in the list.

oNext (4 bytes):  A 32-bit unsigned integer that specifies the offset of the next ANR_REC record in the ANR Index file when sorted as a flat list. This field MUST be set to 0x00000000 when this is the last node in the list.

acKey (variable):  The null-terminated, ANSI character set string value, of the record for the OAB Version 2 ANR Index files or the null-terminated UTF-8 string value of the record for OAB Version 3 ANR Index files. This field MUST be 64 characters or fewer including the terminating null character.