althonos / fs.smbfs

Pyfilesystem2 over SMB using pysmb
MIT License
29 stars 15 forks source link

smb.smb_structs.ProtocolError: Unknown status value (0xC0000001) in SMB_COM_SESSION_SETUP_ANDX (with extended security) #6

Open adyanth opened 4 years ago

adyanth commented 4 years ago

Here is the traceback

Traceback (most recent call last):
  File "C:/Users/adyah/Desktop/Codes/Projects/Server2Server/local2SMB.py", line 40, in <module>
    send_to_smb(host, username, password, src_fs, filename, remote_path)
  File "C:/Users/adyah/Desktop/Codes/Projects/Server2Server/local2SMB.py", line 21, in send_to_smb
    smb_fs = fs.smbfs.SMBFS(host)
  File "C:\Users\adyah\Desktop\Codes\Projects\Server2Server\venv\lib\site-packages\fs\smbfs\smbfs.py", line 230, in __init__
    self._smb.connect(self._server_ip, port, timeout=timeout)
  File "C:\Users\adyah\Desktop\Codes\Projects\Server2Server\venv\lib\site-packages\smb\SMBConnection.py", line 122, in connect
    self._pollForNetBIOSPacket(timeout)
  File "C:\Users\adyah\Desktop\Codes\Projects\Server2Server\venv\lib\site-packages\smb\SMBConnection.py", line 632, in _pollForNetBIOSPacket
    self.feedData(data)
  File "C:\Users\adyah\Desktop\Codes\Projects\Server2Server\venv\lib\site-packages\nmb\base.py", line 54, in feedData
    self._processNMBSessionPacket(self.data_nmb)
  File "C:\Users\adyah\Desktop\Codes\Projects\Server2Server\venv\lib\site-packages\nmb\base.py", line 75, in _processNMBSessionPacket
    self.onNMBSessionMessage(packet.flags, packet.data)
  File "C:\Users\adyah\Desktop\Codes\Projects\Server2Server\venv\lib\site-packages\smb\base.py", line 144, in onNMBSessionMessage
    if self._updateState(self.smb_message):
  File "C:\Users\adyah\Desktop\Codes\Projects\Server2Server\venv\lib\site-packages\smb\base.py", line 322, in _updateState_SMB2
    raise ProtocolError('Unknown status value (0x%08X) in SMB_COM_SESSION_SETUP_ANDX (with extended security)' % message.status,
smb.smb_structs.ProtocolError: Unknown status value (0xC0000001) in SMB_COM_SESSION_SETUP_ANDX (with extended security)
==================== SMB Message ====================
Command: 0x01 (SMB2_COM_SESSION_SETUP) 
Status: 0xC0000001 
Flags: 0x01 
PID: 0 
MID: 2 
TID: 0 
Data: 9 bytes 
b'090000000000000000' 
==================== SMB Data Packet (hex) ====================
b'fe534d4240000000010000c001000400010000000000000002000000000000000000000000000000b97d00000000f15100000000000000000000000000000000090000000000000000'

What does this mean?

althonos commented 4 years ago

Good question! This error comes from the underlying pysmb so it probably is unrelated to fs.smbfs itself... Can you try to establish a connection directly with pysmb to see if it works for you? If not, you should probably report to them instead.

adyanth commented 4 years ago

Sorry for the delay, was on other projects The SMBConnection needs the following to work successfully

from smb.SMBConnection import SMBConnection
from smb import smb_structs
smb_structs.SUPPORT_SMB2 = True

client_machine_name = 'CLIENT'
conn = SMBConnection(username, password, client_machine_name, server_name, domain = "domain", use_ntlm_v2 = True, is_direct_tcp=True)
conn.connect(server_ip, 139)

So, what do you propose for SMBFS? I am looking at SUPPORT_SMB2, domain, client_machine_name and use_ntlm_v2 being provided in the working scenario.