Hi there !
Had the same problem... but solved it
in fact it IS permission related...
WEBsrvr nt5 + Apache/1.3.24 (Win32) PHP/4.3.4RC3-dev
WEBsrvr access a share on SMBsrvr with opendir()
$d = opendir('\\SMBsrvr\whatever');
Warning: opendir(\\SMBsrvr\whatever): failed to open dir: Invalid
argument in C:\Inetpub\www\script.php on line x
--`this is not a usefull warning !`
$fp = fopen('\\SMBsrvr\whatever\file.ext','rb');
Warning: fopen(\\SMBsrvr\whatever\file.ext): failed to open stream:
Permission denied in C:\Inetpub\www\script.php on line y
--`hmm, hmm, more interresting...`
At this point had to investigate a bit more:
Apparently apache + php know that \\SMBsrvr\whatever exists and that it
is a valid directory ressource...
Did some packet log on SMBsrvr:
WEBsrvr sends a SMB `Tree Connect AndX Request` using nullSession
SMBsrvr replies by an ACCESS_DENIED
SMBsrvr doesn't allow nullSession...
but why WEBsrvr tries to connect using nullSession ?
because Apache is running as LocalSystem
`Windows NT - LocalSystem:
The service has limited access to network resources, such as shares and
pipes, because it has no credentials and must connect using a null
session. The following registry key contains the NullSessionPipes and
NullSessionShares values, which are used to specify the pipes and shares
to which null sessions may connect:
Alternatively, you could add the REG_DWORD value RestrictNullSessAccess
to the key and set it to 0 to allow all null sessions to access all
pipes and shares created on that machine.`
Either you allow the host of share to accept nullSessions
or you create an account with enough privileges on the apache host and
when in mmc/Services/Apache/Connexion "Open a session as" - use the
newly created account...
All of this is true for Apache, but it should be 'approximatively' the
same concept for IIS...
a few references for this 'bug' (that is not)
attn to: firstname.lastname@example.org
there are a lot of bug reports for this local config. problem
maybe an addendum in the documentation could be usefull...
sorry for my bad english...