MGET to an IBM Host FTP Server Returns Garbage Characters

ID: Q164542


The information in this article applies to:
  • Microsoft Windows NT Workstation versions 3.51, 4.0
  • Microsoft Windows NT Server versions 3.51, 4.0


SYMPTOMS

When you use the File Transfer Protocol (FTP) utility MGET command to an IBM Host FTP server, the server may return garbage characters when the mode is set to Image (Binary). For example, here is a sample of the output you may receive:


   ftp> bin
   200 Representation type is Image
   ftp> mget txt*
   mget ptpnptp=ptp=ptp(? Y
   Error opening local file ptpnptp=ptp=ptp(
   ptpnptp=ptp=ptp(:Invalid argument
   ftp> 


CAUSE

IBM Host (mainframe or mini-computer(S/38 or AS/400)) uses EBCDIC (Extended Binary Coded Decimal Interchange Code) as the character representation scheme. Personal computers use ASCII. EBCDIC is an 8-bit code while ASCII is 7-bit.

When you set the mode to Image mode and send the MGET command as in the previous example, the NLST command is sent to the IBM Host FTP server in binary format. The IBM Host FTP server has no way of knowing if the client making the request is an ASCII or EBCDIC client. It returns the list of files in its default encoding scheme, which is EBCDIC. This causes the problem because personal computers do not understand EBCDIC.


RESOLUTION

Apply the hotfix mention in this article.


STATUS

Microsoft has confirmed this to be a problem in Windows NT versions 3.51 and 4.0. This problem was corrected in the latest Microsoft Windows NT 4.0 U.S. Service Pack. For information on obtaining the service pack, query on the following word in the Microsoft Knowledge Base (without the spaces):

S E R V P A C K

Additional query words: prodnt ftp

Keywords : kbnetwork kbbug4.00 kbfix4.00 nttcp kbfix4.00.sp2 NTSrvWkst
Version : 3.51 4.0
Platform : winnt
Issue type : kbbug


Last Reviewed: February 12, 1999
© 2000 Microsoft Corporation. All rights reserved. Terms of Use.