VOGONS


EtherDFS - a network drive for DOS

Topic actions

Reply 40 of 109, by DosFreak

User metadata
Rank l33t++
Rank
l33t++

Your best bet would be to make sure your router is compatible with open source router firmware and then request the feature to be added to those.

How To Ask Questions The Smart Way
Make your games work offline

Reply 42 of 109, by mateusz.viste

User metadata
Rank Member
Rank
Member
carlostex wrote on 2022-03-05, 13:03:

Any chance EtherDFS can work in the future mapping USB (samba- or ftp-exposed) drives on a router?

If you want samba, use MSCLIENT... EtherDFS is a different protocol and requires its implementation to be on server-side.

Cyberdyne wrote on 2022-03-05, 16:31:

Why no EtherSVR port to Windows? How hard would it be?

Why: because I am not interested in Windows.
How hard it would be: No idea. Feel free to do it and tell.

carlostex wrote on 2022-03-06, 21:57:

(...) i was merely suggesting that because there would be no need for an extra machine since routers already have a USB disk.

You can do it the other way around: use your own Linux router instead of some commercial SOHO blobs, and then you have the power to install whatever you want on it. At home my router is a light Linux running on a PC-Engine APU4 board. Works flawlessly. EtherDFS included.

http://mateusz.viste.fr | gopher://gopher.viste.fr

Reply 43 of 109, by keenerb

User metadata
Rank Oldbie
Rank
Oldbie

Bit of a necropost but I have encountered an oddity with etherdfs:

I have two drives available for mapping on the host, /mnt/msdos and /mnt/backup:

etherdfs eth0 /mlnt/msdos /mnt/backup

On the client, I have C: and D: physical drives, D: being a CDROM

CDROM listing without etherdfs loaded reports:

GEOS20 <DIR>
ETHERDFS.EXE
ETHFLOP.COM
MTCPCFG.CFG

Then I type etherdfs :: c-e

It reports installed etc. etc. E: -> [C:] on <mac address>

Now when I check my CD drive the directory listing is

GEOS20 <DIR>
. <DIR>
.. <DIR>
4GB_DR <DIR>

Three of the original folders have been replaced with folders from the /mnt/backup host folder, which I didn't even specify as a mount point.

If I specify a later drive letter, like F: instead of E:, the D: drive is unaffected, which is what I'll be doing from now on unless this "bug" (if it is one) gets looked at.

Reply 44 of 109, by Shadow Lord

User metadata
Rank Newbie
Rank
Newbie

Does anyone know if EtherDFS is still in development? The last update on sourceforge is from 2018?

Also a question for those of you using the program regularly: Do EtherDFS drives report the correct free space on the server and LFN (assuming a TSR is loaded fro LFNs) or is it short names with a max 2GB? TIA!

Reply 45 of 109, by javispedro1

User metadata
Rank Member
Rank
Member
Shadow Lord wrote on 2023-02-26, 18:11:

Do EtherDFS drives report the correct free space on the server and LFN (assuming a TSR is loaded fro LFNs) or is it short names with a max 2GB? TIA!

No and no. The network redirector interface only has 16 bits for reporting the disk size, in terms of cluster size, so 32 K * 65 K ~ 2GB. Most DOS versions will start reporting weird values if your network disk reports more than 2GiB anyway.
Also LFN is not supported through redirector interface either. You would need to reimplement a big chunk of LFNDOS.

Reply 46 of 109, by mateusz.viste

User metadata
Rank Member
Rank
Member
Shadow Lord wrote on 2023-02-26, 18:11:

Does anyone know if EtherDFS is still in development? The last update on sourceforge is from 2018?

I created EtherDFS to solve a use case need I had. The current state of EtherDFS fulfills this need perfectly, hence I see no reason for further development at the time being. And I have to admit that I tend to use ethflop more than EtherDFS anyway, because of its simplicity and straightforwardness.

Also a question for those of you using the program regularly: Do EtherDFS drives report the correct free space on the server and LFN (assuming a TSR is loaded fro LFNs) or is it short names with a max 2GB?

javispedro1 already answered this question very accurately so I won't repeat the same, but shortly said: no and no indeed, that's just how DOS is designed.

http://mateusz.viste.fr | gopher://gopher.viste.fr

Reply 47 of 109, by Shadow Lord

User metadata
Rank Newbie
Rank
Newbie
mateusz.viste wrote on 2023-02-26, 20:35:

I created EtherDFS to solve a use case need I had. The current state of EtherDFS fulfills this need perfectly, hence I see no reason for further development at the time being. And I have to admit that I tend to use ethflop more than EtherDFS anyway, because of its simplicity and straightforwardness.

