[Samba] samba sessions dying - NT_STATUS_INVALID_PARAMETER

John McMillan jmcmillan1873 at gmail.com
Thu May 28 16:56:06 GMT 2009


Dear samba users & developers,

I was hoping to seek some assistance on a problem I’ve been
investigating for a number of weeks now.

A brief summary would be that we have a number of Windows servers
accessing UNC paths. In turn, these servers intermittently lose their
ability to access the UNC paths. When this happens, restarting the
application (IIS6 / 7) on the affected windows webserver resolves the
issue.killing the smbd daemon serving the request resolves the issue
also.

A more detailed description of the solution would be….

2 x rhel4 (update 7) ES servers in a veritas cluster (VCS 5mp3)
running samba 3.0.28.

6 x Windows* web servers (Vmware guests)

2 x Windows* domain controllers, all servers are a member of the same domain.

.net application running in IIS7 web content exists on the rhel4
cluster, available to the web servers via samba.

We don’t actually mount the share as a drive, IIS accesses the UNC
path as required.

the issue doesn’t appear to be load related, it’s as likely to happen
at 2am with ten’s of sessions as it is at 2pm with hundreds of
sessions.



*I omitted the version of windows because I have two virtually
identical solutions; client1 uses windows 2003 and client2 uses
windows 2008.

Client1 has physical windows 2003 servers, as well as vmware windows
2003 servers.

Client2 has only vmware windows 2008 servers.

These clients are related and many of the same developers have been
involved in coding the .net application on each solution.



A more detailed account of the problem….

The problem occurs on only one web server at a time (could be anyone)
, i.e. 5 windows servers are still happily accessing the same share
while 1 is…. incapacitated.

When the server can’t access the share…

* We’ve found that we can access the share using ip rather than host
name, i.e. \\123.34.45.56\share works but \\servername\share doesn’t
* On the rhel4 server we can use netstat to see the session between
rhel4-smb-server and win-2k8-client in ‘ESTABLISHED’ state.
* Using strace / tcp dump / smb debug level 10 logs, we can see that
when the session is not working, windows is offering uid and gid 0
rather than the user accounts we’d expect, it
doesn’t include details of NativeLanMan, NativeOS or domain info
either. Samba objects at this point with NT_STATUS_INVALID_PARAMETER
* We've captured samba logs when the issue occurs we see this as the
problem starts,

      [2009/05/19 17:22:11, 3] smbd/error.c:error_packet_set(106)
      error packet at smbd/sesssetup.c(1102) cmd=115 (SMBsesssetupX)
NT_STATUS_INVALID_PARAMETER

This seems to point to this section of code in sesssetup.c

  if (!vuser) {
                data_blob_free(&blob1);
                return ERROR_NT(nt_status_squash(NT_STATUS_INVALID_PARAMETER));
        }

I'm not sure why the value of 'vuser' would suddenly become invalid, any ideas?

Any help or advice is greatly appreciated.

Kind regards,


More information about the samba mailing list