Skip to content

Releases: icewind1991/SMB

3.1.1

04 Mar 15:20
26b7b87
Compare
Choose a tag to compare
  • Fix connection->read() when first line is not prompt

3.0.2

04 Mar 15:19
Compare
Choose a tag to compare
  • Fix connection->read() when first line is not prompt

2.0.7

04 Mar 15:17
Compare
Choose a tag to compare
  • Fix connection->read() when first line is not prompt

3.1.0

06 Feb 14:24
Compare
Choose a tag to compare
  • Add option to overwrite default system integration behaviour
  • Add support for appending to a file when using the libsmbclient backend
  • Make network timeout configurable
  • Fix issue when dealing with multibyte unicode paths
  • Fix incorrect filesize being detected when a file has multiple data streams
  • Improved timezone detection
  • Workaround behaviour of some servers that return incorrect data from allinfo

3.0.1

06 Feb 17:10
Compare
Choose a tag to compare
  • Improved timezone detection
  • Workaround behaviour of some servers that return incorrect data from allinfo

2.0.6

06 Feb 16:34
Compare
Choose a tag to compare
  • Workaround behaviour of some servers that return incorrect data from allinfo
  • Improved timezone detection

3.0.0

24 May 10:10
Compare
Choose a tag to compare

Backwards incompatible changes

This release changes the way Server objects are created in a backwards incompatible way.

old:

if (\Icewind\SMB\Server::NativeAvailable()) {
	$server = new \Icewind\SMB\NativeServer($host, $user, $password);
} else {
	$server = new \Icewind\SMB\Server($host, $user, $password);
}

new:

$auth = new \Icewind\SMB\BasicAuth($user, $workgroup, $password);
$serverFactory = new \Icewind\SMB\ServerFactory();

$server = $serverFactory->createServer($host, $auth);

The new ServerFactory will automatically pick the native backend where available..

Additionally the NativeServer, Server and their related classes have been separated into their own namespaces (Icewind\SMB\Native and Icewind\SMB\Wrapped respectively)

New Features

This release adds support for multiple authentication methods, currently the following methods are supported:

  • BasicAuth: basic username/password authentication
  • AnonymousAuth: connect as anonymously
  • KerberosAuth: Use a kerberos ticket to authenticate (note that you'll need to ensure that kerberos ticket is available for php yourself)

You can pick an authentication method by creating an instance of the desired authentication class backend and passing it to the server factory.

2.0.5

28 Mar 14:00
Compare
Choose a tag to compare
  • Minor improvement to error handling during connection

2.0.4

19 Jan 15:03
Compare
Choose a tag to compare
  • Allow overwriting the list of forbidden characters
  • Improve handling of smbclient prompt in some setups
  • Disable automatic fallback to anonymous login
  • Better error message when moving a folder into itself

2.0.3

14 Nov 13:08
Compare
Choose a tag to compare
  • Fix compatibility issue with newer versions of smbclient
  • Fix smb2/smb3 path encoding issue
  • Throw proper error messages on smb version mismatch