ok. I asked because the readme had indicated a future DOS server version. If the SW is stable and feature complete maybe release a 1.0 version then as opposed to the 0.8?

mateusz.viste wrote on 2023-02-26, 20:35:

javispedro1 already answered this question very accurately so I won't repeat the same, but shortly said: no and no indeed, that's just how DOS is designed.

I thought EtherDFS had its own protocol and server so why would it be limited by DOS? Also if I am running DOS 7 (from win 9x) and I do a dir on a FAT32 drive can see free space larger then 2GB (using Int 21/ah=73h) then why not with other programs? I know for example MS Client is limited because of the SMB version and the client itself. So even running under DOS 7 it does not report larger free space but what is the technical reason behind EtherDFS having the same limitation?

Reply 48 of 109, by mkarcher

User metadata
Rank l33t
Rank
l33t
Shadow Lord wrote on 2023-02-27, 06:16:

I thought EtherDFS had its own protocol and server so why would it be limited by DOS? Also if I am running DOS 7 (from win 9x) and I do a dir on a FAT32 drive can see free space larger then 2GB (using Int 21/ah=73h) then why not with other programs? I know for example MS Client is limited because of the SMB version and the client itself. So even running under DOS 7 it does not report larger free space but what is the technical reason behind EtherDFS having the same limitation?

EtherDFS is a very slim DOS network solution. It uses the network filsystem interface Microsoft introduced around DOS 3.x, and slightly adjusted in DOS 5.0, and just forwards whatever MS-DOS 5.0 requests from the network driver. The limitation is that this interface between MS-DOS and the network driver is limited to 2GB and short file names. The custom network protocol and server just "forward" this interface over Ethernet, just as IDE just forwards the ISA bus over the 40-pin cable. So the "old protocol" that limits EtherDFS is not the network protocol by itself, but the local protocol spoken between MS-DOS and the network driver.

Reply 49 of 109, by Shadow Lord

User metadata
Rank Newbie
Rank
Newbie
mkarcher wrote on 2023-02-27, 06:32:

EtherDFS is a very slim DOS network solution. It uses the network filsystem interface Microsoft introduced around DOS 3.x, and slightly adjusted in DOS 5.0, and just forwards whatever MS-DOS 5.0 requests from the network driver. The limitation is that this interface between MS-DOS and the network driver is limited to 2GB and short file names. ... So the "old protocol" that limits EtherDFS is not the network protocol by itself, but the local protocol spoken between MS-DOS and the network driver.

I see. So potentially could someone write a client/server program (or an SMB client that supports newer SMB versions) which bypasses the MS-DOS director and allows for reporting of >2GB space and LFNs?

Reply 50 of 109, by mateusz.viste

User metadata
Rank Member
Rank
Member
Shadow Lord wrote on 2023-02-27, 06:54:

So potentially could someone write a client/server program (or an SMB client that supports newer SMB versions) which bypasses the MS-DOS director and allows for reporting of >2GB space and LFNs?

Sure, that's technically very much possible and involves hooking up not the MSDOS network redirector, but int 0x21 and reimplementing a good chunk of what the DOS kernel is supposed to do already. This is not the path I chose because I like the elegance of the redirector approach, but IIRC hooking up int 0x21 was what Novell went with back in the 80s (possibly because the redirector interface wasn't mature yet at the time).

About LFNs: it is also possible that there is some undocumented redirector extension that could allow support for LFN. I don't use LFN so I never investigated this. Are CD-ROMs read by DOS 7.x able to show LFNs? It's a honest question. If so, then it might hint that such extension exists since the CDROM driver is also using the network redirector API.

About the 2 GiB limit: note that this EtherDFS limit relates only to the amount of "available" disk space advertised to the client. It does not limit the actual size of an EtherDFS drive, which may just as well be many terabytes. Hence this limitation is, in a sense, purely cosmetic.

BTW, did I mention ethflop already? ethflop is hooking into DOS at a lower level than EtherDFS, hence it should have no troubles with LFNs. That is, I suppose so, never actually tested it since I'm no LFN fan, but ethflop does not know about "files" at all so I see no reason why LFN wouldn't work there.

http://mateusz.viste.fr | gopher://gopher.viste.fr

Reply 51 of 109, by ltning

User metadata
Rank Member
Rank
Member

Tried ethflop; keep getting "bad format" when trying to run exe files from a mounted floppy image. Not sure why yet, any ideas? Also it doesn't support 2M-formatted floppies (kinda obvious, that).. someone should make a flashfloppy -over-the-net thing. :D

