This project is read-only.

Paths to Legacy system that is not like UNIX

May 21, 2013 at 6:20 PM
Edited May 21, 2013 at 9:02 PM
I'm trying to get this to work against our old MODCOMP system, but has problems with paths that are not at all like in UNIX.

When I try to use FtpClient.GetListing(), I get an FtpException on line 1923 in FtpClient.GetWorkingDirectory() saying "Failed to parse working directory from: PWD = ~TNA=AMP,VNA=VOL03,FNA=U-ED-B2-USL"

I saw that someone else has problem with a VAX-system (which from afar is related to MODCOMP), but do not really understand how he solved it.

If I had a free wish I would like it to be possible to customize how paths are managed, just like you can add as a custom parser to FtpListItem.
I think this would also be useful for the VAX.

Here is a listing of FTP communication:
220-FTP Server by Electronic Visions, Inc. V1.2B 
220 Connection is automatically closed if idle for     5 minutes
USER ******
331 User name okay, need password
PASS ******
230 User logged in, proceed
CWD ~TNA=AMP,VNA=VOL03,FNA=U-ED-B2-USL
257 PWD = ~TNA=AMP,VNA=VOL03,FNA=U-ED-B2-USL 
PORT xxxxxxxxxxxxxxx
200 Port OK (MRN-200)
LIST
150 Transfer starting
-rw-rw-rw-  1 ftp    ftp        19 Mar  6  1990 B65TXTM 
-rw-rw-rw-  1 ftp    ftp        10 Mar  6  1990 B65OUTM 
-rw-rw-rw-  1 ftp    ftp        12 Mar  6  1990 B65COLM 
-rw-rw-rw-  1 ftp    ftp        22 Mar 28  2001 BF4HBS  
-rw-rw-rw-  1 ftp    ftp        18 Apr 26  2001 BX2REF  
-rw-rw-rw-  1 ftp    ftp        46 May 23  2002 WEBBXT  
-rw-rw-rw-  1 ftp    ftp         6 Mar 21  2003 BF6PUTM 
-rw-rw-rw-  1 ftp    ftp         6 Mar 21  2003 BF4DEVM 
-rw-rw-rw-  1 ftp    ftp        29 Nov  3  2005 WEBBG1  
-rw-rw-rw-  1 ftp    ftp        18 Feb 21  2005 BX1TIM  
-rw-rw-rw-  1 ftp    ftp        12 Sep 14  2005 BF7LGLM 
-rw-rw-rw-  1 ftp    ftp        37 Oct 10  2005 BG1WI2  
-rw-rw-rw-  1 ftp    ftp        35 Oct 17  2005 BG1WM2  
-rw-rw-rw-  1 ftp    ftp        41 Nov  3  2005 BG1SND  
-rw-rw-rw-  1 ftp    ftp         2 Nov  3  2005 BG4PAR  
-rw-rw-rw-  1 ftp    ftp         3 Aug 30  2006 ASSIGN  
-rw-rw-rw-  1 ftp    ftp        13 May 16  2007 AIDATA  
-rw-rw-rw-  1 ftp    ftp        23 Oct 28  2005 BG4MAI  
-rw-rw-rw-  1 ftp    ftp        21 Nov  4  2005 BG4XEV  
-rw-rw-rw-  1 ftp    ftp        13 Sep 27  2012 SUBSJOBS
-rw-rw-rw-  1 ftp    ftp        67 Oct 19  2012 BX2VAL  
-rw-rw-rw-  1 ftp    ftp        31 Dec 21  2012 WEBBX1  
-rw-rw-rw-  1 ftp    ftp        15 Dec 21  2012 BX1REA  
-rw-rw-rw-  1 ftp    ftp        42 Dec 21  2012 WEBBX2  
-rw-rw-rw-  1 ftp    ftp        18 Dec 21  2012 BX2DEV  
-rw-rw-rw-  1 ftp    ftp        22 Dec 21  2012 BX1IDY  
-rw-rw-rw-  1 ftp    ftp        27 Dec 21  2012 BX1SND  

