XPPParmBlkPtr
XPPParamBlock union
#include <AppleTalk.h>
typedef union XPPParamBlock { Size
XPPPrmBlk XPP; 346
ASPGetparmsBlk GETPARM; 34
ASPAbortPrm ABORT; 30
ASPOpenPrm OPEN; 44
AFPLoginPrm LOGIN; 200
XCallParam XCALL; 110
typedef XPPParamBlock *XPPParmBlkPtr;

Notes: The .XPP Driver provides these functions that return information about
zones:
The GetMyZone function returns the AppleTalk zone name of the node on
which your application is running. This function works for both extended
and nonextended networks.
The GetLocalZones function returns a list of zone names on the network
that includes the node on which your application is running. This function
works for extended networks only.
The GetZoneList function returns a complete list of zones on the internet.
Before the AppleTalk Phase 2 version of The .XPP Driver, you had to
use the AppleTalk Transaction Protocol (ATP) to obtain zone information
and request it directly from a router. The Zone Information Protocol (ZIP)
functions provided by the new version of The .XPP Driver make it much
easier for you to obtain this information. To ensure compatibility with
future versions of AppleTalk, you should always use the functions described
in above to obtain zone information.
For the GetMyZone, the GetLocalZones, and the GetZoneList
functions, The .XPP Driver uses the xCallParam variant to the XPP
parameter block.
As for all other AppleTalk Manager preferred interface functions, the
MPW interface calls the Device Manager function known as PBControl to
implement these ZIP protocol functions. The qLink, qType, ioTrap,
ioCmdAddr, and ioVRefNum fields are filled in by the Device Manager;
your application should not have to set or read these fields. The ioResult
field returns the result of the function. If you call the function
asynchronously, the Device Manager sets this field to 1 as soon as you
call the function, and it changes the field to the actual result code when the
function completes execution. The ioCompletion field is a pointer to a
completion routine that you can provide; the Device Manager calls your
completion routine when it completes execution of the PBControl function.
If you are not providing a completion routine, specify NIL for this field.
The value of the ioRefNum field is returned by the OpenDriver function;
you must provide this value in each call to an .XPP driver routine. The
csCode and xppSubCode fields specify the command to be executed; the MPW
Pascal interface fills in these fields for you.The .XPP zone information
functions do not use the cmdResult field.