[Cyberduck-trac] [Cyberduck] #7284: Impossible to access a storage container when a file which name includes special caracters has previously been uploaded
Cyberduck
trac at trac.cyberduck.ch
Wed Jun 5 19:46:18 UTC 2013
#7284: Impossible to access a storage container when a file which name includes
special caracters has previously been uploaded
-----------------------------------+------------------------
Reporter: benmauff | Owner: dkocher
Type: defect | Status: new
Priority: high | Milestone: 4.3.2
Component: s3 | Version: 4.3.1
Severity: critical | Resolution:
Keywords: special caracters, S3 | Architecture:
Platform: Windows 7 |
-----------------------------------+------------------------
Changes (by dkocher):
* milestone: => 4.3.2
Old description:
> Configuration: Swift + S3
>
> This issue has been encountered in the following scenario:
> 1 Upload the following file in a S3 container: Nom de fichier €%£ -
> Copie.xlsx
>
> 2 Access the folder where this file has been updated and check it has
> been added
>
> Result: it is now impossible to access the container; we get an Internal
> Server Error (see screenshots).
>
> Here is our first internal analysis:
>
> - Creating object with special characters works in Swift:
>
> ~$ curl -H 'Content-Length: 0' -i
> http://localhost:8080/v1/AUTH_05b7534319e849ba93c68462726057fb/newcont/€%£-Copie.xlsx
> -X PUT -H "X-Auth-Token: 2438e55a25a8407fa6318fea4e7bd10a"
>
> ~$ curl -i
> http://localhost:8080/v1/AUTH_05b7534319e849ba93c68462726057fb/newcont -X
> GET -H "X-Auth-Token: 2438e55a25a8407fa6318fea4e7bd10a"
> HTTP/1.1 200 OK
> Content-Length: 29
> X-Container-Object-Count: 2
> Accept-Ranges: bytes
> X-Timestamp: 1369816325.76530
> X-Container-Bytes-Used: 1196
> Content-Type: text/plain; charset=utf-8
> X-Trans-Id: tx16fe028810ba4be39506b-0051a5cc5d
> Date: Wed, 29 May 2013 09:37:33 GMT
>
> etc/passwd
> €%£-Copie.xlsx
>
> but not in Cyberduck.
>
> - this works as well with the S3 API, the script is here :
>
> http://p.chmouel.com/s3testutf8.py
>
> and the output :
>
> ParseResult(scheme='http', netloc='46.231.128.140:8080', path='',
> params='', query='', fragment='')
> Delete key: €%£ - Copie.xlsx
> Deleting bucket: cont_s3
> Creating bucket: cont_s3
> uploading: €%£ - Copie.xlsx
> uploaded object
> €%£ - Copie.xlsx
New description:
Configuration: Swift + S3
This issue has been encountered in the following scenario:
1 Upload the following file in a S3 container: Nom de fichier €%£ -
Copie.xlsx
2 Access the folder where this file has been updated and check it has been
added
Result: it is now impossible to access the container; we get an Internal
Server Error (see screenshots).
Here is our first internal analysis:
* Creating object with special characters works in Swift:
{{{
~$ curl -H 'Content-Length: 0' -i
http://localhost:8080/v1/AUTH_05b7534319e849ba93c68462726057fb/newcont/€%£-Copie.xlsx
-X PUT -H "X-Auth-Token: 2438e55a25a8407fa6318fea4e7bd10a"
}}}
{{{
~$ curl -i
http://localhost:8080/v1/AUTH_05b7534319e849ba93c68462726057fb/newcont -X
GET -H "X-Auth-Token: 2438e55a25a8407fa6318fea4e7bd10a"
HTTP/1.1 200 OK
Content-Length: 29
X-Container-Object-Count: 2
Accept-Ranges: bytes
X-Timestamp: 1369816325.76530
X-Container-Bytes-Used: 1196
Content-Type: text/plain; charset=utf-8
X-Trans-Id: tx16fe028810ba4be39506b-0051a5cc5d
Date: Wed, 29 May 2013 09:37:33 GMT
}}}
{{{
etc/passwd
€%£-Copie.xlsx
}}}
but not in Cyberduck.
* this works as well with the S3 API, the script is here :
[http://p.chmouel.com/s3testutf8.py]
and the output :
{{{
ParseResult(scheme='http', netloc='46.231.128.140:8080', path='',
params='', query='', fragment='')
Delete key: €%£ - Copie.xlsx
Deleting bucket: cont_s3
Creating bucket: cont_s3
uploading: €%£ - Copie.xlsx
uploaded object
€%£ - Copie.xlsx
}}}
--
--
Ticket URL: <http://trac.cyberduck.ch/ticket/7284#comment:1>
Cyberduck <http://cyberduck.ch>
Open source FTP, SFTP, WebDAV, Cloud Files, Google Docs & Amazon S3 Browser for Mac & Windows.
More information about the Cyberduck-trac
mailing list