aboutsummaryrefslogtreecommitdiff
path: root/src/api/lib.rs
Commit message (Collapse)AuthorAgeFilesLines
* Support for PostObject (#222)trinity-1686a2022-02-211-0/+1
| | | | | | | | | | | | | | | | | | Add support for [PostObject](https://docs.aws.amazon.com/AmazonS3/latest/API/RESTObjectPOST.html) - [x] routing PostObject properly - [x] parsing multipart body - [x] validating signature - [x] validating policy - [x] validating content length - [x] actually saving data Co-authored-by: trinity-1686a <trinity@deuxfleurs.fr> Co-authored-by: Trinity Pointard <trinity.pointard@gmail.com> Reviewed-on: https://git.deuxfleurs.fr/Deuxfleurs/garage/pulls/222 Reviewed-by: Alex <alex@adnab.me> Co-authored-by: trinity-1686a <trinity.pointard@gmail.com> Co-committed-by: trinity-1686a <trinity.pointard@gmail.com>
* Implement {Put,Get,Delete}BucketCors and CORS in generalAlex Auvolat2022-01-241-0/+1
| | | | | | - OPTIONS request against API endpoint - Returning corresponding CORS headers on API calls - Returning corresponding CORS headers on website GET's
* Make use of website config, return error document on errorAlex Auvolat2022-01-131-1/+1
|
* BucketWebsite (#174)trinity-1686a2021-12-151-0/+1
| | | | | | | | | | | fix #77 this does not store anything but a on/off switch for website, and does not implement GetBucketWebsite as it would require storing more. GetBucketWebsite should be pretty easy to implement once data is stored though. Co-authored-by: Trinity Pointard <trinity.pointard@gmail.com> Reviewed-on: https://git.deuxfleurs.fr/Deuxfleurs/garage/pulls/174 Co-authored-by: trinity-1686a <trinity.pointard@gmail.com> Co-committed-by: trinity-1686a <trinity.pointard@gmail.com>
* add proper request router for s3 api (#163)trinity-1686a2021-12-061-0/+1
| | | | | | | | | | | | | fix #161 Current request router was organically grown, and is getting messier and messier with each addition. This router cover exaustively existing API endpoints (with exceptions listed in [#161(comment)](https://git.deuxfleurs.fr/Deuxfleurs/garage/issues/161#issuecomment-1773) either because new and old api endpoint can't feasabily be differentied, or it's more lambda than s3). Co-authored-by: Trinity Pointard <trinity.pointard@gmail.com> Reviewed-on: https://git.deuxfleurs.fr/Deuxfleurs/garage/pulls/163 Reviewed-by: Alex <alex@adnab.me> Co-authored-by: trinity-1686a <trinity.pointard@gmail.com> Co-committed-by: trinity-1686a <trinity.pointard@gmail.com>
* add support for vhost-style s3 bucketTrinity Pointard2021-11-161-0/+1
|
* Improved XML serializationbetter_xmlAlex Auvolat2021-05-061-0/+1
| | | | | | - Use quick_xml and serde for all XML response returned by the S3 API. - Include tests for all structs used to generate XML - Remove old manual XML escaping function which was unsafe
* Many S3 compatibility improvements:v0.2.1.5Alex Auvolat2021-04-281-0/+1
| | | | | | | | - return XML errors - implement AuthorizationHeaderMalformed error to redirect clients to correct location (used by minio client) - implement GetBucketLocation - fix DeleteObjects XML parsing and response
* make most requested changesTrinity Pointard2021-04-271-1/+0
|
* document api crateTrinity Pointard2021-04-271-8/+13
|
* Refactor error management in API parterror-refactoringAlex Auvolat2020-11-081-0/+2
|
* Update to Hyper 0.13.6 that accepts non-Sync streams in wrap_stream.Alex Auvolat2020-07-071-1/+0
| | | | Simplifies code and makes it possible to publish on crates.io
* Work on APIAlex Auvolat2020-04-281-1/+5
|
* Some basic S3 functionnalityAlex Auvolat2020-04-241-0/+4
|
* Starting to be S3 compatibleAlex Auvolat2020-04-241-0/+1
|
* Split code for modular compilationAlex Auvolat2020-04-241-0/+5