8000 [Finder] fixed root directory access for ftp/sftp wrapper by DerDu · Pull Request #28604 · symfony/symfony · GitHub
[go: up one dir, main page]

Skip to content

[Finder] fixed root directory access for ftp/sftp wrapper #28604

New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Merged
merged 1 commit into from
Oct 3, 2018

Conversation

DerDu
Copy link
Contributor
@DerDu DerDu commented Sep 26, 2018
Q A
Branch? 3.4
Bug fix? yes
New feature? no
BC breaks? no
Deprecations? no
Tests pass? yes
Fixed tickets #27423
License MIT
Doc PR symfony/symfony-docs#...

This fixes a flaw introduced in 3.4.7 by #26763

In order to access the root folder with ftp wrapper, there MUST BE a slash present.

  • Currently: from 3.4.7 on it just rtrim all seperators (/, \) from directories
  • Now: IF the directory is a (s)ftp:// wrapper (#^s?ftp://#) this fix just adds a slash (/) again

@fabpot
Copy link
Member
fabpot commented Oct 3, 2018

Thank you @DerDu.

@fabpot fabpot merged commit 9630a38 into symfony:3.4 Oct 3, 2018
fabpot added a commit that referenced this pull request Oct 3, 2018
…(DerDu)

This PR was squashed before being merged into the 3.4 branch (closes #28604).

Discussion
----------

[Finder] fixed root directory access for ftp/sftp wrapper

| Q             | A
| ------------- | ---
| Branch?       | 3.4
| Bug fix?      | yes
| New feature?  | no
| BC breaks?    | no
| Deprecations? | no
| Tests pass?   | yes
| Fixed tickets | #27423
| License       | MIT
| Doc PR        | symfony/symfony-docs#... <!-- required for new features -->

This fixes a flaw introduced in 3.4.7 by #26763

In order to access the root folder with ftp wrapper, there MUST BE a slash present.
- Currently: from 3.4.7 on it just ```rtrim``` all seperators (```/```, ```\```) from directories
- Now: IF the directory is a (s)ftp:// wrapper (```#^s?ftp://#```) this fix just adds a slash (```/```) again

Commits
-------

9630a38 [Finder] fixed root directory access for ftp/sftp wrapper
This was referenced Oct 3, 2018
fabpot added a commit that referenced this pull request Nov 15, 2019
This PR was merged into the 3.4 branch.

Discussion
----------

[Finder] Allow ssh2 stream wrapper for sftp

Same fix as #28604 but for the ssh2.sftp wrapper.

| Q             | A
| ------------- | ---
| Branch?       | 3.4
| Bug fix?      | yes
| New feature?  | no <!-- please update src/**/CHANGELOG.md files -->
| Deprecations? | no <!-- please update UPGRADE-*.md and src/**/CHANGELOG.md files -->
| Tickets       | Fix #28604 maybe
| License       | MIT
| Doc PR        |

Without this patch, we can't use the finder with ssh2.sftp connections.

```php
$connection = \ssh2_connect('host', 22);
\ssh2_auth_password($connection, 'user', 'pass');

$sftp = \ssh2_sftp($connection);
$path = "ssh2.sftp://".intval($sftp)."/";

$finder = new Finder();

foreach ($finder->in($path)->files() as $directory) {
    dump(file_get_contents($directory));
}
```

Without the patch:

>   RecursiveDirectoryIterator::__construct(ssh2.sftp://838): failed to open dir: operation failed

Commits
-------

e6c9d77 [Finder] Allow ssh2 stream wrapper for sftp
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

Successfully merging this pull request may close these issues.

4 participants
0