Pragma Telnet Server Frequently Asked Questions

This is a collection of answers to frequently asked questions about Pragma Telnet Server for Windows. Please check here before sending email or calling Pragma Systems in regards to problems with the Telnet Server product.

Also check our forums pages for common questions and answers,

Many issues can be resolved by viewing the Event Logs, where we record all errors and informational events. In Version 7, Build 9, Revision 1815 and later, all events are recorded under Windows Applications and Services -> Pragma Telnet Server. In earlier versions, events are recorded in the Application log.

Thank you,

Pragma Systems, Inc.

A. Limitations of the Pragma Telnet Server evaluation
B. How Pragma Telnet Server works and interacts with Windows
C. Hardware needed
D. Installation Problems with Pragma Telnet Server


List of Pragma Telnet Server Support Questions by Topic

1. Keyboard and Mouse 2. Logging In 3. Windows Association 4. Command Line Operations 5. Display 6. InetD Service 7. Running other applications from Telnet Server 8. Printing 9. Other Issues


A. Limitations of the Pragma Telnet Server evaluation

The free evaluation copy of Pragma Telnet Server will timeout 14 days from when it is installed. The greeting message and copyright messages cannot be changed or removed. Other than that, there is no difference.


B. How Pragma Telnet Server works and interacts with Windows

Pragma Telnet Server is a standard UNIX telnet server ported to Windows. Telnet does not support graphical programs that open separate windows, it will run any program that will run in your Windows console window. It runs as a Windows service and allows access to those machines from any ssh client and protects the system by using the internal security mechanisms. To learn more about the telnet specification, see the RFC 854 document.

With Pragma Telnet Server, you receive our fully functional InetD product. InetD is another program we brought over from the UNIX world. It allows us to run programs only when they are really needed. InetD runs as a service and watches TCP/IP ports for which it is configured. Using InetD allows us to use less memory and processor time while awaiting a TCP/IP connection. When a telnet client attempts a connection to your Windows system, it uses a TCP/IP Port. InetD is configured to watch this port and start the Telnet Server application at that time. At that point, the user is questioned for his/her login information. The login information consists of a User ID, Password and optional Domain. Pragma Telnet Server then takes this information and asks the operating system if this user is okay or not. If the user fails the authentication, he/she is notified and is given a configurable number of retries before being disconnected. If the user passes authentication, the user is logged onto the system just as if they were sitting at the computer.


C. Hardware needed

Pragma Telnet Server will run on any system able to run Windows. Therefore, all you need is the minimum requirements set by Microsoft. As for how many users can telnet to a machine at the same time and performance not be degraded, we say that you need about 5MB per user above the minimum needed for Windows.

Here's a guideline to follow for connecting 200 telnet sessions:

2 GHz processor

NOTE: The above recommendation is for telnet sessions running cmd.exe only. If the session will run additional programs, then the resources should be increased accordingly for each session. Additional resources will be needed as the number of sessions increase, or for sessions that will be running additional processes.


D. Installation Problems with Pragma Telnet Server

1. The installation must be run as with elevated privileges in Vista and higher.
2. Known programs that might interfere with the installation of Pragma Telnet Server:

                    Microsoft Exchange Server
                    Microsoft SQL server
                    Virus Detection software
                    Backup software

3. If installation failure occurs due to the InetD Service failing to start, check the Event Log for an InetD error describing the failure. In Version 7, Build 9, Revision 1815 and later, all events are recorded under Windows Applications and Services -> Pragma Telnet Server. In earlier versions, events are recorded in the Application log.


Answers to support questions:

I am using an application that requires me to use the Alt key on the keyboard, how is this done?

1. You can use our Console Telnet Client which allows you to use the Alt key just as you normally would, by mapping the ALT key to the same value as the server. See the telnetc.txt file for help on mapping the ALT key for the client. The default value is CTRL-A.

2. You can re-mapped the Alt key to any key desired for each user, using the Local Telnet Server Configuration program. The default value is CTRL-A.


Pressing Control-G doesn't do anything?

Pragma Telnet Server has the ability to grant or deny users to press Control-G to make the server beep. If Control-G is not working, check the Users -> Keyboard page of the Local Server Configuration program to make sure the option is on.


Pressing Control-C doesn't do anything?

Pragma Telnet Server has the ability to grant or deny users to press Control-C to break out of the current application. If Control-C is not working, check the Users -> Keyboard page of the Local Server Configuration program to make sure the option is on.


Does Pragma Telnet Server support function keys?

Yes, if you use our Console Telnet Client, all of the keyboard keys work. However, if you use another client, make sure that it supports VT420 or allows you to define what it sends for the keyboard.


Is it possible to get mouse support in a telnet session?
How can I get mouse access over a telnet session?

For mouse support, both the client and the server need to be in "WindowsTerm" mode. To do this, follow these instructions:

To set the client side, you need to set your term environment variable to WindowsTerm in your local machine first and then run our telnet client.

You can change the environment variable for all sessions by modifying the variable for from Control Panel.

