Easysoft ODBC-SQL Server Driver

Why do I get error "errno=2, there may be no source of entropy on this system"?

Article:
01002
Last Reviewed:
26th January 2024
Revision:
1

The SSL-enabled SQL Server ODBC driver needs a source of unpredictable data to work correctly. Many open source operating systems provide a "randomness device" (/dev/urandom or /dev/random) that serves this purpose, and the SQL Server ODBC driver will use these devices if available.

If the driver is unable to find a randomness device, it will return the error:

"SSL connection failed in syscall (errno=2, there may be no source of entropy on this system, consult OpenSSL documentation)"

On machines where /dev/urandom or /dev/random are not present, the EGD entropy gathering daemon can be used as a source of random data. It provides a socket interface through which entropy (randomness) can be gathered. In your ODBC data source, use the Entropy attribute to specify the path to the EGD socket. For example, if you create the socket in /etc when you start the EGD daemon (egd.pl /etc/entropy), use:

[SQLSERVER_SAMPLE_SSL]
Driver		         = Easysoft ODBC-SQL Server SSL
Server                   = my_machine\my_instance
User                     = my_domain\my_user
Password                 = my_password
Encrypt		         = Yes
TrustServerCertificate	 = No
Entropy                  = /etc/entropy

See Also

Applies To

Knowledge Base Feedback

* Did this content help you?
* Please select one option based on your first choice:

(* Required Fields)