Network redirector issue with \pipe\srvsvc

I have developed a Windows network redirector and UNC paths in general work fine with it, however I am having an issue on Windows 7/Server 2003 with clicking on html files in explorer which launches Internet explorer but IE 9 displays an error that it can’t display the webpage. IE tries to open the pipe \Server\pipe\srvsvc. My redirector doesn’t support the srvsvc API, so in my handler for IOCTL_REDIR_QUERY_PATH I have tried returning the standard errors listed by Microsoft as acceptable errors and I have also tried returning success but none seem to work. Is there a way to tell the OS or the application that my network redirector does not support \pipe\srvsvc ? Or is it required that all network redirectors support this API ? I would like to avoid having to handle all the requests on this pipe for enumerating shares, etc.

Some more background, currently my network redirector is a legacy driver, in that it doesn’t support IOCTL_REDIR_QUERY_PATH_EX, it only supports IOCTL_REDIR_QUERY_PATH. This seems to work ok on Windows XP with my redirector. Also I have seen this same issue with Microsoft Outlook, if you click on a hyperlink to a UNC path located on my network redirector then Outlook seems to spin for about 15 seconds and then displays an error. It seems that maybe it’s trying other network redirectors to see if they can open \server\pipe\srvsvc and when they all fail it then displays an error. In general I can display UNC folders like \server\share\folder just fine, it’s just that it seems IE 9 won’t work and clicking from within Office doesn’t work either.

Any help or insight would be appreciated.

Thanks,
John

John,

If you do not support the srvsvc pipe interface you will find various
issues like this, some more annoying than others. If I recall there are
several of the ‘net use’ commands which utilize this to retrieve some of
the information displayed as well as several Microsoft applications.

I have not found a method to indicate to the applications to utilize a
different interface, you just need to support them or document the failures.

Pete

On 8/12/2012 1:03 PM, xxxxx@yahoo.com wrote:

I have developed a Windows network redirector and UNC paths in general work fine with it, however I am having an issue on Windows 7/Server 2003 with clicking on html files in explorer which launches Internet explorer but IE 9 displays an error that it can’t display the webpage. IE tries to open the pipe \Server\pipe\srvsvc. My redirector doesn’t support the srvsvc API, so in my handler for IOCTL_REDIR_QUERY_PATH I have tried returning the standard errors listed by Microsoft as acceptable errors and I have also tried returning success but none seem to work. Is there a way to tell the OS or the application that my network redirector does not support \pipe\srvsvc ? Or is it required that all network redirectors support this API ? I would like to avoid having to handle all the requests on this pipe for enumerating shares, etc.

Some more background, currently my network redirector is a legacy driver, in that it doesn’t support IOCTL_REDIR_QUERY_PATH_EX, it only supports IOCTL_REDIR_QUERY_PATH. This seems to work ok on Windows XP with my redirector. Also I have seen this same issue with Microsoft Outlook, if you click on a hyperlink to a UNC path located on my network redirector then Outlook seems to spin for about 15 seconds and then displays an error. It seems that maybe it’s trying other network redirectors to see if they can open \server\pipe\srvsvc and when they all fail it then displays an error. In general I can display UNC folders like \server\share\folder just fine, it’s just that it seems IE 9 won’t work and clicking from within Office doesn’t work either.

Any help or insight would be appreciated.

Thanks,
John


NTFSD is sponsored by OSR

For our schedule of debugging and file system seminars visit:
http://www.osr.com/seminars

To unsubscribe, visit the List Server section of OSR Online at http://www.osronline.com/page.cfm?name=ListServer


Kernel Drivers
Windows File System and Device Driver Consulting
www.KernelDrivers.com
866.263.9295

You need a user mode network provider DLL.


Maxim S. Shatskih
Windows DDK MVP
xxxxx@storagecraft.com
http://www.storagecraft.com

wrote in message news:xxxxx@ntfsd…
>I have developed a Windows network redirector and UNC paths in general work fine with it, however I am having an issue on Windows 7/Server 2003 with clicking on html files in explorer which launches Internet explorer but IE 9 displays an error that it can’t display the webpage. IE tries to open the pipe \Server\pipe\srvsvc. My redirector doesn’t support the srvsvc API, so in my handler for IOCTL_REDIR_QUERY_PATH I have tried returning the standard errors listed by Microsoft as acceptable errors and I have also tried returning success but none seem to work. Is there a way to tell the OS or the application that my network redirector does not support \pipe\srvsvc ? Or is it required that all network redirectors support this API ? I would like to avoid having to handle all the requests on this pipe for enumerating shares, etc.
>
> Some more background, currently my network redirector is a legacy driver, in that it doesn’t support IOCTL_REDIR_QUERY_PATH_EX, it only supports IOCTL_REDIR_QUERY_PATH. This seems to work ok on Windows XP with my redirector. Also I have seen this same issue with Microsoft Outlook, if you click on a hyperlink to a UNC path located on my network redirector then Outlook seems to spin for about 15 seconds and then displays an error. It seems that maybe it’s trying other network redirectors to see if they can open \server\pipe\srvsvc and when they all fail it then displays an error. In general I can display UNC folders like \server\share\folder just fine, it’s just that it seems IE 9 won’t work and clicking from within Office doesn’t work either.
>
> Any help or insight would be appreciated.
>
> Thanks,
> John
>

