Release 10.1A: OpenEdge Development:
Progress 4GL Reference

> ## CONNECT( ) method

> ##
> (Socket object)

> Connects a socket to the specified TCP/IP port on the specified host.

> Return type: LOGICAL

> Applies to: Socket object handle

> Syntax
>     CONNECT ( [ connection-parms ] )

> ``connection-parms``

> A character string expression that contains a space-separated list of one or more socket connection parameters.

> Table 58 describes each socket connection parameter, which can be included in this string.

> Table 58: Socket connection parameters
> Parameter | Description
> --- | ---
> -H `socket-address` | Optional. The host name or IP address to which the connection is to be established.
> -S `socket-port` | The port number for the socket connection. You can specify either an explicit port number or a TCP service name. If you use a TCP service name, the method uses the port number associated with that name in the TCP/IP services file.
>     -ssl
> | If specified, the connection to the server socket uses Secure Sockets Layer (SSL) tunneling. (Used in conjunction with the `-H` and `-S` parameters). Note: Be sure you need SSL before using this option. SSL incurs more or less heavy performance penalties, depending on resources and load.
>     -nosessionreuse
> | If specified, the connection does not reuse the SSL session ID when reconnecting to the same SSL-enabled server socket.
>     -nohostverify
> | If specified, turns off host verification for an SSL-enabled connection to a server socket. Without this parameter specified, the client compares the host name specified in the connection with the Common Name specified in the server certificate, and raises an error if they do not match. With this parameter specified, the client never raises the error. For more information, see OpenEdge Getting Started: Core Business Services .
> -pf `filename` | Optional. A text file containing any of the socket connection parameters described in this table. If this file contains any other OpenEdge startup parameters, this method ignores them.

> Note: Connections to an SSL-enabled server socket require the management of public keys on the client (SSL client) and private keys on the server (SSL server). For 4GL sockets, the SSL client is the 4GL session initiating the SSL connection on a socket object and the SSL server is the 4GL session enabling SSL connections on a server socket object. For information on using SSL to secure a 4GL socket connection, see the sections on sockets in OpenEdge Development: Programming Interfaces . For more information on SSL and managing private key and digital certificate stores for OpenEdge SSL clients and servers, see OpenEdge Getting Started: Core Business Services .

> #### Notes

> - If an error occurs while executing the CONNECT( ) method, the method returns FALSE. Otherwise, it returns TRUE.

> - When a 4GL client (that is not SSL-enabled) calls the CONNECT( ) method and immediately reads data from the socket using the READ( ) method, and a 4GL server (that is SSL-enabled) calls the ENABLE-CONNECTIONS( ) method and immediately writes data to the socket using the WRITE( ) method, a deadlock condition can occur. That is, the client is waiting for the server to send data, and the server (regardless of the Write operation) is waiting for the client connection to send data that starts the SSL connection.

Copyright © 2005 Progress Software Corporation www.progress.com Voice: (781) 280-4000 Fax: (781) 280-4095