DEComni_MMS_for_Digital_UNIX________________________ Release Notes February 1996 This document contains the release notes for DEComni MMS for Digital UNIX Version 3.0 software and documentation. Please read this document before using the product and consult it before reporting problems to Digital. Revision/Update Information: This is a new document for the current version Software Version: DEComni MMS Version 3.0 Digital Equipment Corporation Maynard, Massachusetts ________________________________________________________________ February 1996 © Digital Equipment Corporation 1996. All Rights Reserved. Possession, use, or copying of the software described in this documentation is authorized only pursuant to a valid written license from Digital or an authorized sublicensor. Digital Equipment Corporation makes no representations that the use of its products in the manner described in this publication will not infringe on existing or future patent rights, nor do the descriptions contained in this publication imply the granting of licenses to make, use, or sell equipment or software in accordance with the description. The postpaid Reader's Comments forms at the end of this document request your critical evaluation to assist in preparing future documentation. The following are trademarks of Digital Equipment Corporation: Alpha AXP, BASEstar, DEC, DECmessageQ, DECnet, DECnet-DOS, DECosap, DEComni, Digital, Digital UNIX, FMS, LN03, MicroVAX, NAS, OpenVMS, OpenVMS Alpha, PATHWORKS, PDAS, Rdb/VMS, ReGIS, ThinWire, TK, ULTRIX, VAX, VAXcluster, VAX COBOL, VAX FORTRAN, VAX Pascal, VAX RMS, VMS/ULTRIX Connection, VT, and the DIGITAL logo. The following are third-party trademarks: Excel is a registered trademark of Microsoft Corporation. IBM is a registered trademark of IBM Corp. INGRES is a trademark of Ingres Corp. LOTUS 1-2-3 is a registered trademark of Lotus Development Corp. MS, Microsoft, and MS-DOS are registered trademarks of Microsoft Corporation. Network File System and NFS are trademarks of Sun Microsystems, Inc. ORACLE is a trademark of Oracle Corp. PostScript is a registered trademark of Adobe Systems Incorporated. SINEC AP, SINEC H1, SICOMP, Simatic, SINEC, SINUMERIK and SIROTEC are registered trademarks of Siemens, AG. UNIX is a registered trademark licensed exclusively by X /Open Company Ltd. Windows and Windows NT are trademarks of Microsoft Corporation. Wonderware InTouch is a registered trademark of Wonderware Corporation. X/Open is a registered trademark of the X/Open Company Limited This document was prepared using VAX DOCUMENT, Version 2.1. _________________________________________________________________ Contents 1 Updated Installation Information 1.1 DEComni API...................................... 1-1 2 New Features 2.1 Dynamic load of MMS Device Access System......... 2-1 2.2 Named Variable Lists and Events.................. 2-1 2.3 Compiling and Linking Your Application........... 2-1 2.4 Looking Up a Value............................... 2-2 2.5 Printing a Value................................. 2-2 3 Restrictions 3.1 Named Variable Lists and Alternate Access........ 3-1 3.2 OSI Addressing................................... 3-1 3.3 Interoperability................................. 3-1 3.4 Object Names..................................... 3-2 3.5 Segmented Services............................... 3-2 3.6 D_FLOAT.......................................... 3-2 3.7 Inconsistencies in the Monitor Type Attribute of a PI............................................. 3-2 3.8 Alternate Access with a Structure................ 3-3 4 Known Problems 4.1 ODS Search by AEQualifier Only................... 4-1 4.2 Cancel Request................................... 4-1 4.3 Unsolicited Error Indications.................... 4-1 4.4 Connection Establishment......................... 4-1 4.5 Reusing Internally-Created VMDs.................. 4-2 4.6 Negotiated_vmd_struct and incoming_vmd_struct Data............................................. 4-2 iii 4.7 Nesting Level and Parameter CBB Not Checked...... 4-2 4.8 Calls to omni_connect............................ 4-2 4.9 RFC1006 Support.................................. 4-3 4.10 Association Scope Variable Support............... 4-3 iv 1 _________________________________________________________________ Updated Installation Information 1.1 DEComni API DEComni API and DEComni MMS are separate products. You must install DEComni API V3.0 before you can install DEComni MMS. Updated Installation Information 1-1 2 _________________________________________________________________ New Features This section describes the new features provided by DEComni MMS Version 3.0. 2.1 Dynamic load of MMS Device Access System DEComni API Version 3.0 allows DEComni MMS to be integrated dynamically. DEComni API provides a new registration utility for Version 3.0 integrators: omni_registry. This utility allows DEComni MMS to register itself under DEComni API by specifying its shareable image. Using the information found in the registry database, DEComni API Version 3.0 can locate and load the MMS shareable image dynamically during its initialization phase. 2.2 Named Variable Lists and Events DEComni MMS supports two additional objects: Named Variable Lists and Event Enrollments. For further information, refer to the DEComni API/MMS User Guide. 2.3 Compiling and Linking Your Application DEComni API Version 3.0 will be the last DEComni API version to support omni_server. With DEComni API Version 3.0, a new facility is provided for linking applications: the "collapsed" approach. In the "collapsed" approach, a DEComni API application is linked to the shareable "libomniapi.so" so that the omni_server process is no longer required. To build your executable program, use the commands listed below. Using the omni_server: cc -o myprog myprog.c -lomniclt -lc_r -lmach -lbsd New Features 2-1 New Features 2.3 Compiling and Linking Your Application Using the "collapsed" shareable (without omni_server): cc -o myprog myprog.c -lomniapi -lods -lpthreads -lc_r -lmach -lbsd There are some rules that you must follow in order to migrate a V2.x application to a Version 3.0 application in case you want to link the Version 3.0 "collapsed" shareable. Please refer to DEComni API/MMS User Guide for information about how to write an application that can link with the "collapsed" shareable. 2.4 Looking Up a Value The new API call omni_lookup_value allows MMS users to look at the value associated to a write indication before providing positive acknowledgement (omni_get_value) or negative acknowledgement (omni_reject) of the value. 2.5 Printing a Value The new API call omni_print_value allows MMS users to print the value of a buffer associated to a DEComni API variable. 2-2 New Features 3 _________________________________________________________________ Restrictions 3.1 Named Variable Lists and Alternate Access At present, no support is available for alternate access in conjunction with Named Variable Lists. No provision is made for connecting an alternate access specification to a variable that is part of a Named Variable List, as allowed by the MMS protocol. 3.2 OSI Addressing Due to a change in the underlying network support, all ODS records for VMDs used in calls to omni_listen must have a unique TSAP. In the example that follows, the address of VMD_A is: PSAP1.SSAP1.TSAP1 The address of VMD_B is: PSAP1.SSAP2.TSAP1 If you use both VMD_A and VMD_B as the VMD in omni_listen, an error occurs on the second call to omni_listen, because both VMD_A and VMD_B have the same TSAP. 3.3 Interoperability When establishing an OSI transport connection, the Digital side will request the following transport parameters: Alternate Transport Class Implementation ID Preferred TPDU size If a third party transport provider has difficulty negotiating these parameters, you may experience interoperabilty problems. Restrictions 3-1 Restrictions 3.4 Object Names 3.4 Object Names DEComni MMS does not verify whether an object, i.e. a named variable, contains valid MMS ID characters. The user must take care to define objects within the character set from a-z, A-Z, 0-9, the underscore (_), and the dollar sign ($). The name must also start with an alphabetic character. 3.5 Segmented Services During segmented services, such as upload and download, DEComni MMS does not free the allocated data until the entire operation is complete. In addition, it does not perform other operations, such as omni_put_value or omni_ get_value, on the same connection. 3.6 D_FLOAT DEComni MMS Version 3.0 does not support D_FLOAT variables. 3.7 Inconsistencies in the Monitor Type Attribute of a PI It appears that the omni_c_attr_monitor attribute is used inconsistently. In defining a PI, a user can specify one of three values to the omni_c_attr_monitor attribute: omni_ c_pimnt_not_present, omni_c_pimnt_permanent, and omni_c_ pimnt_current. Its type is omni_l_pi_monitor. However, if a user requests a omni_get_remote_attributes on a PI, then tries to retrieve the omni_c_attr_monitor attribute, a simple boolean value is returned: TRUE or FALSE. This is due to the level of detail returned by MMS. When defining a PI, you can specify whether you want to activate or disactivate monitoring. If you choose to activate the monitoring facility, you can also request MMS to activate it permanently or for the duration of the current connection only. However, after an omni_get_ remote_attributes operation on a PI, the only information returned concerns whether monitoring is on or off. It is not possible to provide the same level of detail associated with the omni_c_pi_monitor type. For this reason, MMS uses the omni_c_boolean type. 3-2 Restrictions Restrictions 3.8 Alternate Access with a Structure 3.8 Alternate Access with a Structure If the alternate access specifies a single component of a structure, DEComni MMS incorrectly formats a request with listOfAccessResult that refers to the structure type. Restrictions 3-3 4 _________________________________________________________________ Known Problems 4.1 ODS Search by AEQualifier Only At present, upon receipt of an Initiate indication in which a peer has provided an AEQualifier but not an APTitle, DEComni MMS searches the ODS database using the AEQualifier only. Under these circumstances, DEComni MMS should search the ODS database by presentation address, since the AEQualifier is not meaningful without an APTitle. 4.2 Cancel Request DEComni MMS does not support Cancel Request. 4.3 Unsolicited Error Indications If a DEComni MMS application receives a reject PDU, the DEComni MMS core attempts to match the reject's invoke id with an outstanding request. If it cannot find a match, or an invoke id was not sent with the reject, the user receives an indication of type 0. This is not very informative and will be enhanced in a future release. 4.4 Connection Establishment 1. There is a defect in the processing of Associate Indication/Initiate Request with proposed syntax. When the proposed syntax of an Associate Indication does not contain MMS/BER as a valid concrete syntax pair, DEComni MMS may not reject the request. 2. The Presentation Context Index (PCI) is not validated for inbound requests and confirmations. If the peer decides to use a PCI value other than the one proposed /accepted, DEComni MMS cannot detect the error. Known Problems 4-1 Known Problems 4.4 Connection Establishment 3. DEComni MMS currently accepts all proposed syntax pairs on an Initiate Request. In normal circumstances, DEComni MMS should only accept MMS/BER. 4.5 Reusing Internally-Created VMDs If the translate flag of an omni_listen call is NON-ZERO and no matching VMD is available, DEComni MMS creates a VMD internally upon receipt of an Initiate indication. This VMD remains in memory until the application exits. Once the association terminates or aborted, the VMD becomes available for reuse when subsequent Initiate indications from the same peer are received. This may potentially cause some confusion if the application routinely adds object definitions to this VMD after a connection is established, given that these added object definitions will persist after association conclusion. 4.6 Negotiated_vmd_struct and incoming_vmd_struct Data The output parameters "negotiated_vmd_struct" of omni_ connect and "incoming_vmd_struct" of omni_listen contain the fields omni_t_vmd_syntax and omni_t_vmd_ap_title. At present, DEComni MMS does not fill in either of these fields; omni_t_vmd_syntax is an obsolete field and omni_t_ vmd_ap_title is not currently used. 4.7 Nesting Level and Parameter CBB Not Checked At present, DEComni MMS does not check the nesting level or parameter CBB negotiation result from connection establishment before sending service requests. It does not check nesting level before sending a structure or array, nor does it check Param CBB for STR1 or STR2 support. 4.8 Calls to omni_connect If the corresponding ODS entry for a VMD is not present during an omni_connect call, the following error is returned: %OMNI-E-BADHANDLE, The Value of the Handle Parameter is Invalid 4-2 Known Problems Known Problems 4.8 Calls to omni_connect This is incorrect. The error returned should be: %OMNI-E-BADHANDLE, Directory Service access failure 4.9 RFC1006 Support RFC1006 (MMS over TCP/IP) is not supported. 4.10 Association Scope Variable Support Association scope variables are not supported. Known Problems 4-3