The
CoRD utility (based on the famous
rdesktop project) allows Mac OS X users to connect to Windows machines via the Remote Desktop Protocol (RDP) aka. Terminal Services. Unfortunately if the Windows server is a terminal server running in application server mode, then it'll require a TSCAL (Terminal Service Client Access License) from the client. If the client does not provide a valid license, then the server creates a temporary license that is valid for approx. 90 days. This temporary license is based on the so called hardware id that the client sends to the server during the licensing handshake. By default the hardware id is generated from the hostname of the client machine, thus once the temporary license expires, you cannot connect to the TS server anymore. However if you use something else (eg. a random string) as the seed of the hardware id, then a new temporary license is generated on the server every time you connect, providing virtually an unlimited temporary license. As I
already wrote, rdesktop has a command line option that you can use to specify the seed (aka. the client hostname) for the license handshake. Unfortunately CoRD does not yet implement this, it takes the same hostname every time.

I'm not sure whether it takes the client's hostname or the server's hostname ... in the code I just saw that it takes the hostname from the RDP connection's struct.
Comments
CoRD with client hostname support
Update for snow leopard?
Re: Update for snow leopard?