On 2015-01-08 04:37, Sampsa Laine wrote:
On 8 Jan 2015, at 05:29, Johnny Billquist <bqt at softjar.se> wrote:
On 2015-01-08 03:23, Paul_Koning at Dell.com wrote:
...
The MultiNet FTP Server moves files between similarly capable FTP Clients and keeps the File Attributes consistent while copying data (i.e. You can simply ftp RMS Indexed files between VMS systems and the results will be immediately usable).
I know I read some manual about the DEC TCPIP package ftp server and client also managing this. It would, in fact, be nice to be compatible with that. However, atleast when storing or retreiving files from Unix systems, what DEC did is that they actually transfer two files. One with the data, and a separate one with the file metadata. Ugly, I think, and I would like to try and avoid that.
But that is a client only thing, as far as I can see. Anyone know how VMS does it if talking to another VMS system?
I suspect I might have a hard time if they do it by detecting that the remote server is a VMS system, since I will not lie about that. :-)
Ideally there would be an RFC describing this. Is there? Or another spec that spells out the protocol encoding for this magic?
I haven't found any. :-(
On the other hand, I could have missed something.
The "old" way of possibly dealing with this would be to use the page structure mode in ftp, but that would appear to be seriously discouraged. And besides, it is still kindof a difficult fit here.
RFC 959 talks about a file structure command:
FILE STRUCTURE (STRU)
The argument is a single Telnet character code specifying
file structure described in the Section on Data
Representation and Storage.
The following codes are assigned for structure:
F - File (no record structure)
R - Record structure
P - Page structure
The default structure is File.
https://www.ietf.org/rfc/rfc959.txt
Not sure if this is of any help or works with any modern clients..
Note where I said "page structure" above. :-)
I've read RFC 959 (as well as the various additions) backwards and forwards way too many times by now.
The page structure would be a way of doing this. It will definitely not work with any other client out there. But on the other hand, I'm mostly interested in the efficient transport of files between two RSX systems for this part anyway, so it will be towards my own client only.
But I doubt VMS does it this way, and I was curious about if I could possibly do something that would be compatible with VMS, since enough commonality in file storage exists between RSX and VMS for this to actually be useful.
So the question is - what do VMS do when talking to another VMS system, and how does VMS decide when to use the extra abilities?
A different question is how to deal with binary file transfers to (for example) Unix systems. I have some different options there as well, but I haven't figured one out yet that does the right thing under all circumstances.
Johnny
--
Johnny Billquist || "I'm on a bus
|| on a psychedelic trip
email: bqt at softjar.se || Reading murder books
pdp is alive! || tryin' to stay hip" - B. Idol
On 8 Jan 2015, at 05:37, Sampsa Laine <sampsa at mac.com> wrote:
On 8 Jan 2015, at 05:29, Johnny Billquist <bqt at softjar.se> wrote:
On 2015-01-08 03:23, Paul_Koning at Dell.com wrote:
...
The MultiNet FTP Server moves files between similarly capable FTP Clients and keeps the File Attributes consistent while copying data (i.e. You can simply ftp RMS Indexed files between VMS systems and the results will be immediately usable).
I know I read some manual about the DEC TCPIP package ftp server and client also managing this. It would, in fact, be nice to be compatible with that. However, atleast when storing or retreiving files from Unix systems, what DEC did is that they actually transfer two files. One with the data, and a separate one with the file metadata. Ugly, I think, and I would like to try and avoid that.
But that is a client only thing, as far as I can see. Anyone know how VMS does it if talking to another VMS system?
I suspect I might have a hard time if they do it by detecting that the remote server is a VMS system, since I will not lie about that. :-)
Ideally there would be an RFC describing this. Is there? Or another spec that spells out the protocol encoding for this magic?
I haven't found any. :-(
On the other hand, I could have missed something.
The "old" way of possibly dealing with this would be to use the page structure mode in ftp, but that would appear to be seriously discouraged. And besides, it is still kindof a difficult fit here.
RFC 959 talks about a file structure command:
FILE STRUCTURE (STRU)
The argument is a single Telnet character code specifying
file structure described in the Section on Data
Representation and Storage.
The following codes are assigned for structure:
F - File (no record structure)
R - Record structure
P - Page structure
The default structure is File.
https://www.ietf.org/rfc/rfc959.txt
Not sure if this is of any help or works with any modern clients..
It's not even implemented in the VMS FTP server, where I could see the record structured files being quite useful..:
230 User logged in.
Remote system type is VMS.
ftp> stru
We only support file structure, sorry.
On 8 Jan 2015, at 05:29, Johnny Billquist <bqt at softjar.se> wrote:
On 2015-01-08 03:23, Paul_Koning at Dell.com wrote:
...
The MultiNet FTP Server moves files between similarly capable FTP Clients and keeps the File Attributes consistent while copying data (i.e. You can simply ftp RMS Indexed files between VMS systems and the results will be immediately usable).
I know I read some manual about the DEC TCPIP package ftp server and client also managing this. It would, in fact, be nice to be compatible with that. However, atleast when storing or retreiving files from Unix systems, what DEC did is that they actually transfer two files. One with the data, and a separate one with the file metadata. Ugly, I think, and I would like to try and avoid that.
But that is a client only thing, as far as I can see. Anyone know how VMS does it if talking to another VMS system?
I suspect I might have a hard time if they do it by detecting that the remote server is a VMS system, since I will not lie about that. :-)
Ideally there would be an RFC describing this. Is there? Or another spec that spells out the protocol encoding for this magic?
I haven't found any. :-(
On the other hand, I could have missed something.
The "old" way of possibly dealing with this would be to use the page structure mode in ftp, but that would appear to be seriously discouraged. And besides, it is still kindof a difficult fit here.
RFC 959 talks about a file structure command:
FILE STRUCTURE (STRU)
The argument is a single Telnet character code specifying
file structure described in the Section on Data
Representation and Storage.
The following codes are assigned for structure:
F - File (no record structure)
R - Record structure
P - Page structure
The default structure is File.
https://www.ietf.org/rfc/rfc959.txt
Not sure if this is of any help or works with any modern clients..
On 2015-01-08 03:22, Paul_Koning at Dell.com wrote:
On Jan 7, 2015, at 9:03 PM, Johnny Billquist <bqt at softjar.se> wrote:
Thanks. (I doubt the VMS ftp server would care about NAT, it's not something the system behind a NAT knows or should care about. It's the NAT router who have to do all the work )
Usually, but it depends on the protocol. Some protocols FTP is a notorious example carry addresses and/or port numbers inside the application protocol data.
Right. And most any NAT box I know of knows this, and actually snoop the ftp control session to catch this so it can work.
But you are absolutely correct in that it is an extra level of excitement.
Does this server support passive mode? A lot of NAT servers need passive mode for FTP to work, or work more reliably if you use passive mode. (I just like passive mode because it isn t quite so conceptually broken as the older mode of FTP.)
I don't know about the VMS one. Mine do. :-)
But passive mode was in ftp already from the start, so anyone not implementing it would be rather silly. It is also required if you ever want to initiate a transfer between two boxes, if you yourself is on a third box.
And yes, passive mode is much easier for NAT to handle, since it looks much more like any normal session coming through. No need to snoop the ftp control channel in this case.
Johnny
--
Johnny Billquist || "I'm on a bus
|| on a psychedelic trip
email: bqt at softjar.se || Reading murder books
pdp is alive! || tryin' to stay hip" - B. Idol
On 2015-01-08 03:23, Sampsa Laine wrote:
On 8 Jan 2015, at 04:03, Johnny Billquist <bqt at softjar.se> wrote:
Aha. Interesting output. That was sortof what I had a vague memory remembering it looking like. Now I need to decide if I want to do it similar.
Do people think file protection (for example) is useful to see? What about owner? I certainly have the information available, but I have not displayed it so far.
I would try to make it look as close to the *nix implementations, that way automated / GUI front-ends are more likely to work nicely with the server.
That is probably going to fail in various ways anyway, so it's not high on my list of priorities.
RSX (and VMS) file protection codes does not map well to Unix. And owner information is a even bigger headache in RSX, as you normally never do translate the UIC to something else. And presenting a UIC will already make it look very non-Unix. :-)
For example, I have a very nice GUI file transfer program called Transmit.app on OS X, but it REALLY gets confused when talking to VMS..
People try to be too clever. :-)
Johnny
--
Johnny Billquist || "I'm on a bus
|| on a psychedelic trip
email: bqt at softjar.se || Reading murder books
pdp is alive! || tryin' to stay hip" - B. Idol
On 2015-01-08 03:23, Paul_Koning at Dell.com wrote:
...
The MultiNet FTP Server moves files between similarly capable FTP Clients and keeps the File Attributes consistent while copying data (i.e. You can simply ftp RMS Indexed files between VMS systems and the results will be immediately usable).
I know I read some manual about the DEC TCPIP package ftp server and client also managing this. It would, in fact, be nice to be compatible with that. However, atleast when storing or retreiving files from Unix systems, what DEC did is that they actually transfer two files. One with the data, and a separate one with the file metadata. Ugly, I think, and I would like to try and avoid that.
But that is a client only thing, as far as I can see. Anyone know how VMS does it if talking to another VMS system?
I suspect I might have a hard time if they do it by detecting that the remote server is a VMS system, since I will not lie about that. :-)
Ideally there would be an RFC describing this. Is there? Or another spec that spells out the protocol encoding for this magic?
I haven't found any. :-(
On the other hand, I could have missed something.
The "old" way of possibly dealing with this would be to use the page structure mode in ftp, but that would appear to be seriously discouraged. And besides, it is still kindof a difficult fit here.
Johnny
--
Johnny Billquist || "I'm on a bus
|| on a psychedelic trip
email: bqt at softjar.se || Reading murder books
pdp is alive! || tryin' to stay hip" - B. Idol
...
The MultiNet FTP Server moves files between similarly capable FTP Clients and keeps the File Attributes consistent while copying data (i.e. You can simply ftp RMS Indexed files between VMS systems and the results will be immediately usable).
I know I read some manual about the DEC TCPIP package ftp server and client also managing this. It would, in fact, be nice to be compatible with that. However, atleast when storing or retreiving files from Unix systems, what DEC did is that they actually transfer two files. One with the data, and a separate one with the file metadata. Ugly, I think, and I would like to try and avoid that.
But that is a client only thing, as far as I can see. Anyone know how VMS does it if talking to another VMS system?
I suspect I might have a hard time if they do it by detecting that the remote server is a VMS system, since I will not lie about that. :-)
Ideally there would be an RFC describing this. Is there? Or another spec that spells out the protocol encoding for this magic?
paul
On 8 Jan 2015, at 04:03, Johnny Billquist <bqt at softjar.se> wrote:
Aha. Interesting output. That was sortof what I had a vague memory remembering it looking like. Now I need to decide if I want to do it similar.
Do people think file protection (for example) is useful to see? What about owner? I certainly have the information available, but I have not displayed it so far.
I would try to make it look as close to the *nix implementations, that way automated / GUI front-ends are more likely to work nicely with the server.
For example, I have a very nice GUI file transfer program called Transmit.app on OS X, but it REALLY gets confused when talking to VMS..
sampsa
On 2015-01-08 03:19, Sampsa Laine wrote:
On 8 Jan 2015, at 04:03, Johnny Billquist <bqt at softjar.se> wrote:
Thanks. (I doubt the VMS ftp server would care about NAT, it's not something the system behind a NAT knows or should care about. It's the NAT router who have to do all the work...)
IIRC unless the FTP server is working is "Passive Mode" port 21 is used just for control, and the server opens a random high-numbered port to which the client connects and the data is transferred over that - so that's where NAT'ing gets in the way.
Almost. In active mode, the ftp server initiates a second connection for data. This is by default on port 20 of the server, and by default to the same port as the control connection of the client. And the client is expected to listen for this specific connection.
However, NAT boxes normally knows this, and actually handles all needed for it to work.
I have no need for FTP on my boxes (I prefer Kermit) so haven't tried particularly hard to get around this problem.
:-)
Well, if your NAT box do something funny, then I'd just go for passive mode, which have a higher chance of working, since in that case, the client also opens the data connection.
Johnny
--
Johnny Billquist || "I'm on a bus
|| on a psychedelic trip
email: bqt at softjar.se || Reading murder books
pdp is alive! || tryin' to stay hip" - B. Idol
On Jan 7, 2015, at 9:03 PM, Johnny Billquist <bqt at softjar.se> wrote:
Thanks. (I doubt the VMS ftp server would care about NAT, it's not something the system behind a NAT knows or should care about. It's the NAT router who have to do all the work )
Usually, but it depends on the protocol. Some protocols FTP is a notorious example carry addresses and/or port numbers inside the application protocol data.
Does this server support passive mode? A lot of NAT servers need passive mode for FTP to work, or work more reliably if you use passive mode. (I just like passive mode because it isn t quite so conceptually broken as the older mode of FTP.)
paul