Harshavardhana
cfdb29cac0
Simplify signature handling
...
This change brings a new SignatureHandler where Presigned.
Requests without Payload are handled very early before even
going through the call.
This change simplifies Donut codebase to not have signature related
logic for all API's.
Simplification is still needed for Payload based signature eg. PUT/POST calls
, which are still part of the donut codebase, which will be done subsequently
after donut re-write.
9 years ago
Harshavardhana
2a9c37ba26
Remove using HTTP responses in json reply always in application/xml
9 years ago
Harshavardhana
c8de5bad2f
Implement presigned policy
9 years ago
Harshavardhana
81cc017f91
Implement presigned signature v4 support
9 years ago
Harshavardhana
2721bef8da
Add errorIf for all API handlers to print call trace upon errors
9 years ago
Harshavardhana
d54488f144
Move all server and controller packages into top-level
9 years ago
Harshavardhana
2a15dd5eab
Enhance signature handler - throw back valid error messages
9 years ago
Anand Babu (AB) Periasamy
6930e4d668
logrus logger
9 years ago
Harshavardhana
1e2c010174
Avoid shadowing variables and enable checks to avoid them during build
9 years ago
Harshavardhana
988d39a5b6
Migrate to golang1.5 release with GO15VENDOREXPERIMENT=1 enabled
9 years ago
Anand Babu (AB) Periasamy
cdf93e534c
simplify probe APIs
9 years ago
Harshavardhana
61175ef091
Migrate to govendor to avoid limitations of godep
...
- over the course of a project history every maintainer needs to update
its dependency packages, the problem essentially with godep is manipulating
GOPATH - this manipulation leads to static objects created at different locations
which end up conflicting with the overall functionality of golang.
This also leads to broken builds. There is no easier way out of this other than
asking developers to do 'godep restore' all the time. Which perhaps as a practice
doesn't sound like a clean solution. On the other hand 'godep restore' has its own
set of problems.
- govendor is a right tool but a stop gap tool until we wait for golangs official
1.5 version which fixes this vendoring issue once and for all.
- govendor provides consistency in terms of how import paths should be handled unlike
manipulation GOPATH.
This has advantages
- no more compiled objects being referenced in GOPATH and build time GOPATH
manging which leads to conflicts.
- proper import paths referencing the exact package a project is dependent on.
govendor is simple and provides the minimal necessary tooling to achieve this.
For now this is the right solution.
9 years ago
Harshavardhana
d09fd8b0a1
Migrate from iodine to probe
9 years ago
Harshavardhana
d346250f1c
Collapse GetPartialObject() into GetObject()
9 years ago
Harshavardhana
63c9cf0c4b
Move from Minimalist Object Storage to Minio Cloud Storage
9 years ago
Harshavardhana
5eae32f2b0
Return proper InvalidArgument messages like s3 for invalid data for ListObjects(), ListObjectParts(), ListMultipartUploads()
9 years ago
Harshavardhana
e605787e65
Method not allowed is right response for DELETE() operations and add tests
9 years ago
Harshavardhana
7ae60a6d10
For missing parts reply back as InvalidPart{}
9 years ago
Harshavardhana
7615a6bfe5
HEAD shouldn't have any body, handle it in writeErrorResponse()
9 years ago
Harshavardhana
e5006c738d
Handle both space and non-space characters, in signature v4 - add errors for all API's
9 years ago
Harshavardhana
84f427f14a
All other API's now support signature v4
9 years ago
Harshavardhana
00890c254e
CompleteMultipartUpload and CreateObjectPart now fully support signature v4
9 years ago
Harshavardhana
89c1215194
PutObject handler gets initial support for signature v4, working
9 years ago
Harshavardhana
375860077d
HTTP header Content-Length signifies body length of the request, if its smaller reply appropriately
...
This patch also handles large individual part sizes > 5MB by using less memory copies.
9 years ago
Harshavardhana
8a4e7bcdcf
Add full API tests, move storage/donut to donut, add disk tests as well
10 years ago
Harshavardhana
7c37e9d06a
Make donut fully integrated back into API handlers
10 years ago
Harshavardhana
12bde7df30
Add simple Ticket Master which pro-actively sends messages on proceedChannel
...
Handlers are going to wait on proceedChannel, this the initial step towards
providing priority for different set of API operations
10 years ago
Harshavardhana
0533abf6a8
Make priority queue lambda function return error over a channel
10 years ago
Harshavardhana
4addf7a996
Restructure API handlers, add JSON RPC simple HelloService right now.
10 years ago
Harshavardhana
72572d6c71
Remove some api server code bringing in new cleanup
10 years ago
Harshavardhana
8efc842b59
Add delete handlers and reply back as 'NotImplemented' instead of 404
10 years ago
Harshavardhana
9666f2e5bf
Relax minium object size limit, one can really upload a 0byte file
...
For example
~~~
$ mc ls https://s3.amazonaws.com/ferenginar/test.go
[2015-05-23 12:02:06 PDT] 0B test.go
$ curl -i -X HEAD https://s3.amazonaws.com/ferenginar/test.go
HTTP/1.1 200 OK
x-amz-id-2: ZMWLriPH+uQJ8IsaMHmuNOU/FXvdSq+s6O7ugUI9hZ695XJTNAZ1utKxh03w5Jcf
x-amz-request-id: F5A11F533B74DD8F
Date: Sat, 23 May 2015 19:19:29 GMT
Last-Modified: Sat, 23 May 2015 19:02:06 GMT
ETag: "d41d8cd98f00b204e9800998ecf8427e"
Accept-Ranges: bytes
Content-Type: binary/octet-stream
Content-Length: 0
Server: AmazonS3
~~~
10 years ago
Harshavardhana
e4c0d574dc
Update totalnumber of multiparts inside CreateObjectPart(), also introduce support for UploadIDMarker and Prefix for listMultipartUploads
10 years ago
Harshavardhana
7ce47130fd
HEAD request should have Content-Length for only successful response, there is no response body for errors, just header is sufficient - fixes #603
...
http://www.w3.org/Protocols/rfc2616/rfc2616-sec14.html#sec14.13
""" in the case of the HEAD method, the size of the entity-body that would have been sent had the request been a GET. """
10 years ago
Harshavardhana
317637fcb8
Remove redundant WriteHeader calls
10 years ago
Harshavardhana
5c5761ae16
Remove unnecessary GetObjectMetadata prefix argument
10 years ago
Harshavardhana
dba7c94571
Add tests for abortMultipartUpload, listobjectparts, listmultipartuploads
10 years ago
Harshavardhana
5498c90788
Add a new validateContentTypeHandler{}, verify Accept header earlier
10 years ago
Harshavardhana
8d06504068
Change all minio-io path to minio
10 years ago
Harshavardhana
f45635524f
Remove SignatureV2 support, bring in SignatureV4 header only validation for now
10 years ago
Harshavardhana
b48b7f51ef
Use convenience functions for url.Values over looping through keys, fix a bug in listObjectParts()
10 years ago
Harshavardhana
14b5828505
Handle partNumberMarker with listObjectParts now and other fixes
10 years ago
Frederick F. Kautz IV
058604aa21
Adding tests and fixes for multipart uploads uncovered from tests
10 years ago
Harshavardhana
8860aa0c8c
Implement AbortMultipart
10 years ago
Harshavardhana
18c7f620cc
Add listparts support
10 years ago
Harshavardhana
23a545673d
Verify incoming md5sum for invidual parts in complete multipart request and some simplification of the code
...
Add two new functions for session cleanup
10 years ago
Harshavardhana
2ea10c798b
Implement proper errors for Multipart
10 years ago
Harshavardhana
82c3656f79
Reply back CompleteMultipartUploadResult properly with final ETag computed
...
- Now s3 libraries and also objectstorage-go work properly
10 years ago
Frederick F. Kautz IV
ae5c99d7bb
Router should work with ?uploads unescaped now
10 years ago
Frederick F. Kautz IV
f050d5e974
Adding multipart support
10 years ago