HP rp5430 ACSE/Presentation and ROSE Interface Programmer's Guide
HP rp5430 Manual
View all HP rp5430 manuals
Add to My Manuals
Save this manual to your list of manuals |
HP rp5430 manual content summary:
- HP rp5430 | 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 rp5430 | 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 Use of this manual and flexible disk(s) or tape cartridge(s) supplied for this pack is restricted to this product California This software is based in part on the Fourth Berkeley Software - HP rp5430 | 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 rp5430 | ACSE/Presentation and ROSE Interface Programmer's Guide - Page 4
4 - HP rp5430 | ACSE/Presentation and ROSE Interface Programmer's Guide - Page 5
1. APRI Overview Systems Supported 14 ASN.1 Support 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 - HP rp5430 | ACSE/Presentation and ROSE Interface Programmer's Guide - Page 6
Release Request 42 Step 5: Closing the Communication Endpoint 44 4. Programming Guide Summary of Programming Tasks 46 1. Prepare the System 48 2. Manage 54 Control Data 54 User Data 54 Multiple Sends and Receives of Data 54 User Data Encoding/Decoding 55 4. Using Synchronous vs. Asynchronous - HP rp5430 | ACSE/Presentation and ROSE Interface Programmer's Guide - Page 7
Handlers 62 Error Checking Routines 63 Error-handling in Multi-Threaded Applications 63 7. Before Running ACSE/Presentation Applications 64 Multi-threaded ACSE/Presentation Example 64 ACSE/Presentation Example 65 Program using ROSE 66 5. Troubleshooting Your Application Using A/P API Tracing - HP rp5430 | ACSE/Presentation and ROSE Interface Programmer's Guide - Page 8
Contents A. ACSE/Presentation Reference Pages ACSE/Presentation Primitives 82 Glossary 8 - HP rp5430 | 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 rp5430 | ACSE/Presentation and ROSE Interface Programmer's Guide - Page 10
10 - HP rp5430 | ACSE/Presentation and ROSE Interface Programmer's Guide - Page 11
In This Book This manual describes tools and procedures for using the ACSE/Presentation and ROSE application programmatic interface for OSI products. It is divided into three chapters, which provide the following information: Chapter 1 "APRI Overview" introduces the ACSE/Presentation and ROSE - HP rp5430 | ACSE/Presentation and ROSE Interface Programmer's Guide - Page 12
12 - HP rp5430 | 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 rp5430 | 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 rp5430 | ACSE/Presentation and ROSE Interface Programmer's Guide - Page 15
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 it may use compiler flag -D_PTHREADS_DRAFT4 for linking with DCE User Threads - HP rp5430 | 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 rp5430 | 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 rp5430 | 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 rp5430 | ACSE/Presentation and ROSE Interface Programmer's Guide - Page 19
Overview Standards Supported ACSE/Presentation: • The ap_restore(), ap_save() and ap_osic() calls are not supported. • The environment file (env_file) is not supported. The user's application environment is initialized using ap_init_env(), after which individual attributes can be set or changed using - HP rp5430 | ACSE/Presentation and ROSE Interface Programmer's Guide - Page 20
APRI 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 - HP rp5430 | 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 rp5430 | ACSE/Presentation and ROSE Interface Programmer's Guide - Page 22
nd introductions to the A/P environment and the A/P library environment attributes. They also supply detailed descriptions or references made in this manual. The manpages are accessible online with the manpage function of HP-UX. Included here are tables of attributes that provide: • Name and purpose - HP rp5430 | ACSE/Presentation and ROSE Interface Programmer's Guide - Page 23
() • Send and receive service primitives which includes sending/receiving service requests and sending/receiving user data: ap_snd() ap_rcv() • Manage your applications: ap_error() ap_free() ap_poll() ACSE/Presentation Calls The following table lists the supported ACSE/Presentation function calls - HP rp5430 | ACSE/Presentation and ROSE Interface Programmer's Guide - Page 24
A/P environment. Send an A/P primitive over an association. User 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 - HP rp5430 | 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 rp5430 | 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 rp5430 | 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 rp5430 | 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. ROSE user invocation rejection - HP rp5430 | 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 rp5430 | 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 rp5430 | 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 rp5430 | ACSE/Presentation and ROSE Interface Programmer's Guide - Page 32
Using ACSE/Presentation Summary of Calls Process A ap_poll() - HP rp5430 | 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 rp5430 | ACSE/Presentation and ROSE Interface Programmer's Guide - Page 34
. Initialize the A/P Environment To use the A/P services, each process must initialize the ACSE/Presentation environment by calling ap_init_env(). (See Figure 3-2.) The ap_init_env() call allocates memory for the environment attributes, and sets the attributes to default values. (See the AP_ENV - HP rp5430 | 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 rp5430 | 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 rp5430 | 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 rp5430 | 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 rp5430 | 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 rp5430 | ACSE/Presentation and ROSE Interface Programmer's Guide - Page 40
data (primitives) and user data. It is the responsibility of the process to encode and decode data with 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 - HP rp5430 | 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 rp5430 | ACSE/Presentation and ROSE Interface Programmer's Guide - Page 42
then terminating the association. Requesting the Release After Process A has completed sending user data, it 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() to receive the release request - HP rp5430 | 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 rp5430 | 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 rp5430 | 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 rp5430 | ACSE/Presentation and ROSE Interface Programmer's Guide - Page 46
HP OTS/9000 h as been installed, configured, and started successfully. (See the Installing and Administering OSI Transport Services manual used for conveying additional information to the receiving process as part of the A/P primitive. • Handle data in multiple sends and receives. • Determine user - HP rp5430 | ACSE/Presentation and ROSE Interface Programmer's Guide - Page 47
connection retry, and maximum number of connections supported (system, processes, and install a new version of 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 rp5430 | ACSE/Presentation and ROSE Interface Programmer's Guide - Page 48
• Verify HP OTS/9000 h as been installed 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 - HP rp5430 | ACSE/Presentation and ROSE Interface Programmer's Guide - Page 49
of A/P attributes used that require allocating and deallocating memory are: AP_PCDL, AP_PCDRL, and AP_LCL_PADDR. Determine Initiator and Responder Roles When you create your programs, decide which process will be initiating and which one will be accepting associations. By default, both processes - HP rp5430 | 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 rp5430 | ACSE/Presentation and ROSE Interface Programmer's Guide - Page 51
NSAP Bytes 16 16 32 20 Other OSI services implementations (non-HP) may not support the same 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 - HP rp5430 | 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 rp5430 | 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 rp5430 | ACSE/Presentation and ROSE Interface Programmer's Guide - Page 54
user data is too large to send in one buffer, you can set the AP_MORE bit in the flags parameter to help assure complete receipt of the data by the other process. Each additional ap_snd() call must use the same sptype. The last ap_snd() call must reset the AP_MORE bit to indicate the end - HP rp5430 | ACSE/Presentation and ROSE Interface Programmer's Guide - Page 55
Programming Guide 3. Managing Data 1) First user data encoding/ decoding. The application programmer must choose an ASN.1 compiler and run-time library. Refer to the ASN.1 compiler documentation for the product you purchased. The sample programs in the manpages use the Marben ASN.1 compiler product - HP rp5430 | ACSE/Presentation and ROSE Interface Programmer's Guide - Page 56
. Synchronous mode is the default. In asynchronous mode, an ACSE/Presentation call is not blocked (except under kernel resource shortages). The function completes as much of its task as it can, then returns to the user. Synchronous Mode Synchronous mode is useful for processes maintaining a single - HP rp5430 | ACSE/Presentation and ROSE Interface Programmer's Guide - Page 57
in memory shortage situations such as when using large numbers of connections. Changing Modes Once a communication endpoint has been opened using synchronous However, to reset the execution to synchronous mode, the communication endpoint must be closed and reopened without using O_NDELEY in the - HP rp5430 | 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 rp5430 | 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 rp5430 | ACSE/Presentation and ROSE Interface Programmer's Guide - Page 60
Guide shortage problem should be temporary. To avoid waiting indefinitely, set a counter to keep track of the number of retries memory usage, connections use some space within the OTS stack at each layer including the presentation, session, and transport layers. For an application with a large number - HP rp5430 | ACSE/Presentation and ROSE Interface Programmer's Guide - Page 61
a transport connection. If XTI API applications are also in use, note that each XTI connection also uses a transport connection. The number of X.25 VCs supported may be further limited by hardware configuration limits and the number and type of X.25 interface cards. The system has no priority for - HP rp5430 | ACSE/Presentation and ROSE Interface Programmer's Guide - Page 62
• Error checking File Descriptors Communication endpoints for ACSE/Presentation applications are HP-UX file descriptors. 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 - HP rp5430 | ACSE/Presentation and ROSE Interface Programmer's Guide - Page 63
to the last received ap_errno. A/P library errors and system errors can be received in the ap_errno variable. A 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 - HP rp5430 | 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 rp5430 | 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 rp5430 | 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 rp5430 | 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 rp5430 | ACSE/Presentation and ROSE Interface Programmer's Guide - Page 68
attr = AP_ROLE_ALLOWED *val = 1 Thu May 16 10:21:47 1996 - HP rp5430 | ACSE/Presentation and ROSE Interface Programmer's Guide - Page 69
Troubleshooting Your Application Using to be used for each API call. It is actually a set of flags, defined in the file /usr/ include/api_trace.h. Default = 0 exit e = error tracing n = internal tracing AP_TRACE_FILE:. The name of the file that is to receive tracing results. Default = stderr. Chapter - HP rp5430 | 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 rp5430 | ACSE/Presentation and ROSE Interface Programmer's Guide - Page 71
directed to do so by your HP support representative. Enables external and internal error tracing. Recommended that users turn this tracing on at all times. Includes filename and line number information useful for HP factory support. Enable A/P API Tracing Using Global Variables To enable A/P tracing - HP rp5430 | 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, to enable procedure tracing, input parameters tracing, output parameters tracing, and error tracing - HP rp5430 | ACSE/Presentation and ROSE Interface Programmer's Guide - Page 73
Troubleshooting Your Application Using A/P API Tracing 15:53:38 len = 4 val->buf = (4/4) 52 01 00 04 R.... • The amount of data displayed is based on the value set for ap_trace_max_udata. For example, if ap_trace_max_udata is set to 16, only the first 16 - HP rp5430 | 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 rp5430 | 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 : These values indicates the trace level to be used for each API call. It is actually a set of flags, defined in the file //opt/ots/lib/api_trace.h. Default = 0 (trace_off). You may set this value - HP rp5430 | 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 rp5430 | ACSE/Presentation and ROSE Interface Programmer's Guide - Page 77
if directed to do so by your HP support representative. Enables external and internal error tracing. Recommended that users turn this tracing on at all times. Includes filename and line number information useful for HP factory support. Enable ROSE API Tracing To enable ROSE tracing in your program - HP rp5430 | 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 example, to enable procedure tracing, input parameters tracing, output parameters tracing and error tracing, - HP rp5430 | 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 the first 16 bytes are displayed. Tracing in Multi-threaded Applications The format of the trace output in - HP rp5430 | ACSE/Presentation and ROSE Interface Programmer's Guide - Page 80
Troubleshooting Your Application Using ROSE API Tracing 80 Chapter 5 - HP rp5430 | 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 rp5430 | ACSE/Presentation and ROSE Interface Programmer's Guide - Page 82
Table A-1 ACSE/Presentation Primitives AP_ENV Table of Attributes 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) - HP rp5430 | 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 rp5430 | 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 rp5430 | ACSE/Presentation and ROSE Interface Programmer's Guide - Page 85
) Writable states (value of AP_STATE attribute) AP_DPCN Default presentation context name AP_DPCR Default presentation context result ap_dcn_t long None AP_DPCR_NOVAL AP_INIT_SYNC_PT unsigned Initial synchronization long point serial number AP_MIN_SYNCP Any allowed by the C type never - HP rp5430 | ACSE/Presentation and ROSE Interface Programmer's Guide - Page 86
/ 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_MODE_AVAIL Specifies the modes in which the ACSE services may operate unsigned - HP rp5430 | 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 which roles (association-initiator or association-responder) the library user may play unsigned long or'd bits: AP_INITIATOR AP_RESPONDER bit - HP rp5430 | ACSE/Presentation and ROSE Interface Programmer's Guide - Page 88
/ 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 association-initiator - HP rp5430 | ACSE/Presentation and ROSE Interface Programmer's Guide - Page 89
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_SESS_AVAIL Bitmask indicating available versions of the ISO - HP rp5430 | 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 rp5430 | 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 rp5430 | 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 rp5430 | 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 rp5430 | 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 rp5430 | 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 rp5430 | 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 rp5430 | 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 rp5430 | 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 rp5430 | 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 rp5430 | ACSE/Presentation and ROSE Interface Programmer's Guide - Page 100
ACSE/Presentation Reference Pages ACSE/Presentation Primitives 100 Appendix A - HP rp5430 | ACSE/Presentation and ROSE Interface Programmer's Guide - Page 101
the OSI model; the user interface to network services and applications that provides services to directly support users. provided by ACSE, Presentation and remote operation service element (ROSE). ARPA See DARPA. ACSE Association Control Service Element. The service element in the OSI Application - HP rp5430 | ACSE/Presentation and ROSE Interface Programmer's Guide - Page 102
, a defining characteristic of an OSIcompatible product. Connectionless network service. The layer 3 network layer that provides datagrams to transmit data. Connection oriented network service. The layer 3 network layer that provides end-to-end connection (virtual circuit) to transmit data - HP rp5430 | ACSE/Presentation and ROSE Interface Programmer's Guide - Page 103
. ES End system. EWOS European Workshop on Open Systems. FDDI Fiber Distributed Data Interface; a standard for a local area network that uses fiber reached by computer users and vendors on how they will implement a networking standard so that their products can Integrated Services Digital Network - HP rp5430 | 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 Digital Network migration the non-disruptive replacement of proprietary networks with standards-based of hardware and - HP rp5430 | ACSE/Presentation and ROSE Interface Programmer's Guide - Page 105
entity (AE) title which is a unique name identifying an OSI service such as FTAM. Presentation Layer Layer 6 of the OSI model; where data are put into usable form. proprietary networking networking that uses the products and protocols of a single vendor. protocol a formalized set of rules - HP rp5430 | 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 rp5430 | ACSE/Presentation and ROSE Interface Programmer's Guide - Page 107
for manual, 20 B binding endpoints, 35 binding p-address, 51 C changing modes, 57 client,server, 49 close communication endpoint, 44 communication endpoint file limits, 61 communication endpoints, 50, 62 confirm association, 38 confirm release request, 42 connection retry, 60 connections large numbers - HP rp5430 | ACSE/Presentation and ROSE Interface Programmer's Guide - Page 108
, 52 multiple connections, 58 use asynch. mode, 58 multiple process restrictions, 61 multi-thread ACSE/Presentation program example, 64 error handling, 63 tracing, 73, 79 multi-threads, 66 O open file limits changing, 62 OTS/9000 new releases, 47 overview of product, 13 P P_DATA_IND, 40 P_DATA_REQ - HP rp5430 | 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.