![]() |
![]() HP OpenVMS Systemsask the wizard |
![]() |
The Question is: Section 5.4.4.5 of the I/O Users guide deals with Programming [LAT] Application Ports. It describes a return status of TIMEOUT but its not clear how to request a connection with a timeout. What I'm trying to do is write a C program that "opens" a LT devic e which has been set up as an Application mode port in LATCP. I'm interested both in waiting for a period of time, waiting "forever" and "complete it ifs available, fail if it isn't". Also I've experimented a bit with this and I've found some strange results. If I look at the port in LATCP I see its marked as "queued". However if on a single node one process has it open, a 2nd process will get a SYSTEM-F-DEVACTIVE error. I thought that since its marked as a queued port the 2nd process should get suspended until it cancels the request or the port becomes available. The other strange thing I've seen is that if I have the printer open by a process on one node and I try to open it from a process on a different node (node B) the process on node B will hang, waiting for it. The strange part is that if a 2nd process on no de B comes along and tries to open the device (while the 1st process on node B is still hanging) then the 2nd process gets a SYSTEM-F-DEVACTIVE as described above but then the 1st process on node B gets SYSTEM-F-ABORT, iosb+2 = 12 (Entry is not in queue). If it matters the DECServer the printer is attached to is a DS700 and queuing is not enabled on the port (on the DECserver side). The Answer is : You can quite easily establish your own timeout using standard OpenVMS system services. LAT is an asymmetric protocol. The queued setting applies to the remote (receiving) end of the connection -- in the cited case, the port the printer is connected to should be marked as queued. (Remember that OpenVMS is generally a client of the terminal server, unless you are using reverse LAT and connecting out from OpenVMS to the terminal server. Also please see the documentation section detailing on a forward port.) Without an example of the particular applications, a more specific answer is difficult -- please contact the Compaq Customer Support Center for assistance and examples.
|