Important: The information in this document is obsolete and should not be used for new development.
Chapter 8 - AppleTalk Session Protocol (ASP)
This chapter describes the AppleTalk Session Protocol (ASP) that you can use to establish a session between an ASP workstation application or process and an ASP server application. An ASP session is asymmetrical: all communication is initiated by the ASP workstation and responded to by the ASP server.ASP provides an application programming interface for the workstation side only. ASP is not commonly used by application program developers. The primary use of ASP is to provide services for the AppleTalk Filing Protocol (AFP) that, in turn, provides all of the services necessary to access an AppleTalk AppleShare server. Most developers who want to write an AppleTalk application that establishes a session use the AppleTalk Data Stream Protocol (ADSP) because it provides peer-to-peer services. For these reasons, this chapter includes "About" and "Reference" sections only; it does not include a "Using" section, as do most of the other chapters in this book. This chapter is included to complete the coverage of the AppleTalk protocol stack in this book.
However, if you want to use ASP to write an application that runs on a workstation
and initiates a session with an ASP server, you should read this chapter and the chapter in Inside AppleTalk, second edition, that describes the AppleTalk Session Protocol specification.You can use ASP to open and close a session with an ASP server; you can also send commands and data across the session to the server and receive replies in response.
The commands that you send to the ASP server must adhere to the syntax of a higher-
level protocol that is built on top of the ASP server. ASP transfers the commands; it
does not interpret or execute them.This chapter does not describe how to implement an ASP server. If you want to implement an ASP server, you must use the programming interface to the AppleTalk Transaction Protocol (ATP) and follow the AppleTalk Session Protocol specification
as defined in Inside AppleTalk, second edition.If you want to write an application that supports a peer-to-peer session in which each end of the session can send and receive data at any time, you should use the AppleTalk Data Stream Protocol (ADSP) instead of ASP. The chapter "AppleTalk Data Stream Protocol (ADSP)" in this book describes ADSP.
For an overview of ASP and how it fits within the AppleTalk protocol stack, read the chapter "Introduction to AppleTalk" in this book. "Introduction to AppleTalk" also introduces and defines some of the terminology used in this chapter. Because ASP is built on top of ATP, possessing an understanding of ATP will help you to understand ASP. The chapter "AppleTalk Transaction Protocol (ATP)" in this book describes ATP.
Chapter Contents
- About ASP
- ASP Reference
- Data Structures
- XPP Parameter Block for ASP
- Routines
- Opening and Closing ASP Sessions
- Sending Commands and Writing Data From the Workstation to the Server
- Obtaining Information About ASP's Maximum Capacities and the Status of the Server
- Canceling an ASP Request to Open a Session
- Summary of ASP
- Pascal Summary
- Constants
- Data Types
- Address Block Record
- XPP Parameter Block for ASP
- Routines
- Opening and Closing ASP Sessions
- Sending Commands and Writing Data From the Workstation to the Server
- Obtaining Information About ASP's Maximum Capacities and the Status of the Server
- Canceling an ASP Request to Open a Session
- C Summary
- Constants
- Data Types
- Address Block Record
- XPP Parameter Block for ASP
- Routines
- Opening and Closing ASP Sessions
- Sending Commands and Writing Data From the Workstation to the Server
- Obtaining Information About ASP's Maximum Capacities and the Status of the Server
- Canceling an ASP Request to Open a Session
- Assembly-Language Summary
- Constants
- Offsets in User Bytes
- Offsets in ATP Data Part
- Command Codes (csCodes)
- ASP Commands
- Miscellaneous
- Data Structures
- XPP Parameter Block Common Fields for ASP Routines
- ASPOpenSession Parameter Block
- ASPCloseSession Parameter Block
- ASPCloseAll Parameter Block
- ASPUserCommand Parameter Block
- ASPUserWrite Parameter Block
- ASPGetParms Parameter Block
- ASPGetStatus Parameter Block
- ASPAbortOS Parameter Block
- Result Codes