> I have not found a method to indicate to the applications to utilize a

different interface

NP DLL is the thing.

Actually, ntlanman.dll (the NP DLL for SMB) is the client which uses \pipe\srvsvc


Maxim S. Shatskih
Windows DDK MVP
xxxxx@storagecraft.com
http://www.storagecraft.com

thanks for the response, however I don’t understand.? I have a usermode Network provider DLL that handles all the standard functions like add connection/enum, etc.? However creates on pipes are handled at the FSD level by the QUERY_PATH API.?? The SMB redirector which typically handles srvsvc will not understand what shares I have mapped or how to enum them unless I am missing something ?
?
thanks,
– john


From: Maxim S. Shatskih
To: Windows File Systems Devs Interest List
Sent: Sunday, August 12, 2012 11:09 PM
Subject: Re:[ntfsd] Network redirector issue with \pipe\srvsvc

> I have not found a method to indicate to the applications to utilize a
> different interface

NP DLL is the thing.

Actually, ntlanman.dll (the NP DLL for SMB) is the client which uses \pipe\srvsvc


Maxim S. Shatskih
Windows DDK MVP
xxxxx@storagecraft.com
http://www.storagecraft.com


NTFSD is sponsored by OSR

For our schedule of debugging and file system seminars visit:
http://www.osr.com/seminars

To unsubscribe, visit the List Server section of OSR Online at http://www.osronline.com/page.cfm?name=ListServer

Simply implementing an NP DLL will not address this. There are still
calls which are directed at the srvsvc and wkssvc interface which are
handled outside of an NP DLL.

Pete

On 8/13/2012 11:39 AM, Maxim S. Shatskih wrote:

> I have not found a method to indicate to the applications to utilize a
> different interface

NP DLL is the thing.

Actually, ntlanman.dll (the NP DLL for SMB) is the client which uses \pipe\srvsvc


Kernel Drivers
Windows File System and Device Driver Consulting
www.KernelDrivers.com
866.263.9295

Just looked at the notes of my similar long-ago project of early 2000ies.

At least some standard Windows components (not necessary IE9) do assume that SMB is the only possible redirector. On some old Windows versions (w2k or XP Gold/SP1 - the notes on this are lost) there was a similar issue like:

  • use “start \server\path” on a custom redir
  • then call “Properties” context menu item for some file
  • this causes the open of “pipe\srvsvc” to arrive to the custom redir’s CREATE path
  • the thing is that there is a shell extension of rshx32.dll which is related to “Security” property page on files, which assumes that any UNC path is an SMB one and call SMB-specific API of netapi32!NetServerGetInfo for all UNC paths.

The solution was IIRC to fail all CREATE for “pipe*” in the redir.


Maxim S. Shatskih
Windows DDK MVP
xxxxx@storagecraft.com
http://www.storagecraft.com

“John Glavin” wrote in message news:xxxxx@ntfsd…
thanks for the response, however I don’t understand. I have a usermode Network provider DLL that handles all the standard functions like add connection/enum, etc. However creates on pipes are handled at the FSD level by the QUERY_PATH API. The SMB redirector which typically handles srvsvc will not understand what shares I have mapped or how to enum them unless I am missing something ?

thanks,
– john

From: Maxim S. Shatskih
To: Windows File Systems Devs Interest List
Sent: Sunday, August 12, 2012 11:09 PM
Subject: Re:[ntfsd] Network redirector issue with \pipe\srvsvc

> I have not found a method to indicate to the applications to utilize a
> different interface

NP DLL is the thing.

Actually, ntlanman.dll (the NP DLL for SMB) is the client which uses \pipe\srvsvc


Maxim S. Shatskih
Windows DDK MVP
xxxxx@storagecraft.com
http://www.storagecraft.com


NTFSD is sponsored by OSR

For our schedule of debugging and file system seminars visit:
http://www.osr.com/seminars

To unsubscribe, visit the List Server section of OSR Online at http://www.osronline.com/page.cfm?name=ListServer