Windows Search Protocol for samba share

Jean-Daniel FISCHER jeandaniel.fischer at gmail.com
Wed Mar 27 13:09:46 MDT 2013


Hi,

With the log, I managed to trace the SMBTrans call on the pipe
<\PIPE\MsFteWds> to the function  "named_pipe" in ipc.c. It appears that
the function is checking the named pipe name against a specific list
(LANMAN, WKSSVC, SRVSVC, WINREG, SAMR and LSARPC). If the pipe is not in
this list it return NT_STATUS_NOT_SUPPORTED.

I will look into developping a patch that solve my problem.

The function code :
static void named_pipe(connection_struct *conn, uint64_t vuid,
       struct smb_request *req,
       const char *name, uint16 *setup,
       char *data, char *params,
       int suwcnt, int tdscnt,int tpscnt,
       int msrcnt, int mdrcnt, int mprcnt)
{
DEBUG(3,("named pipe command on <%s> name\n", name));

if (strequal(name,"LANMAN")) {
api_reply(conn, vuid, req,
  data, params,
  tdscnt, tpscnt,
  mdrcnt, mprcnt);
return;
}

if (strequal(name,"WKSSVC") ||
    strequal(name,"SRVSVC") ||
    strequal(name,"WINREG") ||
    strequal(name,"SAMR") ||
    strequal(name,"LSARPC")) {

DEBUG(4,("named pipe command from Win95 (wow!)\n"));

api_fd_reply(conn, vuid, req,
     setup, (uint8_t *)data, params,
     suwcnt, tdscnt, tpscnt,
     mdrcnt, mprcnt);
return;
}

if (strlen(name) < 1) {
api_fd_reply(conn, vuid, req,
     setup, (uint8_t *)data,
     params, suwcnt, tdscnt,
     tpscnt, mdrcnt, mprcnt);
return;
}

if (setup)
DEBUG(3,("unknown named pipe: setup 0x%X setup1=%d\n",
 (int)setup[0],(int)setup[1]));

reply_nterror(req, NT_STATUS_NOT_SUPPORTED);
return;
}

Best regards,

Jean-Daniel FSICHER

2013/3/25 Volker Lendecke <Volker.Lendecke at sernet.de>

> On Sat, Mar 23, 2013 at 04:03:39PM +0100, Jean-Daniel FISCHER wrote:
> > Hi,
> >
> > @Alexander: Thanks for sharing your experience. I hope, I can manage to
> > find some work around with the help out here :)
> >
> > I joined the wireshark capture, the smbd full log and my smb.conf.
> >
> > For reference: HYPERION is the Windows 8 client and GAIA is the
> standalone
> > server that host samba.
> >
> > Best regards,
> >
> > Jean-Daniel FISCHER
> >
> > PS: this time with reasonable size for log file ;)
>
> Sorry, but neither the log file nor the wireshark capture
> contain the open attempt. Log files may be large, but they
> are required to debug this issue.
>
> With best regards,
>
> Volker Lendecke
>
> --
> SerNet GmbH, Bahnhofsallee 1b, 37081 Göttingen
> phone: +49-551-370000-0, fax: +49-551-370000-9
> AG Göttingen, HRB 2816, GF: Dr. Johannes Loxen
> http://www.sernet.de, mailto:kontakt at sernet.de
>


More information about the samba-technical mailing list