Easysoft ODBC-ODBC Bridge Web Administrator

   Version &oob_version;

Statistics
Configuration
Data Sources
Security
Information

Data Access by Easysoft

&oob_table;

Help

Port

The port where the OOB server is listening for incoming OOB client connections. If the OOB server is running on A Windows machine then it will need restarting for the changes to take effect.

IPAddress

The IP address the OOB Server listens on. This is only relevant if you have multiple NICs and only want the OOB server to listen on one. The default is for the server to bind to port 8888 on INADDR_ANY which means it is listening on all local interfaces.

HTTPPort

This option specifies the port on which the OOB Server will listen for HTTP requests. The default is port 8890 but it may be any port not in use on your machine. If the Flags configurable option bitmask has the second bit set (value 0x2) then the OOB Server starts listening on the specified port for HTTP requests in addition to acting in its normal role serving the OOB Client. You may use the URL http://machine_name:HTTPPort where machine_name is the name (or IP address) of the machine running the OOB Server and HTTPPort is the port number to communicate with the OOB Server from your browser. It can show statistics, DSNs and the current values of configurable parameters. If the OOB server is running on A Windows machine then it will need restarting for the changes to take effect.

Timeout

This defines the inactivity timeout in seconds (the default is 7200 - 2 hours). The OOB server starts a new thread (or process) for each client that connects. If there has been no communication in timeout seconds the thread/process exits. This ensures clients which fail to close down properly do not cause increasing resource usage on the server. To disable timeouts set this field to 0. Please disable this field if using persistent connections from PHP/mod_perl etc.

RetryCount

This is the number of additional attempts (after the first attempt fails) the server will make to get a resource. The resources influenced by this are thread/process creation and license slots for new connections.

RetryPause

This is the time in seconds between each retry attempt (see above).

HTTPAdmin

This is the username of the person allowed to make changes to the OOB server via the HTTP interface. This must be a valid username in the operating system the server is running on. If set to the string "disabled" (omit the quotes) then HTTP authentication is not required (this does not mean the OOB Server stops authenticating incoming ODBC connections).

HTTPNetWorkAccess

The network or IP address for clients allowed to use the HTTP interface e.g. 194.131.236.4 only allows one machine but if the netmask was 255.255.255.0 then setting 194.131.236 would allow anyone on that network.

The default is all browser clients have access to the HTTP interface although they may be required to enter a username/password if HTTPAdmin is set to anything other than "disabled".

MaxBookMarkSize

This attribute specifies the size of the largest bookmark the OOB can handle (it defaults to 32). ODBC 2.0 uses fixed length bookmarks of 4 bytes. In ODBC 3.0 bookmarks are all variable in size. If you find an ODBC driver that needs more than 32 bytes for a bookmark please let us know, otherwise the default should be fine.

Path

This is the installation path of the ODBC-ODBC Bridge. You cannot change this via your browser.

Logging

This is a bitmask telling the OOB Server what sorts of event to log in the log file. This should only be used as directed by Easysoft support and will slow the OOB down considerably if set. You may specify the number as decimal or hexadecimal (e.g. 2047 or 0x7ff).

LogDir

This option specifies the directory where log and audit files are created (see Logging and AuditODBCAccess). If defaults to c:\temp in Windows and /tmp in UNIX. In Windows, this is also the directory where the OOB Server might write an esoob.exception file if an unhandled exception is caught.

MaxThreadCount

MaxThreadCount is the maximum number of threads or processes the OOB Server will allow at any time. There will be one thread/process for every ODBC connection. If MaxThreadCount is set to 0, there is no limit. The default is 0. You can use this parameter to prevent too many simultaneous connections swamping your server.

MaxClientConnect

MaxClientConnect is the maximum number of concurrent connections from a single client (where a client is defined as the IP address of the machine where the client is running). If MaxClientConnect is set to 0, there is no limit. The default is 0. You can use this parameter to prevent people from swamping your machine with ODBC connections.

NetRCVLOWAT

NetRCVLOWAT is the size of the receive low-water mark. Possible values are:

  • 0, do not set it at all, leave at system default.
  • -1, set to internal OOB default (this is the default)
  • n (n > 0), set to this value