The Floppy Museum - on a floppy, on a 286: http://floppy.museum
286-24/4MB/ET4kW32/GUS+SBPro2
386DX-40/20MB/CL5434 ISA/GUSExtreme
486BL-100/32MB/ET4kW32p VLB/GUSPnP/AWELegacy

~ love over gold ~

Reply 52 of 109, by mateusz.viste

User metadata
Rank Member
Rank
Member
ltning wrote on 2023-02-27, 11:19:

Tried ethflop; keep getting "bad format" when trying to run exe files from a mounted floppy image. Not sure why yet, any ideas?

Are you able to run the same exe after copying it to a hard disk? This to exclude that the file is somehow corrupted.
Do you have this problem with all your executables, or is it specific to one application?

http://mateusz.viste.fr | gopher://gopher.viste.fr

Reply 53 of 109, by Shadow Lord

User metadata
Rank Newbie
Rank
Newbie
mateusz.viste wrote on 2023-02-27, 08:36:

Sure, that's technically very much possible and involves hooking up not the MSDOS network redirector, but int 0x21 and reimplementing a good chunk of what the DOS kernel is supposed to do already. This is not the path I chose because I like the elegance of the redirector approach, but IIRC hooking up int 0x21 was what Novell went with back in the 80s (possibly because the redirector interface wasn't mature yet at the time).

Well that is good to know. Maybe someone in the future will create a better client for SMB shares that won't mangle LFNs being accessed from DOS. I am not holding my breath though 😉

mateusz.viste wrote on 2023-02-27, 08:36:

About LFNs: it is also possible that there is some undocumented redirector extension that could allow support for LFN. I don't use LFN so I never investigated this. Are CD-ROMs read by DOS 7.x able to show LFNs? It's a honest question. If so, then it might hint that such extension exists since the CDROM driver is also using the network redirector API.

I don't think this is true. I believe on CD file systems LFNs are handled by the Joliet file system as opposed to the one used by Win9x and later on HDD. So being able to see LFNs on a CDROM does not indicate that there are any hidden settings that can be exploited by the network redirector. Of course this doesn't mean there aren't hidden settings either. I am almost positive that a DOS window under Win9x (I haven't used Win9x in almost 20 years) does provide the correct free space and LFNs but I am not sure the technical reason behind that. I always thought it was because you were no longer using MS-LANMAN to access the shares but instead using the Win9x networking interface.

mateusz.viste wrote on 2023-02-27, 08:36:

About the 2 GiB limit: note that this EtherDFS limit relates only to the amount of "available" disk space advertised to the client. It does not limit the actual size of an EtherDFS drive, which may just as well be many terabytes. Hence this limitation is, in a sense, purely cosmetic.

I know. I was mostly asking because I thought you did not use the director. However, if you are you are basically limited to the same things as the MS clients.

mateusz.viste wrote on 2023-02-27, 08:36:

BTW, did I mention ethflop already? ethflop is hooking into DOS at a lower level than EtherDFS, hence it should have no troubles with LFNs. That is, I suppose so, never actually tested it since I'm no LFN fan, but ethflop does not know about "files" at all so I see no reason why LFN wouldn't work there.

I am aware of ethflop. It is an interesting solution to a very very specific problem so it makes it very limited IMHO. For example you can't even use ethflop to install a multidisk program as there is no mechanism to signal a disk switch on the client or the server. However, if you just need to get one floppy on a system w/o a floppy drive it is perfectly fine.

Thanks for your fine work BTW. Both of these programs are great and are good tools to have in the arsenal of vintage computing!

Reply 54 of 109, by mkarcher

User metadata
Rank l33t
Rank
l33t
Shadow Lord wrote on 2023-02-27, 18:34:
mateusz.viste wrote on 2023-02-27, 08:36:

About LFNs: it is also possible that there is some undocumented redirector extension that could allow support for LFN. I don't use LFN so I never investigated this. Are CD-ROMs read by DOS 7.x able to show LFNs? It's a honest question. If so, then it might hint that such extension exists since the CDROM driver is also using the network redirector API.

I don't think this is true. I believe on CD file systems LFNs are handled by the Joliet file system as opposed to the one used by Win9x and later on HDD. So being able to see LFNs on a CDROM does not indicate that there are any hidden settings that can be exploited by the network redirector.

Mateusz Viste is right: MSCDEX uses the "nerwork redirector" interface (which has been relabelled to "installable file system" interface later) to extend MS-DOS's capabilities to access other kind of file systems than FAT12/FAT16 (or FAT32 in later Win9x editions). MSCDEX implements a driver for the ISO9660 filesystem. If MSCDEX in Windows 9x is able to provide long file names to the MS-DOS kernel, the network redirector interface must be able to communicate long file names between the DOS kernel and MSCDEX.

