Revert "[vfs] [posix] SMBFile: fix reading files opened with READ_TRUNCATED flag"

This reverts commit b202cd09426d1ce1e8921b827a84476472cf35fe.

This change is invalid. The whole point of READ_TRUNCATED is to allow
lower layer file systems to return any amount of data less than or
equal to requested size. This is for efficiency reasons. After this
change each request of X bytes from xbmc would result in multiple
network roundtrips
smb: set workgroup using standard api

smb.conf file is only written once, thus changes in GUI will not have any effect
smb: don't add : for empty password

libsmbclient parser can't handle that
smb: drop try/catch of exceptions from C api

These won't throw catchable exceptions
smb: eliminate smb.Init() calls in non static functions

Init is called on CFile constructor.
smb: factor out stat to __stat64 conversion

We have all other conversions in CUtil so put this one there as well
smb: drop old (unused) purge code

This was only needed before libsmbclient kept to one session per server.
smb: use utility function to convert time_t to local file time
smb: make sure we deinit samba before global destructor

Library can have been unloaded by that point
url: share name should always be updated

Sharename is used in url authentication logic
smb: eliminate  unused while loop in OpenDir

We loop this at outer level now
Merge pull request #5740 from elupus/samba_fixes

Samba fixes and cleanup for helix