Krishna Srinivas
8489f22fe2
signature-v2: Use request.RequestURI for signature calculation. ( #3616 )
...
* signature-v2: Use request.RequestURI for signature calculation.
* Use splitStr instead of strings.Split
8 years ago
Anis Elleuch
fc6f804865
server-mux: Keep listening after Accept() err ( #3613 )
...
Accept() can return errors like: `too many open files`, no need to totally quit listening in this case.
8 years ago
Anis Elleuch
d1d89116f1
admin: Add version to service Status API response ( #3605 )
...
Add server's version field to service status API:
"version":{
"version":"DEVELOPMENT.GOGET",
"commitID":"DEVELOPMENT.GOGET"
}
8 years ago
Anis Elleuch
e1f64141a2
presign-v2: Compute signature on encoded URL path ( #3612 )
...
Encode the path of the passed presigned url before calculating the signature. This fixes
presigning objects whose names contain characters that are found encoded in urls.
8 years ago
Krishnan Parthasarathi
586058f079
Implement mgmt REST APIs to heal storage format. ( #3604 )
...
* Implement heal format REST API handler
* Implement admin peer rpc handler to re-initialize storage
* Implement HealFormat API in pkg/madmin
* Update pkg/madmin API.md to incl. HealFormat
* Added unit tests for ReInitDisks rpc handler and HealFormatHandler
8 years ago
Krishna Srinivas
4e926b292f
vendor-update: Minio Browser ( #3609 )
8 years ago
Anis Elleuch
47358e3104
server-mux: Add tcp idle read timeout ( #3607 )
...
Avoid many idle client connections i.e client didn't send any data until a given stipulated amount of time.
Default chosen here is 30 seconds.
8 years ago
Harshavardhana
3640c63289
server/mux: PeekProtocol() should return error and connection be closed. ( #3608 )
...
For TLS peekProtocol do not assume the incoming request to be a TLS
connection perform a handshake() instead and validate.
Also add some security related defaults to `tls.Config`.
8 years ago
Harshavardhana
51fa4f7fe3
Make PutObject a nop for an object which ends with "/" and size is '0' ( #3603 )
...
This helps majority of S3 compatible applications while not returning
an error upon directory create request.
Fixes #2965
8 years ago
Andrei Kopats
c3f7d1026f
fs: start even if there are not enough free space ( #3606 )
8 years ago
Harshavardhana
80f1387877
Initialize peers properly for localhost. ( #3600 )
...
This introduced a regression.
Fixes #3594
8 years ago
Andreas Kohn
0674fa43ff
Handle the region for GetBucketLocation and PutBucket properly ( #3596 )
...
This adjusts the code for these two handlers to match the logic in ListBucketHandler.
Fixes #3595
8 years ago
Harshavardhana
a17f1e875c
server/mux: Close the connection even if buffer.Flush() returns error. ( #3599 )
...
It is possible that buf.Flush() might return an error, leading to a
potential leak in active sockets.
8 years ago
Jeffery Utter
9e1f1b50e0
Don't Check Available Inodes on NFS ( #3598 )
...
In some cases (such as with VirutualBox, this value gets hardcoded
to 1000, which is less than the required minimum of 10000.
Fixes #3592
8 years ago
Anis Elleuch
0715032598
heal: Add ListBucketsHeal object API ( #3563 )
...
ListBucketsHeal will list which buckets that need to be healed:
* ListBucketsHeal() (buckets []BucketInfo, err error)
8 years ago
Harshavardhana
dfc2ef3004
storage/rpc: Remove network error restriction. ( #3591 )
...
This restriction has lots of side affects, since
we do not have a mechanism to clear states like
this it is better not to keep them.
Network errors are common and can occur with
simple cable removal etc. Since we already have
a retry mechanism this error count and stateful
nature can bring problems on a long running
cluster.
8 years ago
Harshavardhana
62f8343879
Add constants for commonly used values. ( #3588 )
...
This is a consolidation effort, avoiding usage
of naked strings in codebase. Whenever possible
use constants which can be repurposed elsewhere.
This also fixes `goconst ./...` reported issues.
8 years ago
Anis Elleuch
f803bb4b3d
admin: Add service Set Credentials API ( #3580 )
8 years ago
Andy Brown
20a65981bd
add delete and options methods to CORS whitelist ( #3589 )
8 years ago
Harshavardhana
09b450d610
Fix fs tests to avoid deleting /usr to certain systems.
8 years ago
Krishnan Parthasarathi
c194b9f5f1
Implement mgmt REST APIs for heal subcommands ( #3533 )
...
The heal APIs supported in this change are,
- listing of objects to be healed.
- healing a bucket.
- healing an object.
8 years ago
Harshavardhana
98a6a2bcab
obj: Return objectInfo for CompleteMultipartUpload(). ( #3587 )
...
This patch avoids doing GetObjectInfo() in similar way
how we did for PutOject().
8 years ago
Harshavardhana
1c699d8d3f
fs: Re-implement object layer to remember the fd ( #3509 )
...
This patch re-writes FS backend to support shared backend sharing locks for safe concurrent access across multiple servers.
8 years ago
Harshavardhana
a054c73e22
Add slack replace gitter ( #3584 )
8 years ago
Harshavardhana
b580ad24e2
server/http: Add missing keep alive for incoming tcp connections. ( #3585 )
...
This was seen reproducing a bug with @gowithplanb . Windows Cloud
Berry clients do not close their respective connections.
8 years ago
Harshavardhana
f8a3b1e164
Fix a bug in previous patch.
8 years ago
Harshavardhana
bf2b8879b7
config: Allow non-standard config dir to be configured with SSL. ( #3583 )
8 years ago
Harshavardhana
caecd75a2a
Deprecate and remove service stop API. ( #3578 )
...
Fixes #3570
8 years ago
Anis Elleuch
2959c104b3
peer rpc: Fix typo in cluster credentials update ( #3579 )
...
Update credentials in cluster wasn't working due to a typo
8 years ago
Harshavardhana
50796e481d
build: Add ARM binary builds for ARMv6 and Aarch64. ( #3577 )
8 years ago
Anis Elleuch
f64f8b03cb
admin: Enhance locks list json response ( #3573 )
8 years ago
Harshavardhana
7b85756c64
notify/webhook: Handle webendpoints without port ( #3568 )
...
Fixes and issue initializing webhook notification
```
FATA[0000] Initializing object layer failed cause=Unable to initialize event \
notification. dial tcp: missing port in address requestb.in source=[server-main.go:448:serverMain()]
```
8 years ago
Alex
d6a327fbc5
Add notifications by webhook.
...
Add a new config entry moving to version 13.
```
"webhook": {
"1": {
"enable": true,
"address": "http://requestb.in/1i9al7m1 "
}
}
```
8 years ago
Anis Elleuch
f24753812a
nats: Add support of NATS.io Streaming server ( #3494 )
8 years ago
Harshavardhana
08b6cfb082
ssl: Set a global boolean to enable SSL across Minio ( #3558 )
...
We have been using `isSSL()` everywhere we can set
a global value once and re-use it again.
8 years ago
Krishna Srinivas
12a7a15daa
browser: Allow anonymous browsing of readable buckets. ( #3515 )
8 years ago
Harshavardhana
7c6d77734a
Fix vendor.json to remove minio/blake2b-simd ref
8 years ago
Harshavardhana
b0cfceb211
event: Enhance event message struct to provide origin server. ( #3557 )
...
`principalId` i.e user identity is kept as AccessKey in
accordance with S3 spec.
Additionally responseElements{} are added starting with
`x-amz-request-id` is a hexadecimal of the event time itself in nanosecs.
`x-minio-origin-server` - points to the server generating the event.
Fixes #3556
8 years ago
Harshavardhana
0563a9235a
handlers: Handle crash if r.URL.Path is empty. ( #3554 )
...
URL paths can be empty and not have preceding separator,
we do not yet know the conditions this can happen inside
Go http server.
This patch is to ensure that we do not crash ourselves
under conditions where r.URL.Path may be empty.
Fixes #3553
8 years ago
Anis Elleuch
eb6d53d2f5
heal: Fix new entries computation in listDirHeal ( #3551 )
...
A crash was happening due to an incorrect interpreation of the return value of sort.SearchString()
8 years ago
Anis Elleuch
95d9e47353
Presign V2: Unescape non-std queries in urls ( #3549 )
...
A client sends escaped characters in values of some query parameters in a presign url.
This commit properly unescapes queires to fix signature calculation.
8 years ago
Harshavardhana
e1142e99f2
rpc/lock: Make sure to capitalize for proper marshalling. ( #3544 )
...
Distributed setup stopped working for certain
types of operations `6d10f4c19af6861e4de1b22ac20a3e5136f69d67`
This is a regression.
Fixes #3543
8 years ago
Harshavardhana
a091fe3ed6
docs: Fix caching docs to comply with current features.
8 years ago
koolhead17
f37f56ac15
docs: Added guide for distributed minio on Windows ( #3507 )
8 years ago
Karthic Rao
2f4a7483ea
Test Function to reset globals. ( #3538 )
...
- Adding reset functions for important global variables.
- Using them in tests.
8 years ago
Harshavardhana
464f9d34d6
Remove all references to GO15VENDOREXPERIMENT
8 years ago
Harshavardhana
926c75d0b5
api: Set appropriate content-type for success/error responses. ( #3537 )
...
Golang HTTP client automatically detects content-type but
for S3 clients this content-type might be incorrect or
might misbehave.
For example:
```
Content-Type: text/xml; charset=utf-8
```
Should be
```
Content-Type: application/xml
```
Allow this to be set properly.
8 years ago
Krishnan Parthasarathi
c8f57133a4
Implement list, clear locks REST API w/ pkg/madmin support ( #3491 )
...
* Filter lock info based on bucket, prefix and time since lock was held
* Implement list and clear locks REST API
* madmin: Add list and clear locks API
* locks: Clear locks matching bucket, prefix, relTime.
* Gather lock information across nodes for both list and clear locks admin REST API.
* docs: Add lock API to management APIs
8 years ago
Harshavardhana
cae62ce543
browser: Handle proper login errors. ( #3518 )
...
Also additionally log the remote address.
Fixes #3514
8 years ago
Harshavardhana
7bbb532b4b
Add a `isErr` function to check for errs.
...
DisksInfo() should handle collection of some
base errors as offlineDisks.
8 years ago