Picking a Node Address
will be in the node number range (0x001-0x07F). It is possible to indicate
that a node number in the server range 0x080-0x0FE is desired. Picking a
number in the server range is a more time-consuming but more thorough
process, and it's required for server nodes because it greatly decreases the
possibility of a node number conflict.
To open AppleTalk with a server node number, an extended open call is used.
An extended open call is indicated by having the immediate bit set in the Open trap itself. In the extended open call, the high bit (bit 31) of the extension
longword field (ioMix) indicates whether a server or workstation node
number should be picked. Set this bit to 1 to request a server node number. The
rest of this field should be zero, as should all other unused fields in the queue
element. A server node number can only be requested on the first Open call to the .MPP driver.
Sending Packets to One's Own Node
Upon opening, the ability to send a packet to one's own node (intranode
manipulated through the PSetSelfSend function. Once enabled, it is possible, at all levels, to send packets to entities within one's own node. An example of
where this might be desirable is an application sending data to a print spooler
that is actually running in the background on the same node.
Enabling (or disabling) this feature affects the entire node and should be
performed with care. For instance, a desk accessory may not expect to receive
names from within its own node as a response to an NBP look-up; enabling this
feature from an application could break the desk accessory. All future
programs should be written with this feature in mind.