NetRCVBUF

NetRCVBUF is the size of the receive queue buffer for the socket. Possible values are:

  • 0, do not set it at all, leave at system default.
  • -1, set to internal OOB default (the default, which is 16K)
  • n (n > 0), set to this value

NetSNDBUF

NetSNDBUF is the size of the send queue buffer. Possible values are:

  • 0, do not set it at all, leave at system default.
  • -1, set to internal OOB default (the default, which is 16K)
  • n (n > 0), set to this value

NetConnectRetryCount (Deprecated)

This setting is deprecated - no longer used. See ConnectAttempts OOB Client connection attribute instead.

NetConnectRetryCount is the number of times the OOB client will attempt a connection to an OOB Server. Each time a connection attempt fails the OOB client waits (0.1 * connect attempt) seconds before trying again.

Possible values are:

  • -1, set to internal OOB default (the default, which is 5)
  • n (n >= 0), set to this value

If you are using OOB 2 (or Enterprise OOB) and multiple server definitions in a single DSN you may find lowering this setting from the default of 5 an advantage as it reduces the time from the client failing to connect to the first server and starting a connection attempt to the second and subsequent servers.

ListenBacklog

ListenBacklog defines the maximum length the queue of pending connections may grow to. It is a value passed to the BSD sockets call listen(). If a connection request arrives with the queue full the client will probably get an error of ECONNREFUSED and the OOB Server will be totally unaware of the connection attempt. If this happens the OOB client will use NetConnectRetryCount to make multiple connection attempts.

Possible values are:

  • 1 <= n <= 100 (the default is 20)

You should not usually need to change this value as the default is sufficient for all but the very busiest of OOB Servers and having to set a high value is an indication that the server machine is underpowered. In addition, on Windows operating systems, the backlog queue is in non-pageable system memory. For some versions of the Windows operating system (Win 9x and NT workstation) changing this value has no effect since it is hard-wired at 5.

Please also see the NetConnectRetryCount for use with the OOB client and the OOB FAQ.

Affinity

If the OOB Server is running on a multiple CPU Windows Server machine you will see a check box for each CPU (labelled CPU_0 to CPU_N). The OOB Server holds the Affinity value as a mask of processors in your machine which the OOB Server can run on. Initially, the affinity value is 0 which means the OOB Server will make no changes at all and the HTTP server will show all CPUs as available. However, if you make any changes to the CPU check boxes the OOB Server will call SetProcessAffinityMask which will define which processors the threads in the OOB Server are allowed to run on. In this way you can bind the OOB Server to particular CPUs in your machine.

Flags

