- 28 Aug, 2021 1 commit
-
-
Robert Sprowson authored
Rather than turning any untyped file into ",lxa" suffix (and in the reverse direction giving the base address of the Kernel back), support ",llllllll-xxxxxxxx" style suffixes like RPCEmu does in order to preserve the full load and execution addresses. Xlate.c: Extra code to parse the suffix, and simplification of existing suffix checkers. CoreFn.c/Xlate.h: Need to pass on the exec address too for when creating new files via Xlt_AddROType. Makefile/LanMan_MH: Case of CMHG file changed to match sources. Version 2.68. Tagged as 'OmniLanManFS-2_68'
-
- 11 Jul, 2020 1 commit
-
-
Colin Granville authored
Detail: n_names in Func_ReadDir1 can be larger than an unsigned short which cause problems when cast to an unsigned short for SMB notably 7Backup would go into an infinite loop. Other parameters to Func_ReadDir1 sanity checked. Admin: Tested with 7Backup from 7thSoftware and compiling and cleaning OmniLanManFS sources over LanManFS Version 2.65. Tagged as 'OmniLanManFS-2_65'
-
- 16 May, 2020 1 commit
-
-
Colin Granville authored
Detail: Rewrite of directory enumeration so that when directory trees are deleted when they are completely deleted. Modified fsentry_func in CoreFN.c so that the ReadDirectory reason codes call the new Func_ReadDir1 which uses SMBFind_EnumDir implemented in SMB.c and SMBfind.h Admin: Tested with Windows and Samba on Armbian. Version 2.64. Tagged as 'OmniLanManFS-2_64'
-
- 19 Jan, 2014 1 commit
-
-
Robert Sprowson authored
CoreFn.c: The size returned by OS_File 5 might not match the size shown in the Filer viewer (or via *EX) because the last cached version was being returned. This would manifest itself as an error from !Edit if the file on the server had grown since last queried, when loading the file the amount of memory reserved was for the smaller (stale cache copy size). The name cache is now always flushed on exit from the FileSwitch functions, this doesn't alter performance because the size was already being queried across the network, it was just that the result was overridden by the cached copy. LanMan.c: Be more robust and only capture the default driver name when it starts up. This could be a problem if LanManFS starts after the ethernet driver, and the value of Inet$EtherType is unset. When the driver dies LanManFS would have taken that name as the default - leading to "Bad parameter" when trying to connect to a share. Tested on IOMD with WinXP SP3. Version 2.44. Tagged as 'LanManFS-2_44'
-
- 03 Oct, 2013 1 commit
-
-
Robert Sprowson authored
Unused LMFiler put in the attic. As LanMan has historically put its resources into ThirdPart/OmniClient this component has no ROM resources phase - it still registers the resources at run time. Version 2.40. Tagged as 'LanManFS-2_40'
-
- 30 Sep, 2013 1 commit
-
-
Robert Sprowson authored
Fixed up a couple of trivial warnings with the stricter checking. Removed OmniS_FastMultiply64 and rewrote the function in C, this allows the compiler to spot and use UMULL on architectures supporting that instruction. Tested in a RAM build against a WinXP SP3 server with a drive > 4GB. Version 2.39. Tagged as 'LanManFS-2_39'
-
- 11 Nov, 2012 1 commit
-
-
Robert Sprowson authored
Internally LanManFS was representing file offsets and data lengths as signed numbers, while in general this doesn't matter (they are passed through opaquely as just numbers and not manipulated) in a couple of places they were being used as while () loop exit conditions. Function WriteZeroes (used when extending a file via OS_Args) therefore never performed the call to SMB_Write when beyond 2G because the loop condition was never met. Additionally, it was literally transferring buffers of zeros across the network which is unnecessary as the server is documented as doing a zero fill itself, this represents at least a x40 speed up (on a slow 1MB/s drive write speed at the server end) or more. Changed offset & lengths from int to uint. Added the earlier CIFS spec (the later copy is missing section 5 for some reason) to docs. Version 2.38. Tagged as 'LanManFS-2_38'
-
- 01 Aug, 2009 1 commit
-
-
Robert Sprowson authored
Detail: Added an extra check after the Xlate path resolution code so that the case of the path given to resolve is honoured. This now means that the strcmp() done in SMB_Rename fails and the rename is actually sent to the server. Before "*rename test Test" would have the path resolved and since 'test' already existed both names would be the same, in this example something like "*rename A:\test A:\test" would result. Admin: Made the non LONGNAMES version compile again (not tested). Removed local definitions of FSControl reason codes, uses Interface header now. Made the case of #includes match CVS to allow future compilation on a case sensitive system. Deleted unused "Version" header. Version 2.34. Tagged as 'LanManFS-2_34'
-
- 19 Jul, 2009 1 commit
-
-
Robert Sprowson authored
Detail: When the underlying FS is NTFS, eg. WinXP Pro, the requested resume keys for a directory search are always zero - this is passed back via OSGBPB and on the next call it triggers a new search. So we get stuck in an infinite loop. Now checks for a resume key stuck at zero, and makes a fake one static to the search context then sets the continuation bit in the SMB_FIND_NEXT call because the server returning the duff key remembers the position. Dir_CallbackFn could return with "taken" undefined. Move a few lines higher. Missing "#else" added to CHECK_ARMBOOT_EXISTS so if this is disabled no further attempt is made to find !ArmBoot. Couple of typos corrected. Spelling of "disk" changed to "disc" in an error message. Admin: Tested with XP Pro SP3 with NTFS, directories which previously hung the filer now open correctly. Checked with XP Home SP3 with FAT32 to verify behaviour unchanged from 2.32. Note, with large directories the initial path translation triggers a dir search too which takes ages compared with the actual number of entries returned. This could be cached to make counting far faster. Version 2.33. Tagged as 'LanManFS-2_33'
-
- 15 Apr, 2009 1 commit
-
-
Ben Avison authored
Detail: Too many to list here: see doc/RPSChanges. Admin: Received from Rob Sprowson approx 2009-02-08. Builds, but not tested by ROOL. Version 2.32. Tagged as 'LanManFS-2_32'
-
- 07 Jan, 2004 1 commit
-
-
Ben Avison authored
> Further mods to make sure that directory naming/renaming cannot attach > the ,xxx filetyping. Version 2.28. Tagged as 'LanManFS-2_28'
-
- 19 Dec, 2003 1 commit
-
-
Ben Avison authored
Update from jwb - no longer appends ,xxx to filenames on server if the filetype can already be determined from the file extension. Version 2.27. Tagged as 'LanManFS-2_27'
-
- 16 Jan, 2003 1 commit
-
-
Robert Sprowson authored
Directory rename fixed - the mask being passed by the rename routine didn't have the ATTR_DIR bit set.Discovered this after reading lots of the spec which is also now included here in /doc. Copying files out of LanManFS filer "forgot" their filetype even though they appeared right in the filer,fixed. A stray debugging printf removed,along with one compiler warning. New sprites (yuck) to match !Omni. Reordered the shutdown in two places,first Omni_Shutdown bins the mounts lists which SMB_Shutdown uses.Second in NetBEUI mode the announcement that a protocol has terminated goes *after* the shutdown - otherwise you sit around for about 20s wondering where the link has gone. Version 2.25. Tagged as 'LanManFS-2_25'
-
- 01 Mar, 1999 1 commit
-
-
Stewart Brodie authored
Fix for ./.. files in short filename shares. Long multiply now provided in assembler. Detail: *LMLS is a new filesystem-specific command which performs the same task as "smbclient -L" does under UNIX - ie. listing all the shares available on the specified host. When enumerating the shares on a remote server, LanManFS now remembers all the printers, IPC, device and disc shares (for *LMLS to output). The 32x32->64 multiply routine is now provided in assembler instead of the previous huge amount of obscure C taken from NSPRLib. This is more understandable (and almost certainly far smaller and quicker and doesn't need a hack to stop the compiler mis-optimising it!) Old short filename shares still had problems with the . and .. file filtering. Programmer fault there - should've let the compiler do the optimisations :-) Server info string fixed to byte-reverse the port numbers when printing the string into the info buffer. Now claims to be talking to port 139 as it should. Admin: Tested in general desktop use for several days, plus experimental versions tested in other boot ROMs. Version 2.03. Tagged as 'LanManFS-2_03'
-
- 18 Feb, 1999 1 commit
-
-
Stewart Brodie authored
Detail: Any filename starting with . was being hidden. Admin: Tested. Confirmed . and .. are not there but files such as .rhosts are visible. Version 2.01. Tagged as 'LanManFS-2_01'
-
- 16 Feb, 1999 1 commit
-
-
Stewart Brodie authored
Support for spaces in machine names. Merge of sbrodie_LanManFS_dev branch to trunk. Detail: LanManFS 2.00 supports the "NT LM 0.12" protocol, enabling it to use long filenames on mounted shares. Admin: Supporting documentation: 1215,256/FS: LanManFS Software Functional Specification. Same as LanManFS-1_87_1_1_1_1_2_13. Version 2.00. Tagged as 'LanManFS-2_00'
-
- 03 Dec, 1998 1 commit
-
-
Stewart Brodie authored
RiscOS/Sources/Networking/LanManFS is now locked out. The rest of Omni will be imported at a later date. Version 1.87, tagged as LanManFS-1_87
-