0

We have devices that can sync their data with an ftp server.

Each device should contain their own set of data (video files). We do not want to duplicate this data for each device.

I was thinking along the lines of faking the ftp file list repsonse and rerouting each file request to another location using something similar to an httphandler. This way we only have to host our video files on one location and each device will still be able to get their own "set".

sftp is a "should have" for this scenario.

I tried searching anything along the lines of "ftp handler" but have not come up with any helpful results.

Sjors Miltenburg
  • 2,540
  • 4
  • 33
  • 60

2 Answers2

2

SUSE used to have a product (not written in C# though, and only for Linux) that does exactly what you want, the now abandoned Proxy Suite. I can confirm it works but I was never satisfied with its performance. Check it out, it might at least give you some ideas to work with should you want to develop such a contraption yourself.

fvu
  • 32,488
  • 6
  • 61
  • 79
1

Is it possible to emulate an ftp server?

No, it is not.

I was thinking along the lines of faking the ftp file list repsonse and rerouting each file request to another location using something similar to an httphandler.

Do it.

Te problem is that this is not "faking", your server IS a FTP server implementing the FTP protocol. A "Fake" is impossible logically - either you implement the protocol, then you are a FTP server, or you do not, then you are not.

I tried searching anything along the lines of "ftp handler" but have not come up with any helpful results.

Google for "rfc ftp" and take it from there. That is RFC 959 and likely a dozen other ones. http://de.wikipedia.org/wiki/File_Transfer_Protocol lists 5 relevant RFC - 959, 1579, 2228, 2428 and 2640.

Alternatively looking for a programmable proxy may work - it is not that common, though, people seem to use HTTP more these days for file transfer, or system intrinsic protocols that have other features.

Beska
  • 12,445
  • 14
  • 77
  • 112
TomTom
  • 61,059
  • 10
  • 88
  • 148
  • For the record, I don't think what you wrote in your answer was remotely harsh, @TomTom. You gave the perfectly proper answer, and explained why what you describe is not "faking". It might seem like semantics, but it's always odd to me that programmers aren't more careful about that... Anywho; the comments above *regarding* the perception of harshness were unnecessary, so I've killed them all. – Andrew Barber Jun 23 '14 at 15:44