This is a bitmask of operational flags. The bitmasks are split into check boxes, one for each bit in Flags.

  1. Authentication_Disabled (0x1) Disables authentication in the OOB ODBC Server. Setting this parameter should be considered as a security risk. However, on some high hit servers in a controlled environment where you do not need to authenticate the connections this can save a considerable amount of time during connections. e.g. in NT 0.25 to 0.75 seconds of the connection time can be spent in authentication. The default is clear, i.e. not set).
  2. HTTP_Server (0x2) Start listening for HTTP connections when the server starts (default is set, 0x2)
  3. MultiProcess (0x4) OOB Server starts a new process for each incoming connection instead of a new thread (default is clear, i.e. not set and therefore the Server starts a new thread per connection). You might set this if you had an ODBC driver which you know is not thread-safe or if your ODBC driver leaks memory.
    Currently on non-Windows platforms the server always starts new processes as it is not multi-threaded and so this flag cannot be changed.
    This flag is ignored in Windows 9x.
  4. MetaDataBlockFetch_Disabled(Deprecated) (0x8)
    This flag is deprecated - no longer used. See MetadataBlockFetch OOB Client connection attribute instead.
    If set prevents the OOB client from automatically starting block-fetch-mode for read-only metadata result-sets. (default is clear, i.e. automatic metadata block-fetch-mode enabled).
  5. HideSensitive (0x10) If set causes the OOB HTTP Server to hide sensitive parameters on the main configuration information page. Currently the parameters removed from the main configuration information page when HideSensitive is turned on are HTTPAdmin and Authentication_Disabled. All parameters are always shown in full on the change configurable parameters page as this page is password protected. The default is on.
  6. ReverseLookup (0x20) If set causes the OOB Server to call gethostbyaddr() on the connecting client's IP address to obtain the client's machine name. On machines where DNS is not set up properly this can cause problems and in any case adds time to the connection. ReverseLookup currently only affects the statistics, number of different clients page where "unknown" will be displayed instead of the machine name for connecting client's machine names if ReverseLookup is off. The default is off.
  7. AuditODBCAccess (0x40) If set causes the OOB Server to audit all ODBC connections to a log file which may be viewed through the HTTP interface. The audit file is written to the LogDir directory as esoob_access.log. By default this flag is clear, i.e. not set.
  8. FreeStmtsOnDisconnect (0x80) If this flag is set then the OOB Server frees all existing statements in the driver before calling SQLDisconnect. By default this flag is off as the ODBC specification says that applications do not have to do this and the driver should quietly do it for them. However, a customer has seen Navision's ODBC driver crash when SQLDisconnect is called from Perl when there are existing statements so setting this flag works around this problem in Navision's driver.
  9. ShowProcessTime (0x100) If this flag is set then the OOB Server retrieves the user and kernel CPU times for the main OOB Server process and displays them on the statistics web page. The values are only updated once every 5 seconds. The default is on.
  10. AutoUpdateConfiguration (Deprecated) (0x200)
    This flag is deprecated - no longer used. The OOB Server sees and actions all changes made through the web interface.
    If this flag is set then the OOB Server automatically updates its copy of the configuration settings from the registry. This affects the access control lists, the flags listed here and MaxClientConnect/MaxThreadCount. The values are only updated when 5 seconds elapses with no incoming connections in that time. Disabling this feature reduces accesses to the registry but means the server has to be restarted to pick up configuration changes. The default is off.
  11. HTTPAuthAll (0x400) If this flag is set then all pages in the OOB server HTTP administration interface are protected by HTTP authentication. i.e. you will be prompted for the HTTPAdmin username and password before any pages are returned to you (the realm is "ESOOBServer").
    NOTE: checking HTTPAuthAll has no effect unless you provide an HTTPAdmin username i.e. HTTPAdmin is not set to the text disabled.
  12. ConnectionPooling (0x800) If this flag is set then the OOB Server automatically sets the SQL_ATTR_CONNECTION_POOLING attribute to SQL_CP_ONE_PER_DRIVER to enable connection pooling in the driver manager for the ODBC driver. Note that ConnectionPooling is meaningless when the OOB Server is running in MultiProcess mode (see above).
  13. LogFailingSQL (0x1000) If this flag is set then when any call to SQLPrepare/SQLExecDirect fails the SQL is logged to the file oob_sql.log in the LogDir. As some DBMS only parse the SQL at SQLPrepare time sometimes you do not find out the SQL is incorrect until SQLExecute is called. To catch these SQL errors too the OOB Server saves the first 1K of any SQL passing SQLPrepare successfully so it may be logged if SQLExecute fails. For this reason turning this flag on will have some impact on the speed of the server and memory use so it should be used sparingly.
    This is extremely useful when developing applications or web services and can be used to monitor errors.
  14. AllowDBBrowse (0x2000) If this flag is set then the data sources listed on the Data Sources web page may be browsed to get lists of tables, columns in table and even rows of data from tables. The default is off.

  15. AutoDenyNonOOBClients (0x4000) If this flag is set then any clients connecting to the OOB Server port and sending initial data down the socket which is not the EasyRPC protocol will be added to the internal denied ACL. Clients automatically added in this way are not visible on the security page and are removed from the ACL when the OOB Server is restarted or when the ACLs are changed on the security page.
  16. AllowDSNBrowse (0x8000) If AllowDSNBrowse is not enabled then OOB Clients cannot obtain a list of SYSTEM DSNs from the OOB Server. This affects the ODBC API SQLBrowseConnect() and the population of the TargetDSN dropdown in the OOB Client Setup dialogue. The default is on.