This years Warpstock 2016 conference took place in Orlando/Florida. Like in the past years we will cover some of the interesting topics.
Samba 4 Client on OS/2 by Paul Smedley
The Samba 4 port started in early 2015 because of the need for SMB 2.0 support and better security support compared to the current releases. Samba 4 uses kerberos for the authentication and the first step was to port the heimdal kerberos implementation to OS/2. Heimdal version 1.5.3 was first released on 07/23/2016.
The next step was to get then kerberos authentication to work with Samba 3.6.x but this was not successful. The only chance left was to use the latest available Samba 4.x source code. Samba 4 however requires a different build system. It uses Waf and Python for the build process and it was a challenge to get it working. With a patched Waf it was possible to build the samba 4 client code to OS/2. The current builds are based on Samba 4.4.7.
Samba 4 has the support for higher SMB protocol versions and it provides better performance compared to the older Samba 3.x.
Like the previous Samba Client for OS/2 the Samba 4 Client is a plugin for Netdrive 3.x. It will also support large files (> 2GB) when it is used with this Netdrive version. Currently there was no work on the samba server code. Depending on the number of interests and time he may work on the samba server code. The Samba server implements some additional modules like the directory – and dns server along with replication. Although the port was started because of an arca noae request the source of the port is available on netlabs.
Files to download
- Samba Plugin ndpsmb V2.0.0 Beta4
- ndpsmb.dll plugin V3.0
- smbcln44.dll V4.4.7
- ldap.dll V2.4.44
- heimdal V1.5.3
- mmap V0.5.1
- libc extention
First stop the NDFS Control service. If you don’t have a previous of the smb plugin installed you need to first install the ndpsmb V2.0.0 Beta4. In case already installed continue to copy the ndpsmb.dll from ndpsmb-3.0-20160930.zip and smbcln44.dll from smbcln44-4.4.7-20161028.zip to x:\ndfs\ndplugs. All other dlls needs to be copied to a path that is already in libpath or create a new one (reboot required). In case all went fine you can now mount a new smbfs resource with the new plugin:
The new plugin is a big step forward because its now possible to access shares with the latest SMB protocols (2.x/3.x) available along with kerberos authentication using heimdal. Because of security issues in 2016 esp. the Badlock bug Microsoft has tightened the security settings of SMB.
A quick test to access a Windows Server 2012 R2 network share using kerberos authentication worked without a problem. Currently there’s a NDFS issue that affects some systems where the NDFS control service (ndctl.exe) is started from config.sys but it can’t load the samba plugin, the current workaround is to start ndctl.exe from startup.cmd. Bug reports for the Samba plugin can be opened on the Netlabs Samba Project page.