freetds AT lists.ibiblio.org
Subject: FreeTDS Development Group
List archive
Re: [freetds] Getting "Unexpected EOF from the server" when trying to connect to MS SQL Server 2014
- From: "Pulver, Alex" <alex.pulver AT intel.com>
- To: FreeTDS Development Group <freetds AT lists.ibiblio.org>
- Subject: Re: [freetds] Getting "Unexpected EOF from the server" when trying to connect to MS SQL Server 2014
- Date: Mon, 25 Apr 2016 14:50:25 +0000
That's also good to know - thanks!
Regards,
Alex
Software Engineering Consultant
Design & Technology Solutions (DTS) | Corporate Design Solutions (CDS)
Hardware Design Kit (HDK): goto/hdk | Support: goto/dtsservices
-----Original Message-----
From: FreeTDS [mailto:freetds-bounces AT lists.ibiblio.org] On Behalf Of
Frediano Ziglio
Sent: Monday, April 25, 2016 17:45
To: FreeTDS Development Group <freetds AT lists.ibiblio.org>
Subject: Re: [freetds] Getting "Unexpected EOF from the server" when trying
to connect to MS SQL Server 2014
2016-04-25 15:38 GMT+01:00 Pulver, Alex <alex.pulver AT intel.com>:
> Thanks Frediano! Your input helped to resolve this :)
>
> The problem was combination of two things:
> * Our current FreeTDS installation was compiled with OpenSSL 0.9.8, and
> probably the server was using a newer version for handshake.
> * I was trying to use TDSVER=7.0 in all recent attempts, and didn't try to
> bump it again.
>
> To summarize, the following worked:
> * Compile FreeTDS with OpenSSL 1.0.1: ./configure
> --with-openssl=/.../openssl/1.0.1/bin/openssl
> * Try connecting with TDSVER=7.2 (8.0 also works of course): env TDSVER=8.0
> /.../tsql -H <host> -p <port> -U <username> -P <password> -D <database>
>
> Regards,
> Alex
>
Great!
Please don't use 8.0 as a version. Microsoft renamed 8.0 to 7.1 quite
a while ago. In FreeTDS 1.0 we removed support for this old
(compatible) "8.0" version. So 7.2/7.3/7.4 are newer than the "8.0"
(which is the MS SQL Server 2000 protocol).
Frediano
>
> -----Original Message-----
> From: FreeTDS [mailto:freetds-bounces AT lists.ibiblio.org] On Behalf Of
> Frediano Ziglio
> Sent: Monday, April 25, 2016 17:14
> To: FreeTDS Development Group <freetds AT lists.ibiblio.org>
> Subject: Re: [freetds] Getting "Unexpected EOF from the server" when trying
> to connect to MS SQL Server 2014
>
> 2016-04-25 13:26 GMT+01:00 Pulver, Alex <alex.pulver AT intel.com>:
>> Hi all,
>>
>> I am trying to connect to MS SQL 2014 Server from SLES11 host, using
>> FreeTDS 0.95.51 version and its tsql utility. The server uses "Standard
>> Mode" (SQL Server Authentication) and I am able to connect from Windows
>> using SQL Server 2014 Management Studio.
>> Before sending this email I've read through FreeTDS troubleshooting, FAQ,
>> domains page, config page, archives and various SO questions - tried the
>> recommended configurations but with no luck (details below).
>>
>> The command being run is:
>> env TDSVER=7.0 TDSDUMP=/tmp/tdsdump.log
>> TDSDUMPCONFIG=/tmp/tdsdumpconfig.log ./src/apps/tsql -H <host> -p <port>
>> -U <username> -P <password> -D <database>
>>
>
> I would try with at least 7.2 version.
>
>> The output:
>> locale is "C"
>> locale charset is "ANSI_X3.4-1968"
>> using default charset "ISO-8859-1"
>> Setting <database> as default database in login packet
>> Error 20017 (severity 9):
>> Unexpected EOF from the server
>> ...
>>
>> Tailing TDSDUMP along with the execution shows that error is happening
>> after the login packet is sent and FreeTDS tries to process the login
>> tokens:
>> login.c:852:quietly sending TDS 7+ login packet
>> token.c:327:tds_process_login_tokens()
>> <<
>> Error 20017 (severity 9):
>> Unexpected EOF from the server
>>>>
>> query.c:3772:tds_disconnect()
>>
>> Looking on strace seems to confirm that server disconnects after login
>> packet is received (poll() returns positive after sendto(), but recvfrom()
>> returns 0):
>> write(5, "login.c:852:quietly sending TDS "..., 48) = 48
>> ...
>> poll([{fd=6, events=POLLOUT}, {fd=4, events=POLLIN}], 2, -1) = 1 ([{fd=6,
>> revents=POLLOUT}])
>> sendto(6,
>> "\20\1\0012\0\0\0\0*\1\0\0\0\0\0p\0\20\0\0\6\203\362\370U\354\0\0\0\0\0\0"...,
>> 306, MSG_NOSIGNAL, NULL, 0) = 306
>> write(5, "token.c:327:tds_process_login_to"..., 39) = 39
>
> This means that server rejected the login. Like user/password wrong.
> Are you using Kerberos/SSPI or SQL logins?
>
>> poll([{fd=6, events=POLLIN}, {fd=4, events=POLLIN}], 2, -1) = 1 ([{fd=6,
>> revents=POLLIN}])
>> recvfrom(6, "", 8, MSG_NOSIGNAL, NULL, NULL) = 0
>> write(5, "query.c:3772:tds_disconnect() \n", 31) = 31
>>
>> Things I tried listed in no particular order (assuming the issue is with
>> authentication and not network):
>> * Use UTF-8 encoding
>
> This would change if you have extra ASCII in your username/password.
>
>> * Disable SSPI: ./configure --disable-sspi (so that trusted authentication
>> will not be triggered)
>
> SSPI is supported only in Windows so it's not affecting your build.
>
>> * Compile with latest OpenSSL version we have installed: ./configure
>> --with-openssl=/.../openssl/1.0.1/bin/openssl
>> * Explicitly disable OpenSSL: ./configure --without-openssl
>> * Modifying the code in ./src/tds/mem.c to disable check_ssl_hostname by
>> setting it to 0 in both places it appears (assuming it triggers checking
>> server's SSL certificate and fails to authenticate). Verified using
>> debugger that *((tds)->login) object has check_ssl_hostname set to 0
>> * Modifying the code in ./src/tds/tls.c to change location of certificates
>> pointed by ca_directory[] to a directory I know we have updated internal
>> certificates
>>
>
> No, the check is done by FreeTDS, in this case the server is disconnecting.
>
>> Things I still need to check with MS SQL Server admins:
>> * Try to see if they can give me access to server-side log for my
>> connection attempts
>> * Check if server requires two-way authentication for SQL Server
>> Authentication - doesn't seem like it, but I will check
>>
>> If someone has any other ideas as to why the connection drops, or other
>> things I can do to investigate further, I would really appreciate that!
>>
>
> You could try increasing the log level (see "debug flags" in
> http://www.freetds.org/userguide/freetdsconf.htm).
> Also I would try the "use ntlmv2" flag (same page above).
>
>> Thanks!
>> Alex
>
> Frediano
> _______________________________________________
> FreeTDS mailing list
> FreeTDS AT lists.ibiblio.org
> http://lists.ibiblio.org/mailman/listinfo/freetds
> ---------------------------------------------------------------------
> Intel Israel (74) Limited
>
> This e-mail and any attachments may contain confidential material for
> the sole use of the intended recipient(s). Any review or distribution
> by others is strictly prohibited. If you are not the intended
> recipient, please contact the sender and delete all copies.
>
> _______________________________________________
> FreeTDS mailing list
> FreeTDS AT lists.ibiblio.org
> http://lists.ibiblio.org/mailman/listinfo/freetds
_______________________________________________
FreeTDS mailing list
FreeTDS AT lists.ibiblio.org
http://lists.ibiblio.org/mailman/listinfo/freetds
---------------------------------------------------------------------
Intel Israel (74) Limited
This e-mail and any attachments may contain confidential material for
the sole use of the intended recipient(s). Any review or distribution
by others is strictly prohibited. If you are not the intended
recipient, please contact the sender and delete all copies.
-
[freetds] Getting "Unexpected EOF from the server" when trying to connect to MS SQL Server 2014,
Pulver, Alex, 04/25/2016
-
Re: [freetds] Getting "Unexpected EOF from the server" when trying to connect to MS SQL Server 2014,
Igor Korot, 04/25/2016
- Re: [freetds] Getting "Unexpected EOF from the server" when trying to connect to MS SQL Server 2014, Pulver, Alex, 04/25/2016
-
Re: [freetds] Getting "Unexpected EOF from the server" when trying to connect to MS SQL Server 2014,
Frediano Ziglio, 04/25/2016
-
Re: [freetds] Getting "Unexpected EOF from the server" when trying to connect to MS SQL Server 2014,
Pulver, Alex, 04/25/2016
-
Re: [freetds] Getting "Unexpected EOF from the server" when trying to connect to MS SQL Server 2014,
Frediano Ziglio, 04/25/2016
- Re: [freetds] Getting "Unexpected EOF from the server" when trying to connect to MS SQL Server 2014, Pulver, Alex, 04/25/2016
-
Re: [freetds] Getting "Unexpected EOF from the server" when trying to connect to MS SQL Server 2014,
Frediano Ziglio, 04/25/2016
-
Re: [freetds] Getting "Unexpected EOF from the server" when trying to connect to MS SQL Server 2014,
Pulver, Alex, 04/25/2016
-
Re: [freetds] Getting "Unexpected EOF from the server" when trying to connect to MS SQL Server 2014,
Igor Korot, 04/25/2016
Archive powered by MHonArc 2.6.24.