226 Transfer successful
HELP
214-Electronic Visions, Inc.  FTP  V1.1B         
Implemented commands:     
ABOR    CDUP    COMP    CWD     DELE    HELP    LIST    MODE  
NLST    NOOP    PORT    PWD     QUIT    RETR    RNFR    RNTO  
SITE    STAT    STOR    STRU    SYST    TYPE  
214 Send bug reports to the exterminator  

QUIT
221 Closing connection, Bye! 
May 21, 2013 at 7:07 PM
Can you give a break down of the path notation? Having trouble finding info via google. It would give me an idea of what I might can do to help. As for now, I've added the PWD response to the GetWorkingDirectory() parser so that should be supported and the file listing should be supported by ParseUnixList() so in addition let me know where things currently stand.

Download the latest source revision from the source tab for the updates.
May 21, 2013 at 7:08 PM
Also, send me the output from FtpClient.System so I can see if there is a way to identify this particular FTP server software. A complete transaction log as detailed in the Examples\Debug.cs would be great.
May 21, 2013 at 8:58 PM
Edited May 21, 2013 at 9:01 PM
The FTP server is developed by Electronic Visions and it is no documentation on Internet. If you want I can scan the documentation to the FTP server. We have it on paper

The system is a real time system, and it is no real file system as in Unix.
But you can interpreted the path ~TNA=AMP,VNA=VOL03,FNA=U-ED-B2-USL/BX1TIM as
  • Disc = VOL03
  • Directory = \U\ED\B2\USL
  • File = BX1TIM
If you go to the root with CD ~TNA=AMP,VNA=VOL03 (No FNA), you can list ALL files in ALL subdirectorys on the disc.
I now discovered that it list the contents differently when you are in the root. Of course :-(
ftp> dir
200 Port OK (MRN-200)
150 Transfer starting

*EVIFTP   AMP/VOL03                                      5/21/2013  21:36
 FILE     FHT       LENGTH     ISA     FMS    GEO    RSL   INL   LS WRITTEN

DU3       PAR         64-S     1-T     1-T     1      0     255
U         DIR     967680-S 15120-T 15120-T     1      0     255
 /BB      DIR     967680-S     1-T     1-T     1      0     255
   /Y     DIR     967680-S     1-T     1-T     1      0     255
     /CSL
          DAT       2720-S  5440-S  5440-S     1      0     255     12OCT10
     /IN  DAT          1-S     1-G   448-S     1      0     255     16OCT94
     /S4  DAT        224-S   448-S   448-S     1      0     255     16OCT94
     /UXR
          DAT        320-S   640-S   640-S     1      0     255     12OCT10
     /UL  DIR     967680-S     1-G     1-G     1      0     255
       /*I
          DAT          9-S     1-G    50-G     1      0     255     09MAR10
       /GS*IV
          DAT         17-S     1-G    20-T     1      0     255     09MAR10
       /GI*IV
          DAT         22-S     1-G    20-T     1      0     255     09MAR10
       /GT*IV
          DAT         15-S     1-G    20-T     1      0     255     09MAR10
       /U*UXA
          DAT          2-S     1-G    20-T     1      0     255     09MAR10
       /BA9DIM
          DAT          1-S     1-G    20-T     1      0     255     09MAR10
       /BABDIM
          DAT          1-S     1-G    20-T     1      0     255     09MAR10
       /YHA04
          DAT          5-S     1-G    20-T     1      0     255     16OCT94
       /YHAS1
          DAT          4-S     1-G    20-T     1      0     255     16OCT94
       /AS1RED
          DAT          2-S     1-G    20-T     1      0     255     16OCT94
       /AS1MST
          DAT          2-S     1-G    20-T     1      0     255     16OCT94
       /AS1UPD
          DAT          2-S     1-G    20-T     1      0     255     16OCT94
       /YHAS2
          DAT         11-S     1-G    20-T     1      0     255     16OCT94
       /YHAS3
          DAT         10-S     1-G    20-T     1      0     255     16OCT94
E.g. file BA9DIM has path VOL03:\U\BB\Y\UL\BA9DIM
May 21, 2013 at 9:50 PM
I have upload the manual to Box.com
See page 1 for the formats of the directorys.
See page 30 for FTP commands to the server.

I have test the updated source, and I no get a list of the files in the directory. But the listing of the files from the root does not work, of course.