You are correct, too: Long file names on CDs are stored in the Joliet format, which is an extension to the ISO9660 file system, and completely unlike the way long filenames are stored on FAT filesystems. The decoder for long FAT filenames is part of the FAT filesystem driver included in the MS-DOS kernel. Any kind of non-FAT filesystem does not use that code at all, so it doesn't matter what format long file names on CDs use to deduce whether MSCDEX can sent them through the network redirector interface.

Reply 55 of 109, by keenerb

User metadata
Rank Oldbie
Rank
Oldbie
Shadow Lord wrote on 2023-02-27, 18:34:

I am aware of ethflop. It is an interesting solution to a very very specific problem so it makes it very limited IMHO. For example you can't even use ethflop to install a multidisk program as there is no mechanism to signal a disk switch on the client or the server. However, if you just need to get one floppy on a system w/o a floppy drive it is perfectly fine.

Thanks for your fine work BTW. Both of these programs are great and are good tools to have in the arsenal of vintage computing!

There is a fork/patch to ethflop that lets you ejecte and insert disks from server side. It works very well.

Reply 56 of 109, by davidrg

User metadata
Rank Member
Rank
Member
Shadow Lord wrote on 2023-02-27, 06:54:
mkarcher wrote on 2023-02-27, 06:32:

EtherDFS is a very slim DOS network solution. It uses the network filsystem interface Microsoft introduced around DOS 3.x, and slightly adjusted in DOS 5.0, and just forwards whatever MS-DOS 5.0 requests from the network driver. The limitation is that this interface between MS-DOS and the network driver is limited to 2GB and short file names. ... So the "old protocol" that limits EtherDFS is not the network protocol by itself, but the local protocol spoken between MS-DOS and the network driver.

I see. So potentially could someone write a client/server program (or an SMB client that supports newer SMB versions) which bypasses the MS-DOS director and allows for reporting of >2GB space and LFNs?

This is effectively what the oldest NetWare client (netx) does, which is why Novell called it the NetWare DOS Shell. It's also how Novell was able to support ancient versions of DOS that don't support the network redirector API.

But even the NetWare DOS Client doesn't bother with LFN support or reporting more than 2GB of free space. And Novell clearly put a lot of work into their DOS and Windows 3.x client and continued to support and enhance it right up to the end of the 90s. This suggests to me that it can't be done without a lot of work.

Reply 57 of 109, by Shadow Lord

User metadata
Rank Newbie
Rank
Newbie
davidrg wrote on 2023-02-28, 04:05:

But even the NetWare DOS Client doesn't bother with LFN support or reporting more than 2GB of free space. And Novell clearly put a lot of work into their DOS and Windows 3.x client and continued to support and enhance it right up to the end of the 90s. This suggests to me that it can't be done without a lot of work.

Well the 2GB thing can be a compatibility issue as some people have said. I.E. alot of SW would break if reported free space was > 2GB. We saw the same issues when partition sizes went > 32MB.

In regards to LFN. I don't know. I mean Novell never implemented LFN in their DOS Kernel either and relied on an unreliable TSR. Again this might have been because of compatibility reasons (i.e. older SW wouldn't know what to do with the LFNs) or could have been it wasn't worth it as the market for DOS was dying and it wasn't like there was going to be a continuing influx of DOS SW and utilities that would make use of LFNs (specially given that MS abandoned DOS). Of course if MS had released a DOS 7.0 w/ FAT32, LFN, etc. built in as they had planned originally before Win95 blew up it may have been a completely different world...

Reply 58 of 109, by Shadow Lord

User metadata
Rank Newbie
Rank
Newbie
keenerb wrote on 2023-02-27, 18:57:

There is a fork/patch to ethflop that lets you ejecte and insert disks from server side. It works very well.

I did not know of this fork. Can you please direct me to where I can find more info? Thank you!

Reply 59 of 109, by Marco

User metadata
Rank Member
Rank
Member

Dear all,

just want to confirm that EtherDFS runs fine on bridged networks within VMWare Workstation.
Also want to confirm that it wont work with bridged networks via Wifi as stated here also earlier. VMWare -> bridged to Wifi -> Wifi-LAN-converter -> MSDOS: no success.

🙁

Regards

1) VLSI SCAMP 311 / 386SX25@29 / 16MB / CL-GD5434 / CT2830/ SCC-1&MT32 / Fast-SCSI AHA 1542CF + BlueSCSI v2
2) SIS486 / 486DX/2 66(@80) / 32MB / TGUI9440 / LAPC-I