1) Go to the User Environment settings. This is in different areas, base on the operating system. Check your documentation for location.
2) Choose or Add "Term";
3) Change value to WindowsTerm;
4) Click on "Set" & "Apply";

Or you can set the variable from a just for a single session, by typing "term=WindowsTerm" at the command prompt before starting the telnetc session in the same command prompt session.


User has account on system but is unable to login.
Only the Administrator is allowed to login.

The most common cause of a user being rejected is that they do not the necessary permissions to access the server or run the configured user shell and/or startup program. All users must have "Log on Locally" access permissions to be granted access via telnet.


It seems to take long time to login.

The most common cause of delayed access, is authentication by a trusted domain. Pragma Telnet Server authenticates in the following order: local, current domain, trusted domains. If the user is a member of a trusted domain, entering the domain at the domain prompt will speed up authentication.

Overall network lag can be the cause as well. Test an authentication of the same user outside of telnet, such as mapping or drive or some group membership configuration for the operating system. If this is slow as well, then see a network administrator.


How do I execute a batch file when a user logs on?

You can assign a logon batch file for users using one of the following methods. Select only one choice. Errors could occur if the batch file is assigned in multiple locations.

1. Setup the batch file using Windows User Management program.
2. Enter your batch file in the Startup Program edit box under the Console Settings or Stream Settings tab, depending on the console mode. The location of this box depends on the version of Telnet Server. Check your index for these box locations.


I get logged off as soon as I log on.

This is normally caused by a failure to run the command shell. Check the Event Log for an error launching the user shell program. If there is none, then check security access to all necessary items to run the user shell, including directories and mapped drives.


How do I get rid of the Character Map prompt?

Beginning with Version 6.0, the Character Map prompt is only displayed when an unknown terminal type is used, or if the server administrator requests it. If you need to assign a character map enter the value in the Default Character Map exactly as it appears in the prompt. For example, enter [vtxxx] for our default option.


How do I set a users home directory?

Pragma Telnet Server supports the user settings in Windows, including home directory and logon script. You may also set up a home directory for each user for telnet only, by setting the Home Directory on the Users General Setting tab.  


How do I set a users home directory on a network drive?

Before a network drive can be accessed it must be either mapped or referenced by a UNC name. If using a mapped drive, on the User -> Logon page of the Local Server Configuration program, please make sure that the option to Mapped Network Drives is on and not being performed in the background.


What versions of Windows are supported?

All servers are fully compatible with Windows 2022/2019/2016/2012/ R2/2012/2008 R2/2008 servers and Windows 10/8/7

All clients can also run on Windows XP and Vista.

Our Certifications

Pragma crypto libraries obtained US NIST FIPs certification for Windows 10, Windows Server 2016 and Windows server 2012R2.

Pragma products are fully compatible and tested for use in in Windows Server 2019 and are used in thousands of customer sites worldwide.


Does Pragma Telnet Server use the Windows User Database or have it's own?

Pragma Telnet Server uses the Windows User Database and API for user authentication.


Could you tell me the limitations, if any, to run Pragma Telnet Server on Windows?

Limitations are those imposed on the User's access rights and what you can do in a console window. Also, you are limited by the file system to only having one set of drive letters for the entire system. This causes an error when 2 users try to map the same drive letter.


Pragma Telnet Server doesn't seem to have the same path as Windows.

This can occur if the telnet user does not have the path configured under the OS. The path is a setting of the system and the users path. If a different user is logged on to the desktop, the path may be different than the path a different user would get under in the telnet session.


Can I run Pragma Telnet Server on a Windows Workstation OS instead of a Server OS?

Yes, we are not limited to running on a Windows Server operating system. Any version of Windows will work.


Does Pragma Telnet Server run on virtual servers?

Pragma Telnet Server has been tested on all Windows operating systems running on multiple virtual server applications. The connections behave just as they would if installed on a stand alone system.


Can I add/edit users from a command line ?

Yes, you can accomplish this by using the Windows NET.EXE command line application. The NET command has many important functions that can be helpful at the command line. Many useful utilities are also shipped with the Pragma Telnet Server product. Microsoft Resource Kits and Server Support Kits contain many other useful command line tools.


Can I see users that are logged on from command line?

Yes, we ship a command line version of the Pragma Session Manager, called TELMC.EXE.


I need to be able to change my password from command line.

Included with the server is a utility, password.exe, that will enable you to change your password from the command line.


I wish to be able to scroll my screen back using a buffer and view my previous commands.

Advanced Console mode allows a user to run console commands and have a scroll back history. This is a only available from Pragma Systems. Stream Mode is still available for any application that handles all emulation for the client, or a session that does not require any console features.


Why don't I get a color display?
Why don't I get any colors?

The most common cause of no color display is that the client does not support color. Included with the server are multiple clients, GUI and command line that support color. A second possibility is that the server is running in monochrome or has the checkbox on for "Slow network connections", which will turn on monochrome support. Check the Console Settings page of the Local Telnet Server Configuration program.


My terminal only supports 24 lines, this causes the last line to not display correctly.

