Skip to Content.
Sympa Menu

freetds - Re: Strange server

freetds AT lists.ibiblio.org

Subject: FreeTDS Development Group

List archive

Chronological Thread  
  • From: Brian Bruns <camber AT ais.org>
  • To: TDS Development Group <freetds AT franklin.oit.unc.edu>
  • Subject: Re: Strange server
  • Date: Mon, 21 Jan 2002 10:35:09 -0500 (EST)



Hi,

OpenServer is a library for creating server applications that speak the
TDS protocol. It is usually used for providing TDS access to
non-relational datasources. I've only seen TDS 4.6 on AIX myself. It is
not a very widely deployed version and thus doesn't have terrific support
in FreeTDS (although some is there). I'll bet if you connect at 4.2 the
server will respond in kind and it'll work, but we should make an attempt
at getting TDS 4.6 to work.

Presumably 4.6 follows 4.2 in the the sense that receiving an ACK token
means the login is successful. (In TDS 5 the ack token is present either
way, and differs only by the value).

A larger issue is we don't really degrade if the protocol version the
server comes back with is not the one we are speaking...that's probably an
easy fix too.

Brian

On Fri, 18 Jan 2002, Chris Eleveld wrote:

> I have a strange serve on my network that without patching FreeTDS I could
> not connect to. Rather than just try to submit my changes I thought I
> would run it by you guys and see if anyoen has seen such a strange thing.
> Watching packet traces the login accept packet appears the same for Syabse
> as FreeTDS so I suspect all is well in the TDS layer, minus accepting the
> connection as open on the freeTDS side. If anyone is interested I'm
> certain I can fidn soem packet dumps for the TDS tokens. To get to the
> point finally though I get a Login Acknowledgement toke(0xAD) with an ack
> value of 0, a version of 4.6(0x04060000), and a server name of OpenServer.
> So has anyone seen this behavior? Did I miss a configuration option I
> need?
>
> also near where I made my change in tds_process_login_tokens is the code:
> tds_get_n(tds, NULL, len-4);
> tds_get_byte(tds);
> shouldn't this just be:
> tds_get_n(tds, NULL, len-3);
> for the 3 bytes we already read ack and major and minor versions?
>
> I've also added several defines to sybdb.h to get various programs to
> compile. Is there any interest in these changes?
>




  • Strange server, Chris Eleveld, 01/18/2002
    • <Possible follow-up(s)>
    • Re: Strange server, Brian Bruns, 01/21/2002

Archive powered by MHonArc 2.6.24.

Top of Page