Re: Problem with readdir and ssh2 [message #180396 is a reply to message #180395] |
Thu, 07 February 2013 16:24 |
Jerry Stuckle
Messages: 2598 Registered: September 2010
Karma:
|
Senior Member |
|
|
On 2/7/2013 10:31 AM, Paolo Varalta wrote:
> Il giorno giovedì 7 febbraio 2013 15:54:22 UTC+1, Jerry Stuckle ha scritto:
>> On 2/7/2013 9:28 AM, Paolo Varalta wrote:
>>
>>> Il giorno gioved� 7 febbraio 2013 14:58:44 UTC+1, Jerry Stuckle ha scritto:
>>
>>>> On 2/7/2013 5:38 AM, Paolo Varalta wrote:
>>
>>>>
>>
>>>> > Hi I'm Paolo from Italy.
>>
>>>>
>>
>>>> > I have a problem using readdir function (and other similar functions) under a ssh2 connection.
>>
>>>>
>>
>>>> > This is my script:
>>
>>>>
>>
>>>> >
>>
>>>>
>>
>>>> > <?
>>
>>>>
>>
>>>> > $Server = "XXX.XXX.XXX.XXX";
>>
>>>>
>>
>>>> > $Porta = "XXXX";
>>
>>>>
>>
>>>> > $Login = "YYYYYYYY";
>>
>>>>
>>
>>>> > $Password = "ZZZZZZZZ";
>>
>>>>
>>
>>>> > if (!extension_loaded('ssh2'))
>>
>>>>
>>
>>>> > {exit();
>>
>>>>
>>
>>>> > }
>>
>>>>
>>
>>>> > $connection = ssh2_connect($Server, $Porta);
>>
>>>>
>>
>>>> > if (!$connection)
>>
>>>>
>>
>>>> > {exit();
>>
>>>>
>>
>>>> > }
>>
>>>>
>>
>>>> > if (!ssh2_auth_password($connection, $Login, $Password))
>>
>>>>
>>
>>>> > {exit();
>>
>>>>
>>
>>>> > }
>>
>>>>
>>
>>>> > if (!$sftp = ssh2_sftp($connection))
>>
>>>>
>>
>>>> > {exit();
>>
>>>>
>>
>>>> > }
>>
>>>>
>>
>>>> > if (is_dir("ssh2.sftp://$sftp/uploads/"))
>>
>>>>
>>
>>>> > {echo "1 Ok.\n";
>>
>>>>
>>
>>>> > $Directory = opendir("ssh2.sftp://$sftp/uploads/") or die ("");
>>
>>>>
>>
>>>> > if ($Directory)
>>
>>>>
>>
>>>> > {echo "2 Ok.\n";
>>
>>>>
>>
>>>> > while (false !== ($file = readdir($Directory)))
>>
>>>>
>>
>>>> > {echo "File -> ".$file."\n";
>>
>>>>
>>
>>>> > }
>>
>>>>
>>
>>>> > echo "3 Ok.\n";
>>
>>>>
>>
>>>> > }
>>
>>>>
>>
>>>> > }
>>
>>>>
>>
>>>> > unset($connection);
>>
>>>>
>>
>>>> > ?>
>>
>>>>
>>
>>>> >
>>
>>>>
>>
>>>> > (Obviously I have mask the important thinks)
>>
>>>>
>>
>>>> > If I try to use it in my VM debian server, I see this echo:
>>
>>>>
>>
>>>> >
>>
>>>>
>>
>>>> > 1 Ok
>>
>>>>
>>
>>>> > 2 Ok
>>
>>>>
>>
>>>> > File -> TestFile1.csv
>>
>>>>
>>
>>>> > File -> TestFile2.csv
>>
>>>>
>>
>>>> > File -> TestFile3.csv
>>
>>>>
>>
>>>> > 3 Ok
>>
>>>>
>>
>>>> >
>>
>>>>
>>
>>>> > But if I try to use the same script in my regular server (a debian one, same version of the previous one, some php version, some ssh2 library version), I receive this echo:
>>
>>>>
>>
>>>> >
>>
>>>>
>>
>>>> > 1 Ok
>>
>>>>
>>
>>>> > 2 Ok
>>
>>>>
>>
>>>> > 3 Ok
>>
>>>>
>>
>>>> >
>>
>>>>
>>
>>>> > Via tcpdump I see that SFTP server gives me exactly the same infos in both tests.
>>
>>>>
>>
>>>> > And if I try to open a file (knowing its name) with fopen/fgets in the second server, it works.
>>
>>>>
>>
>>>> >
>>
>>>>
>>
>>>> > So why readdir (and functions similar) fails, while fopen/fgets works?
>>
>>>>
>>
>>>> > I watch php configurations on both server and thay seems identical.
>>
>>>>
>>
>>>> > Where do I have to search?
>>
>>>>
>>
>>>> >
>>
>>>>
>>
>>>> > Thanks in advance
>>
>>>>
>>
>>>> > Best regards
>>
>>>>
>>
>>>> > Paolo
>>
>>>>
>>
>>>> >
>>
>>>>
>>
>>>>
>>
>>>>
>>
>>>> How is system security set up in the working and failing systems?
>>
>>>>
>>
>>>> Perhaps you don't have permission to list the directory in the failing one?
>>
>>>>
>>
>>>>
>>
>>>>
>>
>>>
>>
>>> Hi Jerry and thank you.
>>
>>>
>>
>>> How/Where can I find the infos of that kind of permissions?
>>
>>>
>>
>>> Thanks in advance
>>
>>> Best regards
>>
>>> Paolo
>>
>>>
>>
>>
>>
>> It all depends on the version of Linux you're using. Try a Linux
>>
>> administration book (or newsgroup) for your version.
>>
>>
>>
>> --
>>
>> ==================
>>
>> Remove the "x" from my email address
>>
>> Jerry Stuckle
>>
>> JDS Computer Training Corp.
>>
>> jstucklex(at)attglobal(dot)net
>>
>> ==================
>
> Hi.
>
> Can you help me, telling me which kind of permission (or its name) I have to look for in a server using debian 6.0?
>
> Thanks in advance
> Best regards
> Paolo
>
As I said - you need to be asking in a newsgroup for Linux, preferably
Debian or Ubuntu. Debian does have an excellent email list for user
assistance.
Ask in the right place and you'll get good answers.
--
==================
Remove the "x" from my email address
Jerry Stuckle
JDS Computer Training Corp.
jstucklex(at)attglobal(dot)net
==================
|
|
|