far2l icon indicating copy to clipboard operation
far2l copied to clipboard

SMB error 60 on MacOS

Open greatvovan opened this issue 1 month ago • 6 comments

I am struggling to connect to an SMB share.

If working directory is not specified, the error is

Image

Log:

OnChar: acsm RETURN raw=24 code=d uni=d "?" ts=109897804 lke=1
SaveScreen::RestoreArea 9 2 79 18 
SaveScreen::RestoreArea 9 2 77 17 
NetRocks::GetFindData ''
NetRocks: starting broker '/Applications/far2l.app/Contents/MacOS/Plugins/NetRocks/plug/NetRocks-SMB.broker' '17' '20' in '/Applications/far2l.app/Contents/MacOS/Plugins/NetRocks/plug/'
55333: HostRemoteBrokerMain: BEGIN
NetRocks::OpBase('NAS'): count=0 all_total=0
NetRocks::ValidateLocationDirectory - dir: ''
NetRocks::GetFindData '<NAS>'
CurrentSiteDir: out='.'
SMBDirectoryEnumer: 'smb://192.168.10.10'

OnKeyUp: acsm RETURN raw=24 code=d uni=d "?" ts=109897915
ConsoleInput::Enqueue: ncs e la lc sh ra rc VK_RETURN "?" UP, 0 d d 1c
55333: Directory open error - smb://192.168.10.10 (60)
53964: Directory open error - smb://192.168.10.10 (60)
NetRocks::OpBase('.', -1): DispatchInterThreadCalls returned 1
SaveScreen::SaveArea 9 5 77 15
SaveScreen::SaveArea 9 5 79 16

If working directory is specified (Temp), the error is

Image
OnChar: acsm RETURN raw=24 code=d uni=d "?" ts=110031072 lke=1
SaveScreen::RestoreArea 9 2 79 18 
SaveScreen::RestoreArea 9 2 77 17 
NetRocks::GetFindData ''
NetRocks: starting broker '/Applications/far2l.app/Contents/MacOS/Plugins/NetRocks/plug/NetRocks-SMB.broker' '17' '20' in '/Applications/far2l.app/Contents/MacOS/Plugins/NetRocks/plug/'
55525: HostRemoteBrokerMain: BEGIN
NetRocks::OpBase('NAS'): count=0 all_total=0
NetRocks::ValidateLocationDirectory - dir: 'Temp'

OnKeyUp: acsm RETURN raw=24 code=d uni=d "?" ts=110031156
ConsoleInput::Enqueue: ncs e la lc sh ra rc VK_RETURN "?" UP, 0 d d 1c
55525: Get mode error (60)
53964: Get mode error (60)
NetRocks::OpBase('Temp', -1): DispatchInterThreadCalls returned 1
SaveScreen::SaveArea 8 5 79 15
SaveScreen::SaveArea 8 5 81 16

Finder is able to connect to the share from the same computer with the same username/password. Other clients on the network are able to connect with the same username/password. Connecting to other SMB servers from far2l also does not work.

Please help to troubleshoot, the error messages are very vague and cryptic. What is the error code 60? What dependencies can I check?

greatvovan avatar Nov 13 '25 09:11 greatvovan

  1. Do you use the most recent version of far2l? I have added some debug logging recently, it might be helpful.
  2. Will you be able to build far2l from sources? Troubleshooting will probably involve adding more debug prints to NetRocks SMB subsystem.

russiandesman avatar Nov 13 '25 14:11 russiandesman

  1. I am using v2.7.0 BETA from GitHub Releases on MacOS 26.1 (Silicon). I used this method to enable logging. Is there any extra debug logging I can activate?
  2. As for building from sources, I can try of course, but this might be quite a pathetic spectacle. Just making a sanity check – has anyone witnessed NetRocks working with SMB under MacOS? Does NetRocks provide an alternative implementation of SMB client that is independent from what's built-in into MacOS?

greatvovan avatar Nov 13 '25 21:11 greatvovan

@greatvovan I can confirm: the packaged v2.7.0 cannot open SMB shares, while a manually built v2.7.0 works correctly. Seems that the package contains some stub instead of the full libsmbclient with required Samba dependancies.

What fixed it for me:

  1. install samba, e.g. via homebrew brew install samba
  2. Change the inner link to the full version of libsmbclient (adjust the path if needed) ln -sf /opt/homebrew/lib/libsmbclient.dylib /Applications/far2l.app/Contents/Frameworks/libsmbclient.dylib
  3. Restart far2l and check

exkrexpexfex avatar Nov 16 '25 12:11 exkrexpexfex

@elfmz how the .dmg files are created?

exkrexpexfex avatar Nov 16 '25 12:11 exkrexpexfex

cpack Just run it after make completion in same directory. It packs everything into dmg, so it must contain libsmbclient.dylib that was on system

elfmz avatar Nov 16 '25 12:11 elfmz

@exkrexpexfex linking the proper lib helped! Thanks a lot.

@elfmz, I am guessing, the question is what version of that lib gets packaged on GitHub agents. In the package, the above lib is a symlink:

% ls -lah far2l.app/Contents/Frameworks/libsmbclient.dylib
lrwxr-xr-x  1 vr  admin    29B Oct 26 01:56 far2l.app/Contents/Frameworks/libsmbclient.dylib -> ../MacOS/libsmbclient.dylib.0

where the actual file is

-rwxr-xr-x@ 1 vr  admin    10M Oct 26 01:56 far2l.app/Contents/MacOS/libsmbclient.dylib.0

It's drastically different in size from the lib installed by Homebrew:

-r--r--r--  1 vr  staff   277K Nov 16 19:59 /opt/homebrew/Cellar/samba/4.23.3/lib/libsmbclient.0.8.1.dylib

So, maybe we just need to make sure proper libraries get into the application package.

greatvovan avatar Nov 17 '25 04:11 greatvovan