HP Rp2430 ACSE/Presentation and ROSE Interface Programmer's Guide
HP Rp2430 - Server - 650 MHz Manual
View all HP Rp2430 manuals
Add to My Manuals
Save this manual to your list of manuals |
HP Rp2430 manual content summary:
- HP Rp2430 | ACSE/Presentation and ROSE Interface Programmer's Guide - Page 1
ACSE/Presentation and ROSE Interface Programmer's Guide Edition 4 32070-90032 HP9000 Networking 05/97 Printed in: United States © Copyright 1997 Hewlett-Packard Company. All rights reserved. - HP Rp2430 | ACSE/Presentation and ROSE Interface Programmer's Guide - Page 2
product and replacement parts can be obtained from your local Sales and Service Office. Restricted Rights Legend. Use, duplication or disclosure Hanover Street Palo Alto, California 94304 U.S.A. Use of this manual and flexible disk(s) or tape cartridge(s) supplied for this pack is restricted to this - HP Rp2430 | ACSE/Presentation and ROSE Interface Programmer's Guide - Page 3
©copyright 1980, 1984, 1986 Novell, Inc. ©copyright 1986-1992 Sun Microsystems, Inc. ©copyright 1985-86, 1988 Massachusetts Institute of Technology. ©copyright 1989-93 The Open Software Foundation, Inc. ©copyright 1986 Digital Equipment Corporation. ©copyright 1990 Motorola, Inc. ©copyright 1990, - HP Rp2430 | ACSE/Presentation and ROSE Interface Programmer's Guide - Page 4
4 - HP Rp2430 | ACSE/Presentation and ROSE Interface Programmer's Guide - Page 5
14 File Naming 14 What is the HP ACSE/Presentation and ROSE Interface 15 ACSE/Presentation 15 ROSE 15 Support for Multi-Threaded Applications 15 Standards Supported 17 Limitations 18 Who Should Use This Manual 20 2. Supported ACSE/Presentation and ROSE Calls ACSE/Presentation Calls and - HP Rp2430 | ACSE/Presentation and ROSE Interface Programmer's Guide - Page 6
Request 42 Step 5: Closing the Communication Endpoint 44 4. Programming Guide Summary of Programming Tasks 46 1. Prepare the System 48 2. Sends and Receives of Data 54 User Data Encoding/Decoding 55 4. Using Synchronous vs. Asynchronous Mode 56 Synchronous Mode 56 Asynchronous Mode 56 - HP Rp2430 | ACSE/Presentation and ROSE Interface Programmer's Guide - Page 7
Multi-threaded ACSE/Presentation Example 64 ACSE/Presentation Example 65 Program using ROSE 66 5. Troubleshooting Your Application Using A/P API Tracing 68 A/P API Tracing Using Environmental Variables 68 Tracing Using Global Variables 70 Selecting Types of Tracing 70 Enable A/P API Tracing - HP Rp2430 | ACSE/Presentation and ROSE Interface Programmer's Guide - Page 8
Contents A. ACSE/Presentation Reference Pages ACSE/Presentation Primitives 82 Glossary 8 - HP Rp2430 | ACSE/Presentation and ROSE Interface Programmer's Guide - Page 9
The manual part number will change when extensive changes are made. Manual updates may be issued between editions to correct errors or document product changes. To ensure that you receive the updated or new editions, you should subscribe to the appropriate product support service. See your HP sales - HP Rp2430 | ACSE/Presentation and ROSE Interface Programmer's Guide - Page 10
10 - HP Rp2430 | ACSE/Presentation and ROSE Interface Programmer's Guide - Page 11
between two processes in synchronous mode. Chapter 4 "Programming Guide" provides information to assist you in writing and executing applications using the ACSE/ Presentation (A/P) interface. Chapter 5 "Troubleshooting Your Application" describes API tracing for ACSE/Presentation followed by - HP Rp2430 | ACSE/Presentation and ROSE Interface Programmer's Guide - Page 12
12 - HP Rp2430 | ACSE/Presentation and ROSE Interface Programmer's Guide - Page 13
1 APRI Overview This chapter provides an overview of what the HP ACSE/Presentation and ROSE interface provides. 13 - HP Rp2430 | ACSE/Presentation and ROSE Interface Programmer's Guide - Page 14
/Presentation and ROSE programmatic interface is provided with the HP OTS/9000 product on HP 9000 systems. ASN.1 Support If your application requires encoding/decoding abstract syntax notation one (ASN.1) data structures, you may need to use an ASN.1 compiler. Refer to your compiler's documentation - HP Rp2430 | ACSE/Presentation and ROSE Interface Programmer's Guide - Page 15
ACSE/Presentation provides the request/reply service which is useful in building distributed applications. Note that ROSE cannot be used independently of the ACSE/Presentation interface. Support for Multi-Threaded Applications This version of HP OTS/9000 supports multi-threaded applications to be - HP Rp2430 | ACSE/Presentation and ROSE Interface Programmer's Guide - Page 16
APRI Overview What is the HP ACSE/Presentation and ROSE Interface #define ap_errno _ap_errno() • Any multi-threaded application program, which also includes osi_lib.h, should include it after the threads-specific - HP Rp2430 | ACSE/Presentation and ROSE Interface Programmer's Guide - Page 17
APRI Overview Standards Supported Standards Supported The interface provided is based on the services defined in the ISO ACSE and Presentation Service Definitions (ISO 8649 and ISO 8822) and ROSE (ISO 9072). The HP OTS/9000 subset implementation of the ACSE/Presentation library interface is based on - HP Rp2430 | ACSE/Presentation and ROSE Interface Programmer's Guide - Page 18
Figure 1-1 APRI Overview Standards Supported OSI MODEL - ACSE Presentation and ROSE APPLICATION PROCESS Layer 7 Layer 6 Layer 5 Layer 4 Layer 3 Layer 2 Layer 1 ACSE/Presentation & ROSE Interface ACSE ROSE PRESENTATION SESSION TRANSPORT NETWORK - HP Rp2430 | ACSE/Presentation and ROSE Interface Programmer's Guide - Page 19
flow control. • ACSE/presentation primitives used in ACSE/Presentation calls: A subset of the defined primitives are supported. Chapter 2 provides a list of the supported primitives. ROSE: • Reliable Transfer Service (RTS) including operation class is not supported. • Priority is not implemented for - HP Rp2430 | ACSE/Presentation and ROSE Interface Programmer's Guide - Page 20
Overview Who Should Use This Manual Who Should Use This Manual This manual is provided for application programmers who need to use ACSE/Presentation and ROSE services. It is expected that the user of this manual is an experienced applications programmer with knowledge of the HP-UX operating system - HP Rp2430 | ACSE/Presentation and ROSE Interface Programmer's Guide - Page 21
2 Supported ACSE/Presentation and ROSE Calls This chapter provides lists and brief descriptions of the supported ACSE/ Presentation and ROSE calls and primitives. 21 - HP Rp2430 | ACSE/Presentation and ROSE Interface Programmer's Guide - Page 22
Supported ACSE/Presentation and ROSE Calls ACSE/Presentation Calls and Primitives ACSE/Presentation Calls and Primitives The primitives are grouped in the sequence used supply detailed descriptions or references made in this manual. The manpages are accessible online with the manpage function of HP - HP Rp2430 | ACSE/Presentation and ROSE Interface Programmer's Guide - Page 23
Release a communication endpoint. Returns an error message. Free memory for the A/P data structures. Retrieve the value of an A/P environment attribute. Initialize the A/P environment. Establish a communication endpoint to support an instance of the A/P environment. Provides an interface for - HP Rp2430 | ACSE/Presentation and ROSE Interface Programmer's Guide - Page 24
data may be associated with the primitive. Table 2-2 ACSE/Presentation Primitives The following table lists the supported ACSE/Presentation layer service primitives. These primitives are used with the ap_rcv() and ap_snd() calls as described below. Some of the primitives contain a shorter name - HP Rp2430 | ACSE/Presentation and ROSE Interface Programmer's Guide - Page 25
association has been abnormally released because of problems below the application layer. Used with ap_snd() to request the normal release of an association. Used with ap_rcv() to indicate that the remote service user wants to release the association. Used with ap_snd() to respond to an association - HP Rp2430 | ACSE/Presentation and ROSE Interface Programmer's Guide - Page 26
Supported ACSE/Presentation and ROSE Calls ACSE/Presentation Calls and Primitives set a minor sync point. Used with ap_snd to respond to a minor sync point Used with ap_rcv to confirm a sync minor request. Used with ap_snd() to give tokens to another session user. Used with ap_rcv() to indicate the - HP Rp2430 | ACSE/Presentation and ROSE Interface Programmer's Guide - Page 27
to the man page RO_INTRO(5) for general information about ROSE. ROSE Calls ROSE only supports two calls as listed below. ROSE is used to provide ROSE provider services to an application using the ACSE/Presentation interface. Rose Calls ROSE Calls Description ro_bind() ro_unbind() Enable ROSE - HP Rp2430 | ACSE/Presentation and ROSE Interface Programmer's Guide - Page 28
Supported ACSE/Presentation and ROSE Calls ROSE Calls and Primitives Primitives RO_REJECTP_IND RO_REJ_P_IND RO_REJECTU_REQ RO_REJ_U_REQ RO_REJECTU_IND RO_REJ_U_IND RO_RESULT_REQ RO_RESULTREQ RO_RESULT_IND RO_RESULTIND Description ROSE provider rejection indication. - HP Rp2430 | ACSE/Presentation and ROSE Interface Programmer's Guide - Page 29
3 Using ACSE/Presentation This chapter provides a sample session using ACSE/Presentation between two processes in synchronous mode. 29 - HP Rp2430 | ACSE/Presentation and ROSE Interface Programmer's Guide - Page 30
block until the call is complete in synchronous mode. See the section, "Using Synchronous vs. Asynchronous Mode" in chapter 4 for more information. In order to use the ACSE/Presentation service, the processes do the following: 1. Create a communication endpoint. 2. Establish an association that - HP Rp2430 | ACSE/Presentation and ROSE Interface Programmer's Guide - Page 31
Using ACSE/Presentation Summary of Calls Table 3-1 Summary of Calls A summary of the ACSE/Presentation calls are described in the following sections. ACSE/Presentation Call Summary - HP Rp2430 | ACSE/Presentation and ROSE Interface Programmer's Guide - Page 32
Using ACSE/Presentation Summary of Calls Process A ap_poll() - HP Rp2430 | ACSE/Presentation and ROSE Interface Programmer's Guide - Page 33
the call ap_open(). A communication endpoint is a file descriptor (fd) which is returned on successful completion of the ap_open() call. The process uses the file descriptor in all subsequent A/P calls. Each process must create a communication endpoint, and only one association can be associated with - HP Rp2430 | ACSE/Presentation and ROSE Interface Programmer's Guide - Page 34
below. Initialize the A/P Environment To use the A/P services, each process must initialize the ACSE/ memory for the environment attributes, and sets the attributes to default values. (See the AP_ENV Table of Attributes in Appendix A for more information.) Since this implementation does not support - HP Rp2430 | ACSE/Presentation and ROSE Interface Programmer's Guide - Page 35
Endpoints Process A and Process B must each bind a valid presentation address (pselector, s-selector, t-selector, and NSAP) to its endpoint by using the attribute AP_BIND_PADDR in the ap_set_env() call. (See Figure 3-4.) For more information on presentation addresses, refer to Chapter 4. Chapter - HP Rp2430 | ACSE/Presentation and ROSE Interface Programmer's Guide - Page 36
2: Establish an Association APRI also supports the binding of the local presentation address without specifying a network address. This allows a single responder to receive association indications for any of the subnetworks configured on an OTS/ 9000 system. To use this feature, when setting the - HP Rp2430 | ACSE/Presentation and ROSE Interface Programmer's Guide - Page 37
ap_set_env() ap_set_env() Process B AP Environment B Initiator Communication Endpoint A Responder Communication Endpoint B Request the Association Process ap_snd() uses the A_ASSOC_REQ primitive and includes the application context name, presentation context definition list (PCDL), and Process - HP Rp2430 | ACSE/Presentation and ROSE Interface Programmer's Guide - Page 38
Process B sets the res field in the structure ap_cdrl_t to ACCPT and the transfer syntax pointer to the supported transfer syntax object id. Process B then calls ap_snd() using the A_ASSOC_RSP primitive to accept the association request. (See Figure 3-7.) Process A must wait for Process B to respond - HP Rp2430 | ACSE/Presentation and ROSE Interface Programmer's Guide - Page 39
the proposed transfer syntax is not supported by setting the res field in structure ap_cdrl_t to USER_REJ or PROV_REJ and prov_rsn is the reason for the reject. If the process cannot accept the association request for other reasons, the process sets the reason using the A_ASSOC_RSP primitive. Confirm - HP Rp2430 | ACSE/Presentation and ROSE Interface Programmer's Guide - Page 40
the selected transfer syntax. For complex data types, you can choose to use an ASN.1 compiler to assist in the creation of these routines. Process A retrieves its supported and negotiated transfer syntaxes by calling ap_get_env() using the AP_DCS attribute, and to find out the result of each proposed - HP Rp2430 | ACSE/Presentation and ROSE Interface Programmer's Guide - Page 41
Figure 3-8 Send Data Process A AP Environment A AP_DCS,dcs AP_PCDRL,pcdrl ap_get_env() ap_set_env() Using ACSE/Presentation Step 3. Exchanging Data Process B AP Environment B Initiator Communication Endpoint A ap_snd() data Responder Communication Endpoint B ap_poll() ap_rcv() Chapter 3 41 - HP Rp2430 | ACSE/Presentation and ROSE Interface Programmer's Guide - Page 42
sends a release request to Process B using ap_snd() with the A_RELEASE_REQ primitive (Figure 9). Process B uses ap_poll() to monitor events, and calls ap_rcv Request Process B accepts the request and sends a positive response using the ap_snd() call with the A_RELEASE_RSP primitive (Figure 3-10). - HP Rp2430 | ACSE/Presentation and ROSE Interface Programmer's Guide - Page 43
Figure 3-10 Using ACSE/Presentation Step 4: Release the Association The process closes the association calling ap_rcv(). If an association is released abnormally, for example, if a lower layer problem occurs, a provider abort (A_PABORT_IND primitive) may be received. Response to Release Process A - HP Rp2430 | ACSE/Presentation and ROSE Interface Programmer's Guide - Page 44
ACSE/Presentation Step 5: Closing the Communication Endpoint CAUTION Figure 3-11 Step 5: Closing the Communication Endpoint Finally, both processes use ap_close() to close down the communication endpoint (file descriptor) and A/P environment resources (see Figure 3-11). If the association is still - HP Rp2430 | ACSE/Presentation and ROSE Interface Programmer's Guide - Page 45
4 Programming Guide This chapter provides information to assist you in writing and executing applications using the ACSE/Presentation (A/P) interface. 45 - HP Rp2430 | ACSE/Presentation and ROSE Interface Programmer's Guide - Page 46
sure HP OTS/9000 h as been installed, configured, and started successfully. (See the Installing and Administering OSI Transport Services manual for A/P interface. • How control data is used for conveying additional information to the receiving process as part of the A/P primitive. • Handle data in - HP Rp2430 | ACSE/Presentation and ROSE Interface Programmer's Guide - Page 47
Programming Guide Summary of Programming Tasks 5. Decide if multiple associations need to be supported. The HP OTS/9000, you must re-link your programs with the new library. 8. Troubleshoot your application. If you have problems, you can use API tracing described in chapter 5, "Troubleshooting - HP Rp2430 | ACSE/Presentation and ROSE Interface Programmer's Guide - Page 48
correctly. • Check that the presentation addresses, in particular, the local NSAP(s) used by the ACSE/Presentation applications that have been configured in the OTS configuration file. • Verify that HP OTS/9000 h as been started either manually using osiadmin or at start-up time. 48 Chapter 4 - HP Rp2430 | ACSE/Presentation and ROSE Interface Programmer's Guide - Page 49
for attributes which are stored as data structures, memory is allocated for you. When you have finished using the information from the data structure, must use ap_free() to free the memory. For memory allocated by your application, do not use ap_free(). Implement your own routines to free application - HP Rp2430 | ACSE/Presentation and ROSE Interface Programmer's Guide - Page 50
Programming Guide 2. Manage service access point (NSAP). APRI also supports the binding of the local presentation address without specifying a network address. This allows a single responder to receive association indications for any of the subnetworks configured on an HP OTS/9000 system. To use - HP Rp2430 | ACSE/Presentation and ROSE Interface Programmer's Guide - Page 51
at the same time. For example, if the HP 9000 FTAM service is being used, the address you create for A/P applications must be different than the FTAM addresses. See the Installing, and Administering the OSI Transport Services/9000 manual for more information o n presentation addresses. Negotiating - HP Rp2430 | ACSE/Presentation and ROSE Interface Programmer's Guide - Page 52
Programming Guide 2. Manage the A/P Environment Application Contexts (AP_CNTX_NAME) Associations must negotiate the application contexts used. The initiator proposes a service or services to run, and the responder must reply to accept or reject the context. This is a mandatory parameter in the OSI - HP Rp2430 | ACSE/Presentation and ROSE Interface Programmer's Guide - Page 53
Programming Guide 2. Manage the A/P Environment • Isolate the allocations and freeing of memory passed to the A/P library to a single function. For . For example, do not use the statement: a_assoc_req_env_t peer_application = {...}; • Do not use the udata_length part of the cdata parameter for - HP Rp2430 | ACSE/Presentation and ROSE Interface Programmer's Guide - Page 54
Guide associated with the supported ACSE/Presentation primitives the receiving process using the ap_snd() and presentation context used as previously discussed you decide to send a single primitive using multiple ap_snd() calls, or the user use the same sptype. The last ap_snd() call must reset - HP Rp2430 | ACSE/Presentation and ROSE Interface Programmer's Guide - Page 55
Programming Guide 3. Managing Data 1) First ap_snd() 2) Additional ap_snd()'s 3) Last ap_snd() set AP_MORE, and send data set ASN.1 compiler documentation for the product you purchased. The sample programs in the manpages use the Marben ASN.1 compiler product and run-time library. Chapter 4 55 - HP Rp2430 | ACSE/Presentation and ROSE Interface Programmer's Guide - Page 56
Programming Guide 4. Using Synchronous vs. Asynchronous Mode 4. Using Synchronous vs. Asynchronous Mode ACSE/Presentation supports both synchronous returns with the AP_MORE bit reset. Asynchronous Mode Asynchronous mode is used for applications in which long delays are expected between events, and - HP Rp2430 | ACSE/Presentation and ROSE Interface Programmer's Guide - Page 57
Programming Guide 4. Using Synchronous vs. Asynchronous Mode If ap_rcv() is called in asynchronous running in asynchronous mode in memory shortage situations such as when using large numbers of connections. Changing Modes Once a communication endpoint has been opened using synchronous mode, it can - HP Rp2430 | ACSE/Presentation and ROSE Interface Programmer's Guide - Page 58
Guide 5. Managing Multiple Connections 5. Managing Multiple Connections Before writing an application with multiple connections, you may need to consider the following items: • Execution mode • Connection retry • Resource constraints Execution Mode For using process is servicing endpoint B - HP Rp2430 | ACSE/Presentation and ROSE Interface Programmer's Guide - Page 59
B receives a A_ASSOC_CNF which will never happen, because the remote process is servicing endpoint C which is waiting for A_RELEASE_REQ sent by endpoint A and endpoint A is blocked. • On the other hand, using asynchronous mode, ap_rcv() will return AP_AGAIN on communication endpoint B because there - HP Rp2430 | ACSE/Presentation and ROSE Interface Programmer's Guide - Page 60
Programming Guide 5. Managing problem should be temporary. To avoid waiting indefinitely, set a counter to keep track of the number of retries. Resource Constraints Each connection will take up some resources of the system. These resources may include file descriptors and memory space. Since A/P uses - HP Rp2430 | ACSE/Presentation and ROSE Interface Programmer's Guide - Page 61
fails because of temporary memory shortage, the application may want to retry the same call later. System Maximums OTS supports up to 4096 virtual circuit (VC) connections at the transport and network layer (X.25 CONS). If applications such as X.400 or FTAM are also in use, note that each session - HP Rp2430 | ACSE/Presentation and ROSE Interface Programmer's Guide - Page 62
. Because of unpredictable results, HP recommends you do not use HP-UX file system calls such as exec(2), dup(2), read(2), write(2), ioctl(2), or select(2) with HP OTS/9000 A CSE/Presentation file descriptors. Note that fork(2) can be used, but do not use fork(2) with exec(2). A communication - HP Rp2430 | ACSE/Presentation and ROSE Interface Programmer's Guide - Page 63
Programming Guide 6. Other Tasks Signal handlers can be written to capture signals and list of A/P specific errors you can access using ap_error() is included in the ap_intro manpage. For determining where problems occur, you can also use API tracing which is described in Chapter 5,Ttroubleshooting - HP Rp2430 | ACSE/Presentation and ROSE Interface Programmer's Guide - Page 64
Programming Guide 7. Before Running ACSE/Presentation Applications 7. Before Running ACSE/Presentation Applications In order to run ACSE/Presentation applications functionality are also included online in the /opt/ots/apli/demo/threads_demo directory. These programs use Kernel Threads. 64 Chapter 4 - HP Rp2430 | ACSE/Presentation and ROSE Interface Programmer's Guide - Page 65
NOTE Programming Guide ACSE/Presentation Example ACSE/Presentation Example Sample programs are data structures generated by the compiler are included in the file: asn1_if.c. Note: To use a different compiler, customize these functions for the C data structures and encoding/decoding routines generated - HP Rp2430 | ACSE/Presentation and ROSE Interface Programmer's Guide - Page 66
Programming Guide Program using ROSE Program using ROSE Additional programs are included online in /opt/ots/rose/demo which exercise the ROSE library functions and provide an example using ROSE API tracing. Multi-threaded sample programs with similar functionality are also included online in the / - HP Rp2430 | ACSE/Presentation and ROSE Interface Programmer's Guide - Page 67
5 Troubleshooting Your Application This chapter describes API tracing for ACSE/Presentation followed by API tracing for ROSE. 67 - HP Rp2430 | ACSE/Presentation and ROSE Interface Programmer's Guide - Page 68
Troubleshooting Your Application Using A/P API Tracing Using A/P API Tracing You enable tracing in your application " (meaning input and output parameters). For csh(1) users the setenv(1) command should be used. The program is then invoked and the API tracing is automatically enabled to the level - HP Rp2430 | ACSE/Presentation and ROSE Interface Programmer's Guide - Page 69
Troubleshooting Your Application Using A/P API Tracing environment variables on the first valid APRI this value in one of two ways: 1. It may be treated as an integer value and may be set using either decimal or hexadecimal notation, for example: AP_TRACE=0xff 2. It may be treated as a set of ASCII fl - HP Rp2430 | ACSE/Presentation and ROSE Interface Programmer's Guide - Page 70
Troubleshooting Your Application Using A/P API Tracing AP_TRACE_MAX_UDATA:. The maximum amount of user data (in bytes) that will be displayed when parameters are displayed. Default = 16. Tracing Using Global Variables A/P API tracing is controlled by three global variables. The variables are - HP Rp2430 | ACSE/Presentation and ROSE Interface Programmer's Guide - Page 71
Troubleshooting Your Application Using A/P API Tracing API_TR_ENTRY_EXIT API_TR_INPUT API_TR_OUTPUT API_TR_INT_ENTRY_EXIT API_TR_INT_ERROR Traces procedure entry and exit. No parameter information is displayed. This is useful useful for HP factory support. Enable A/P API Tracing Using Global - HP Rp2430 | ACSE/Presentation and ROSE Interface Programmer's Guide - Page 72
Troubleshooting Your Application Using A/P API Tracing 2. Within your program, enable tracing and select the level of tracing you want by modifying the value of the ap_trace variable. For example, - HP Rp2430 | ACSE/Presentation and ROSE Interface Programmer's Guide - Page 73
Troubleshooting Your Application Using A/P API Tracing 15:53:38 len = -threaded applications include thread-ids of the executing threads as part of the trace output. This identifies a particular part of the trace output as belonging to a particular thread. - HP Rp2430 | ACSE/Presentation and ROSE Interface Programmer's Guide - Page 74
Troubleshooting Your Application Using A/P API Tracing >>> thread-id = 6 >>> > pathname = /dev/osipi > oflags = 0x0 - HP Rp2430 | ACSE/Presentation and ROSE Interface Programmer's Guide - Page 75
Troubleshooting Your Application Using ROSE API Tracing Using ROSE API Tracing Tracing is enabled in your value in one of two ways: 1. It may be treated as an integer value and may be set using either decimal or hexadecimal notation, for example: AP_TRACE=0xff 2. It may be treated as a set of ASCII - HP Rp2430 | ACSE/Presentation and ROSE Interface Programmer's Guide - Page 76
5-1 Troubleshooting Your Application Using ROSE API Tracing AP_TRACE_FILE: The name of the file that is to receive tracing results. Default = stderr. AP_TRACE_MAX_UDATA: The maximum amount of user data (in bytes) that will be displayed when parameters are displayed. Default = 16. Tracing Using - HP Rp2430 | ACSE/Presentation and ROSE Interface Programmer's Guide - Page 77
Troubleshooting Your Application Using ROSE API Tracing Table 5-2 ROSE Tracing Types API_TR_ENTRY_EXIT API_TR_INPUT API_TR_OUTPUT API_TR_INT_ENTRY_EXIT API_TR_INT_ERROR Traces procedure entry and exit. No parameter information is displayed. This is useful information useful for HP factory support. - HP Rp2430 | ACSE/Presentation and ROSE Interface Programmer's Guide - Page 78
Troubleshooting Your Application Using ROSE API Tracing 2. Within your program, enable tracing and select the level of tracing you want by modifying the value of the rose_trace variable. For - HP Rp2430 | ACSE/Presentation and ROSE Interface Programmer's Guide - Page 79
Troubleshooting Your Application Using ROSE API Tracing • The amount of data displayed is based on the value set for rose_trace_max_udata. For example, if rose_trace_max_udata is set to 16, only - HP Rp2430 | ACSE/Presentation and ROSE Interface Programmer's Guide - Page 80
Troubleshooting Your Application Using ROSE API Tracing 80 Chapter 5 - HP Rp2430 | ACSE/Presentation and ROSE Interface Programmer's Guide - Page 81
A ACSE/Presentation Reference Pages This appendix includes a list of the supported ACSE/Presentation attributes and a glossary of terms 81 - HP Rp2430 | ACSE/Presentation and ROSE Interface Programmer's Guide - Page 82
long or'd bits: AP_ACSEVER1 bit values: AP_ACSEVER1 always only in states: AP_UNBOUND AP_IDLE AP_BIND_PADDR Presentation address to which the stream supporting this instance of the A/P-Library is bound ap _paddr_t N.A. Any allowed by the C type always ap_paddr_t only in state AP_UNBOUND - HP Rp2430 | ACSE/Presentation and ROSE Interface Programmer's Guide - Page 83
Name of attribute/ Purpose Data Type Default value of attribute Values legal for this attribute (* = not supported by current release) Readable states (value of AP_STATE attribute) Writable states (value of AP_STATE attribute) AP_CLD_AEQ Called application entity qualifier any_t None Any - HP Rp2430 | ACSE/Presentation and ROSE Interface Programmer's Guide - Page 84
Name of attribute/ Purpose Data Type Default value of attribute Values legal for this attribute (* = not supported by current release) Readable states (value of AP_STATE attribute) Writable states (value of AP_STATE attribute) AP_CLG_APID Calling application process invocation identifier long - HP Rp2430 | ACSE/Presentation and ROSE Interface Programmer's Guide - Page 85
value of attribute Values legal for this attribute (* = not supported by current release) Readable states (value of AP_STATE attribute) Writable always AP_MIN_SYNCP to AP_MAX_SYNCP(999999) AP_LCL_PADDR Presentation address used by the local entity ap _paddr_t N.A. AP_LIB_AVAIL Bitmask - HP Rp2430 | ACSE/Presentation and ROSE Interface Programmer's Guide - Page 86
of attribute Values legal for this attribute (* = not supported by current release) Readable states (value of AP_STATE attribute) Writable states (value of AP_STATE attribute) AP_MODE_AVAIL Specifies the modes in which the ACSE services may operate unsigned long AP_MODE_SEL Specifies the mode in - HP Rp2430 | ACSE/Presentation and ROSE Interface Programmer's Guide - Page 87
Name of attribute/ Purpose Data Type Default value of attribute Values legal for this attribute (* = not supported by current release) Readable states (value of AP_STATE attribute) Writable states (value of AP_STATE attribute) AP_PFU_SEL Bitmask indicating which Presentation Layer functional - HP Rp2430 | ACSE/Presentation and ROSE Interface Programmer's Guide - Page 88
Name of attribute/ Purpose Data Type Default value of attribute Values legal for this attribute (* = not supported by current release) Readable states (value of AP_STATE attribute) Writable states (value of AP_STATE attribute) AP_ROLE_CURRENT Indicates whether the library user is the - HP Rp2430 | ACSE/Presentation and ROSE Interface Programmer's Guide - Page 89
bit values: AP_SESSVER1 AP_SESSVER2 always never AP_SESS_OPT_AVAIL Bitmask indicating whether certain optional capabilities of the session layer are supported by the underlying protocol provider unsigned long AP_SESS_SEL Bitmask indicating which version of the ISO Session Layer protocol is - HP Rp2430 | ACSE/Presentation and ROSE Interface Programmer's Guide - Page 90
Name of attribute/ Purpose Data Type Default value of attribute Values legal for this attribute (* = not supported by current release) Readable states (value of AP_STATE attribute) Writable states (value of AP_STATE attribute) AP_SFU_AVAIL Bitmark indicating which Session Layer functional - HP Rp2430 | ACSE/Presentation and ROSE Interface Programmer's Guide - Page 91
Name of attribute/ Purpose Data Type Default value of attribute Values legal for this attribute (* = not supported by current release) Readable states (value of AP_STATE attribute) Writable states (value of AP_STATE attribute) AP_STATE unsigned Current state of the long A/P- Library - HP Rp2430 | ACSE/Presentation and ROSE Interface Programmer's Guide - Page 92
Name of attribute/ Purpose Data Type Default value of attribute Values legal for this attribute (* = not supported by current release) Readable states (value of AP_STATE attribute) Writable states (value of AP_STATE attribute) AP_TOKENS_AVAIL Bitmark indicating which session tokens are - HP Rp2430 | ACSE/Presentation and ROSE Interface Programmer's Guide - Page 93
ACSE/Presentation Reference Pages ACSE/Presentation Primitives 93 Table A-2 Primitive A_ABORT_IND A_ASSOC_IND AP_RCV Table of Attributes This primitive valid in states Ap_env attribute that must be set May change attributes all except: AP_UNBOUND AP_IDLE AP_IDLE none AP_STATE AP_BIND_PA DDR - HP Rp2430 | ACSE/Presentation and ROSE Interface Programmer's Guide - Page 94
ACSE/Presentation Reference Pages ACSE/Presentation Primitives 94 Primitive A_ASSOC_CNF A_PABORT_IND A_RELEASE_IND A_RELEASE_CNF P_DATA_IND P_RESYNC_IND This primitive valid in states Ap_env attribute that must be set May change attributes AP_WASSOCcnf_ASSOCreq none all except: AP_UNBOUND - HP Rp2430 | ACSE/Presentation and ROSE Interface Programmer's Guide - Page 95
ACSE/Presentation Reference Pages ACSE/Presentation Primitives 95 Primitive P_RESYNC_CNF P_SYNCMINOR_IND P_SYNCMINOR_CNF P_TOKENGIVE_IND This primitive valid in states Ap_env attribute that must be set May change attributes AP_WRESYNcnf_RESYNreq none AP_DATA_XFER none AP_DATA_XFER none - HP Rp2430 | ACSE/Presentation and ROSE Interface Programmer's Guide - Page 96
ACSE/Presentation Reference Pages ACSE/Presentation Primitives 96 Primitive RO_REJECTU_IND RO_RESULT_IND This primitive valid in states Ap_env attribute that must be set May change attributes AP_DATAXFER none AP_WRELcnf_RELreq AP_WSYNCMAcnf_SYNCMAreq AP_WACTEcnf_ACTEreq AP_DATAXFER none - HP Rp2430 | ACSE/Presentation and ROSE Interface Programmer's Guide - Page 97
ACSE/Presentation Reference Pages ACSE/Presentation Primitives 97 Table A-3 Primitive A_ABORT_REQ A_ASSOC_REQ A_ASSOC_RSP AP_SND Table of Attributes This primitive, valid in states Ap_env attributes that may be set (must be set in BOLD) May change attributes Next state (values of AP_STATE - HP Rp2430 | ACSE/Presentation and ROSE Interface Programmer's Guide - Page 98
Primitive This primitive, valid in states Ap_env attributes that may be set (must be set in BOLD) May change attributes Next state (values of AP_STATE attribute) A_PABORT_REQ A_RELEASE_REQ A_RELEASE_RSP P_DATA_REQ P_RESYNC_REQ P_RESYNC_RSP all except: AP_UNBOUND AP_IDLE AP_DATAXFER - HP Rp2430 | ACSE/Presentation and ROSE Interface Programmer's Guide - Page 99
Primitive This primitive, valid in states Ap_env attributes that may be set (must be set in BOLD) May change attributes Next state (values of AP_STATE attribute) P_TOKENGIVE_REQ AP_DATAXFER none AP_WSYNCHMAcnf_SYNCMAreq AP_WACTEcnf_ACTEreq AP_WSYNCMArsp_SYNCMAind AP_WACTErsp_ACTEind - HP Rp2430 | ACSE/Presentation and ROSE Interface Programmer's Guide - Page 100
ACSE/Presentation Reference Pages ACSE/Presentation Primitives 100 Appendix A - HP Rp2430 | ACSE/Presentation and ROSE Interface Programmer's Guide - Page 101
and Telegraph APLI ACSE/Presentation library interface (see APRI). Another term used to describe the ACSE/ Presentation part of HewlettPackard's APRI implementation. CLNS See Connectionless network service. CMIP Common Management Information Protocol. APRI Abbreviation for ACSE/ Presentation and - HP Rp2430 | ACSE/Presentation and ROSE Interface Programmer's Guide - Page 102
service. The layer 3 network layer that provides end-to-end connection (virtual circuit) to transmit data. CONS See Connection oriented network service the physical medium. de facto standard a networking standard whose wide use makes it an unofficial industry standard. draft international standard ( - HP Rp2430 | ACSE/Presentation and ROSE Interface Programmer's Guide - Page 103
of data networks with telephone communications and other services (e.g., video) by means of digital technology. IDI Initial domain identifier. The second part of the initial domain part (IDP) definition of an NSAP. See IDP. IDP Initial domain part. The IDP part of an NSAP identifies which national or - HP Rp2430 | ACSE/Presentation and ROSE Interface Programmer's Guide - Page 104
parts, the authority format identifier (AFI) and the initial domain identifier (IDI). IDP spaces are managed by organizations such as AFNOR, ANSI and NIST. ISDN See Integrated Services OSI standards for multivendor networking. local area network (LAN) a data communications network of limited size- - HP Rp2430 | ACSE/Presentation and ROSE Interface Programmer's Guide - Page 105
Access Point. A SAP is a pipe between two OSI layers such that an entity at layer n + 1 can obtain a set of services from layer n. Selector a sequence of octets (bytes) used to identify a SAP. Session Layer Layer 5 of the OSI model; permits the setup of a communications path along a network and - HP Rp2430 | ACSE/Presentation and ROSE Interface Programmer's Guide - Page 106
) addresses are used to identify systems in an ARPA network. Transport Layer Layer 4 of the OSI model; provides end-to-end data integrity between processes. X.400 CCITT standard for electronic message handling systems (e.g., electronic mail) in multivendor environments. X.500 Directory Services An - HP Rp2430 | ACSE/Presentation and ROSE Interface Programmer's Guide - Page 107
supported, 19 calls, summary, 23 functions by task, 22 limitations, 19 multi-thread program example, 64 order of primitives used 22 audience for manual, 20 B binding endpoints, 35 binding p-address, 51 C changing modes, 57 client,server, 49 close data, 55 dynamic memory allocation, 60 Index 107 - HP Rp2430 | ACSE/Presentation and ROSE Interface Programmer's Guide - Page 108
, 44 I implementation standards supported, 17 initialize the A/P environment, 34 initiator roles, 49 L limitations, 18 ACSE/Presentation, 19 M manpages A/P calls, 22 A/P primitives, 22 short names for, 14 memory usage, 60 migration new versions, 52 multiple connections, 58 use asynch. mode, 58 - HP Rp2430 | ACSE/Presentation and ROSE Interface Programmer's Guide - Page 109
use this manual, 20 X X.410, 17 XAP migration guidelines, 52 migration to, 52 T tracing A/P APIs, 68 in multi-threaded applications, 73, 79 ROSE API, 75 types of, 70, 76 using environment variables, 68 using global variables, 70 using ROSE global variables, 76 transfer syntax, 38 troubleshooting
ACSE/Presentation and ROSE Interface
Programmer’s Guide
Edition 4
32070-90032
HP9000 Networking
05/97
Printed in: United States
© Copyright 1997 Hewlett-Packard Company. All rights reserved.