Because DOS programs support a minimum of 25 lines, we have re-mapped the last 25th line to the 24th line. This enables the last line to be seen, which in most cases is very important. We do not recommend using a client that does not support at least 25 lines.


How do I get reverse video?

For versions earlier than 5.0, use the Console Settings tab, turn on the User Monochrome option and set the Default Background color to any value other than Black. Version 5.0 includes a check box to use Reverse Video.


How can I use InetD to enable my console application to be TCP/IP network enabled?

This is a very simple task. All you must do is use our socket instead of STDIN and STDOUT. So, you can use the following code snippet to get the socket handle and allow your program to read and write to the socket just as if it were in a regular console.

char *pSock;
int hOutput = 0, hInput = 0;

if ( (pSock = getenv("PRAGMASYS_INETD_SOCK")) != NULL )
/* code for in telnet session */
hOutput = hInput = atoi( pSock );
// From here you can use Windows NT ReadFile and WriteFile
// for input and output
/* code for not in telnet session */

For version 7.0 and later, the following registry string value entry must also be added:

          HKEY_LOCAL_MACHINE\SOFTWARE\PragmaSystems\telnetd\Users\ for each configured user\CustomAppSupport, with a value of "yes".


How do I START and STOP the InetD Service?

1. From the InetD Configuration tab.
2. From the Windows "Services" Program
3. From a Command Prompt, using the NET command


I have some programs that run okay in a local DOS Window, however when I run them in a telnet session, the window is not updating.

Some programs that are compiled for Windows and run in a console window use the Win32 Console API functions that switch the active screen buffer being used. Not only does Pragma Telnet Server have no way of knowing that these functions are being used and that the screen buffer has been changed, but because of process boundaries set by Windows, the Telnet Server process has no access to these screen buffers. These applications will work in Advanced Console or with the wrap.exe program.


Known applications that need our Wrapper technology because of the above issue:

VI from the Windows NT Resource Kit
PMON from the Windows NT Resource Kit
VIM - a popular enhanced version of VI
Computer Associates Interactive SQL command processor, Open Ingres


Where can I get Emacs for Windows that works in a telnet session?

You can download a 64-bit version of Emacs from Sourceforge at


Using IBM's DB2 product with Pragma Telnet Server.

Two environment variables need to be set for the DB2 Command Line processor to work within a telnet session, DB2RQTIME and DB2CLP.

DB2RQTIME: This is a timeout variable used by DB2, it represents milli-seconds so it will be very large.

DB2CLP: This is an internal value set per session, it is unique to each session. See you DB2 help for more information on setting this variable.

We recommend that you use a shell initializer on the server to set these values at the start of you telnet session.


How do I make Pragma Telnet Server stop any child process when a telnet session ends?

Use the "Monitor Child Process" feature to make sure all child processes are removed when a session ends. If there is a known exit that will exit the process from any spot in the program, then configure the exit sequence under the Graceful Termination page of the Local Telnet Server Configuration program.


Users are unable to print.

In order for printing to work, users that wish to print must have Change access to the SpoolDir.  

Take a look at the documentation on Printing Monitoring. It has a step-by-step setup and troubleshooting tips.


Does Pragma Telnet Server support telnet binary data transfer mode?

Yes, shipped with Pragma Telnet Server are the programs rz and sz, which can be used with Pragma's Console Telnet Client to transfer files using the ZModem protocol. So it is possible to transfer files in a telnet session without going to FTP or something else.  


I can only get a small number of sessions connected, then I start getting errors.

Resources may limit the number of sessions. If a large number of sessions are active, and users begin to experience process issues or are unable to logon, increase the InetD Desktop Count. If that does not allow more sessions then check the Win32 system setup. Go to HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Session Manager\SubSystems\Windows registry value. There is a substring value of SharedSection. For best results this value should be SharedSection=1024,3072,512. After changing the value, reboot the system.

If the problem persist change the SharedSection value to 1024,3072,1024, then reboot. This setting is system dependent, so some systems have better results with 512, while some perform better with 1024.

Windows has a system limitation of 48 MB of memory for non-interactive services, such as telnet sessions.  This limit will be reached if InetD cannot create all of the requested desktops or the SharedSection value is set too high.


I am getting a getpeername failure in the Event Log.

My session immediately exits without error.

Another application with a Layered Service Provider might be conflicting with the Pragma Server. Uninstall the other application and re-boot.

Other applications known to cause a conflict:

McAfee VirusScan 7.0
Diamond Port Monitor


I have server processes left on the machine after the client exits?

Server and user shell processes left after a client exits are called orphan sessions. These sessions are left because the client does not notify the server that they have exited. There are 2 features included that can be used to clean up orphan sessions.

The first is the Server to Client Heartbeat under the User -> Handheld page of the Local Server Configuration program. This will send a signal to the client after the configured period of time, and then disconnect the session, if it does not receive a response from the client.

The other is the Idle Session Timeout under the User General Settings page of the Local Server Configuration program. This will shut the session down after a fixed period of inactivity. This value will shut down the session whether the connection is good, so it should be configured high enough not to interfere with an expected idle period.



Social Media