Re: [ rdesktop-Bugs-2817779 ] Can't connect to WinServ 2008 SP2: "internal license error"

Thomas Uhle <[email protected]> Mon, 19 Sep 2011 20:02:38 +0200 (CEST)
Newsgroups gmane.network.rdesktop.devel
Message-ID <[email protected]>
Hi Peter,

thanks for your reply. See my answer below.


On Mon, 19 Sep 2011, Peter Åstrand wrote:

> Hi, comments below:
> 
> 
> > I am referring to the bug at https://sourceforge.net/tracker/?func=detail&atid=381347&aid=2817779&group_id=24366 .
> ...
> > So I decided to recompile rdesktop with CFLAGS="-g -O0 -DWITH_DEBUG"
> > and starting a new test session. The two session logs (one with the
> > failure due to "Internal licensing error" and the other after removing
> > the files in ~/.rdesktop/) differ only after the connection to the RDP
> > server was successfully established. I have no clue how to proceed
> > because I don't know that much about RDP. Maybe the session logs might
> > help someone of you tracking down the issue. I stripped the logs so
> > that you can see the difference.
> 
> Thanks for checking this out. Do you know if the server is in the Device or
> User licensing mode?

The server issues RDS per Device CALs (Volume License). According to 
http://technet.microsoft.com/en-us/library/cc753650.aspx the RDP client is 
issued a temporary license by default when the client connects to the 
terminal server for the first time. That seems to be why the first 
connection is always being established. Does the character 't' within the 
second and third RDP packets indicates a request for a temporary license?

The second time, there is already that temporary license in ~/.rdesktop/, 
so due to [MS-RDPELE] section 1.3.3 "Licensing PDU Flows" at 
http://msdn.microsoft.com/en-us/library/cc241890%28v=PROT.10%29.aspx 
that license has to be upgraded to a permanent RDS per Device CAL, which 
obviously does not work and which is propably the problem in all those 
reported cases. Why it is not working, I cannot tell. The license server 
is running and there are still enough CALs available. The work-around that 
has been reported (write-protect ~/.rdesktop or make ~/.rdesktop a regular 
file) is simply working because the terminal server always thinks rdesktop 
is connecting for the first time and, thus, issues a new temporary CAL.

The first RDP packet contains my login name, the Windows domain name and 
the client's IP address among other information. Is the license server 
checking whether this IP address belongs to any out of a known pool of 
machines, probably whether it is a real Windows machine?

Apart from that, do you or does anybody else understand the following 
paragraph from the MSDN source cited above?

"If the target machine is a personal terminal server, whether the client 
sends the license or not, the server always sends a license error message 
with the error code STATUS_VALID_CLIENT and the state transition code 
ST_NO_TRANSITION. [...]"

Could this behaviour perhaps cause the problem?

Best regards,


Thomas Uhle

------------------------------------------------------------------------------
All the data continuously generated in your IT infrastructure contains a
definitive record of customers, application performance, security
threats, fraudulent activity and more. Splunk takes this data and makes
sense of it. Business sense. IT sense. Common sense.
http://p.sf.net/sfu/splunk-d2dcopy1

_______________________________________________
rdesktop-devel mailing list
[email protected]
https://lists.sourceforge.net/lists/listinfo/rdesktop-devel