Commit graph

1208 commits

Author SHA1 Message Date
Harshavardhana 49a714d1a4 Add license header for Minio modifications, improvements for sha1,sha256,sha512 implementations
Also bring in SSE3 optimized public domain implementation of SHA1 from Intel ``FIPS PUB 180-1``
2015-02-21 15:50:47 -08:00
Harshavardhana 12cff1be58 Implement sha1 as intel optimized set 2015-02-21 11:25:09 -08:00
Anis Elleuch 1d4d7ff274 Add missing asm instruction to correct sha256 calculation in avx mode 2015-02-21 19:34:36 +01:00
Anis Elleuch e89271b8f5 Use Intel optimized code (ssse3, avx, avx2) to calculate sha256 2015-02-21 13:11:15 +01:00
Harshavardhana 3151f9b6c3 Add proper entries for GobHeader, Data copy.
This commit also adds 'donut_gen.go' for generating sample donut file
2015-02-21 01:44:27 -08:00
Frederick F. Kautz IV 8129d8fd0b Writing data out with error handling 2015-02-20 23:24:01 -08:00
Frederick F. Kautz IV 98ddbd840e Moving donut code to v1 in donut package 2015-02-20 23:07:43 -08:00
Frederick F. Kautz IV 9833647fb7 Fixing magic number for INIM 2015-02-20 22:42:58 -08:00
Anand Babu (AB) Periasamy ec36a598c9 Magic as numbers are faster to encode and compare 2015-02-20 18:20:21 -08:00
Harshavardhana 741e14f749 Remove go cover and remove unncessary Makefiles 2015-02-20 17:44:26 -08:00
Harshavardhana 19a4998fcb SHA512 Implemention with Intel assembly code 2015-02-20 16:32:19 -08:00
Harshavardhana c4f0aad9b5 Add donut tests, just for verification 2015-02-18 19:46:14 -08:00
Frederick F. Kautz IV f7f34d08e8 Donut structure refined 2015-02-18 17:18:33 -08:00
Frederick F. Kautz IV ab80c0ce12 Merge pull request #180 from abperiasamy/donut 2015-02-18 15:57:16 -08:00
Anand Babu (AB) Periasamy 9e304b53de donut spec v1 prototype 2015-02-18 15:52:12 -08:00
Harshavardhana fab954f13f Run govet and fix 2015-02-18 15:33:55 -08:00
Harshavardhana f7a06a5d1e Some more cleanup 2015-02-18 12:15:33 -08:00
Frederick F. Kautz IV 05ac09bf69 Adding header version 2015-02-18 10:21:02 -08:00
Harshavardhana a3e5121f7b Make channels more aware of errors and shutdown on error - some cleanup 2015-02-18 00:24:19 -08:00
Harshavardhana cf6d03b907 Expose policy code, for api router usage 2015-02-17 19:06:01 -08:00
Harshavardhana 5235badec9 Merge pull request #169 from harshavardhana/pr_out_add_policy_validation_code_more_rigorous 2015-02-17 18:10:00 -08:00
Frederick F. Kautz IV fe9a5c14a0 Adding scaffolding for writing donut 2015-02-17 17:47:10 -08:00
Harshavardhana 980d229272 Add policy validation code more rigorous 2015-02-17 13:23:16 -08:00
Harshavardhana f04beab7c2 Skip policy files 2015-02-16 18:37:09 -08:00
Harshavardhana eeae64935e Implement bucket policy handler and with galore of cleanup 2015-02-16 18:20:40 -08:00
Harshavardhana ba3e2d41f7 Add license and fix development scripts 2015-02-15 01:59:48 -08:00
Harshavardhana 966cdd4f05 Reply in xml from validate and ignore handlers 2015-02-11 22:00:45 -08:00
Harshavardhana ac4f07906c Implement S3 Style ErrorCodes and Response
This patchset also brings in lot of cleanup in terms of minioapi codebase
2015-02-11 21:27:28 -08:00
Harshavardhana 680848bdcb Add license header 2015-02-08 03:00:32 -08:00
Harshavardhana 8087ca2450 Verify both 'x-amz-date' and 'date' header before discarding request 2015-02-08 02:37:19 -08:00
Harshavardhana 92f83982db Changes to tests pending from #142 2015-02-06 20:47:21 -08:00
Harshavardhana ecb70a4c19 Avoid trailing '/' for buckets and also re-directs - in accordance with aws clients 2015-02-06 20:42:09 -08:00
Harshavardhana 81fc11ee5d Implement authorization support 2015-02-06 02:08:52 -08:00
Harshavardhana 0e8b16a55d Ignore EOF in ReadConfig() 2015-02-05 16:10:49 -08:00
Harshavardhana 72d0999dcb Reply back AccessKey, Secretkey through json 2015-02-05 15:59:44 -08:00
Harshavardhana 95f214c99b Append to Users list 2015-02-05 15:40:51 -08:00
Harshavardhana b3b73ff4cb Merge pull request #136 from harshavardhana/pr_out_store_credentials_through_webui 2015-02-05 14:20:06 -08:00
Harshavardhana 4c90017b02 Store credentials through webui 2015-02-05 14:19:48 -08:00
Frederick F. Kautz IV 620435cea6 Content type is now passed from minioapi to storage 2015-02-05 14:05:43 -08:00
Frederick F. Kautz IV 288bc3fcc7 Adding content type to backend storage drivers 2015-02-04 17:32:40 -08:00
Frederick F. Kautz IV 816310825e Removing XMLName from json request 2015-02-04 14:21:47 -08:00
Frederick F. Kautz IV 7152712f34 Accessing dir as object should return ObjectNotFound 2015-02-03 16:45:00 -08:00
Harshavardhana 582ce3df36 Make sure config testing is done in tempdir 2015-02-03 00:25:33 -08:00
Harshavardhana b1db70c807 Add json config reader/writer 2015-02-03 00:12:46 -08:00
Harshavardhana aff4c5826b Use helper HomeDir() 2015-02-02 21:44:17 -08:00
Harshavardhana dc47ca1431 Fix build issue 2015-02-01 17:21:17 -08:00
Frederick F. Kautz IV a8eef13835 Minioapi TestPutObject properly creates bucket at start of test 2015-02-01 14:46:45 -08:00
Frederick F. Kautz IV a092b44cf1 Adding test to ensure list objects returns an error for non existant buckets to match previous bug fix and fix for inmemory 2015-02-01 10:48:31 -08:00
Harshavardhana 5d197dd063 Reply back errors properly 2015-02-01 03:10:28 -08:00
Harshavardhana b635501fb7 Add StrictSlash for path re-direction 2015-02-01 02:49:09 -08:00
Harshavardhana e1b3836c60 Service a new WebUI server at port 8081.
It is provided to avoid the router clutter on the Object API
end. This is just a first cut sample we are going to build on
top of this the new management console UI.

General interest comes from subsequently writing a small UI to
generate `AccessKey` and `SecretKey` to build authorization
layer.
2015-02-01 02:44:53 -08:00
Frederick F. Kautz IV 54026dbc78 Setting order when retrieving buckets 2015-02-01 00:16:25 -08:00
Harshavardhana 26aac9a439 Add bucket resources to ignore handler 2015-01-31 22:45:52 -08:00
Frederick F. Kautz IV 94e124470c Converting unimplemented methods list into an http handler 2015-01-31 19:50:32 -08:00
Harshavardhana 46751f0b28 Add database query function, and some re-factoring 2015-01-31 15:51:18 -08:00
Frederick F. Kautz IV 0cd54031a7 Adding list api test 2015-01-30 17:36:53 -08:00
Harshavardhana 8a4128d304 Force clients to have certs 2015-01-30 16:51:33 -08:00
Frederick F. Kautz IV 84c5df8441 Using generic make test ./... and make build ./..., disabled signers code for now to fix build. 2015-01-30 10:58:47 -08:00
Frederick F. Kautz IV 7ca87e06aa Adding list bucket tests and fixing inmemory behavior. 2015-01-29 11:23:14 -08:00
Harshavardhana 82baccb8bf Prefix if empty skip it before IsValidBucket 2015-01-29 01:07:37 -08:00
Frederick F. Kautz IV c6d537e66e Reducing code duplication relating to content type 2015-01-28 20:47:23 -08:00
Frederick F. Kautz IV 96a5fc0ee7 Updating godep 2015-01-28 20:26:52 -08:00
Harshavardhana 57d764778d Merge pull request #88 from harshavardhana/pr_out_add_x509_tests_and_should_be_part_of_the_build 2015-01-28 17:13:10 -08:00
Harshavardhana ac99968796 Add x509 tests and should be part of the build 2015-01-28 17:12:59 -08:00
Frederick F. Kautz IV b170f3f5fc Reordering minioapi functions 2015-01-28 16:51:44 -08:00
Frederick F. Kautz IV 452d46bfa6 Merge pull request #86 from fkautz/pr_out_adding_comments_to_explain_design_decisions_in_server_go 2015-01-28 16:33:28 -08:00
Frederick F. Kautz IV 66cc370e8b Adding comments to explain design decisions in server.go 2015-01-28 16:33:20 -08:00
Frederick F. Kautz IV 698f0b815f Merge pull request #85 from fkautz/pr_out_http_server_package_now_follows_convention 2015-01-28 16:30:02 -08:00
Frederick F. Kautz IV f15e2c4e74 HTTP Server package now follows convention 2015-01-28 16:29:47 -08:00
Harshavardhana 1fdd62165e Merge pull request #83 from harshavardhana/pr_out_authorization_validation_in_accordance_with_s3_signer_awsv2 2015-01-28 16:14:39 -08:00
Harshavardhana d78cd581c5 Authorization validation in accordance with S3 signer AWSv2 2015-01-28 16:14:08 -08:00
Frederick F. Kautz IV e8399a6d05 Adding server config structure 2015-01-28 16:07:53 -08:00
Frederick F. Kautz IV f3e31fe795 Fixing build break 2015-01-28 15:27:59 -08:00
Frederick F. Kautz IV 910aa176b4 Merge pull request #80 from fkautz/pr_out_fix_build 2015-01-28 14:00:41 -08:00
Frederick F. Kautz IV ca7b1a7fc6 Fix build 2015-01-28 14:00:08 -08:00
Harshavardhana fbafc98edb Add a new pkg/crypto/keys, first cut
- provides three functions
     - GetRandomAlphaNumeric()
     - GetRandomAlphaNumericFull()
     - GetRandomBase64()
     - ValidAccessKey()
2015-01-28 12:02:13 -08:00
Harshavardhana 2ccecd3f32 Add list buckets for 'fs' 2015-01-27 18:43:55 -08:00
Harshavardhana 3781734903 Merge pull request #77 from harshavardhana/pr_out_add_tiedot_integration_package_first_cut_more_improvements_needed 2015-01-27 18:15:50 -08:00
Harshavardhana c63a6dba2f Add 'tiedot' integration package, first cut - more improvements needed 2015-01-27 18:15:23 -08:00
Frederick F. Kautz IV 5daa408e2c Creating subdirectories in fs now works 2015-01-27 17:47:11 -08:00
Frederick F. Kautz IV 044dc9af80 Adding more tests, including ordering of objects in prefix 2015-01-27 13:11:22 -08:00
Harshavardhana aa4bc2549e Merge pull request #72 from harshavardhana/pr_out_add_erasure_package_in_its_full_form_v1_0 2015-01-27 12:57:51 -08:00
Harshavardhana 2547163cb2 Add erasure package in its full form v1.0 2015-01-27 12:55:17 -08:00
Frederick F. Kautz IV 74ef65daac Removing log from fs_test.go 2015-01-27 12:02:08 -08:00
Frederick F. Kautz IV 163a6c35db Adding fs storage 2015-01-27 11:09:55 -08:00
Frederick F. Kautz IV 49641e3410 Adding storage modifications for upcoming fs system 2015-01-26 15:45:10 -08:00
Harshavardhana f3a27169fc Avoid 'clang' optimization, keep it -O0 2015-01-26 12:22:08 -08:00
Harshavardhana b6627b4d6a Consolidate reply headers, simplify contentType 2015-01-25 18:23:39 -08:00
Harshavardhana dfc3367e25 Add Server, Connection into HTTP header for all API replies 2015-01-25 17:40:22 -08:00
Harshavardhana 9e6eedfbbc Merge pull request #63 from harshavardhana/pr_out_implement_tls_server 2015-01-25 17:23:21 -08:00
Harshavardhana 063832baaf Implement TLS server
$ ./minio --tls --cert <your_cert> --key <your_private_key>

This patchset also provides crypto/x509 - which is a wrapper package
to generate X509 certificates.

This is necessary to provide certificates later through management console
2015-01-25 17:20:00 -08:00
Frederick F. Kautz IV 2368e7c936 Adding error support to all commands in storage interface 2015-01-25 15:35:08 -08:00
Frederick F. Kautz IV d37bbfec41 Adding IsTruncated to minioapi 2015-01-25 13:32:39 -08:00
Frederick F. Kautz IV 39208601dc Adding more api suite tests 2015-01-25 13:06:36 -08:00
Frederick F. Kautz IV 0da193e6d6 Adding paging count tests 2015-01-25 12:57:58 -08:00
Frederick F. Kautz IV 82a69d3ab9 Adding initial test suites 2015-01-25 11:22:38 -08:00
Harshavardhana 15e832de64 For listobjects ignore resources should be for buckets 2015-01-24 18:46:23 -08:00
Harshavardhana c751811dcb Return http.StatusNotImplemented for range of Bucket and Object resources
Not Implemented bucket resources
================================
    "acl":            true
    "lifecycle":      true
    "policy":         true
    "location":       true
    "logging":        true
    "notification":   true
    "versions":       true
    "requestPayment": true
    "versioning":     true
    "website":        true
    "uploads":        true

Not Implemented object resources
================================
    "uploadId":       true
    "acl":            true
    "torrent":        true
    "uploads":        true
2015-01-24 16:37:25 -08:00
Harshavardhana 704d6d8b0a Putbucket before PutObject in TestPutObject 2015-01-24 15:42:24 -08:00
Harshavardhana 77210fead3 Merge pull request #54 from harshavardhana/pr_out_add_bucket_to_be_part_of_object_struct_reply_back_with_bucketnotfound_for_erroneous_object_put_requests 2015-01-24 15:38:56 -08:00
Harshavardhana 357a81e879 Add bucket to be part of object struct, reply back with BucketNotFound
for erroneous Object Put requests.

Other minor cleanups, to follow

  - https://github.com/golang/go/wiki/CodeReviewComments
2015-01-24 15:35:05 -08:00
Frederick F. Kautz IV af1ec94925 Adding more tests 2015-01-24 13:13:03 -08:00
Harshavardhana 01d15ca3b2 Implement crc32c for Darwin, update documentation 2015-01-23 19:43:51 -08:00
Frederick F. Kautz IV dd0c833718 Adding tests for GET object in minioapi. 2015-01-23 19:33:56 -08:00
Frederick F. Kautz IV 71833b4513 Cleaning up more code. 2015-01-23 17:29:27 -08:00
Frederick F. Kautz IV 9224095420 Removing date format method 2015-01-23 17:19:38 -08:00
Harshavardhana c516c74c51 Fix content-type in GetObjects 2015-01-23 13:16:31 -08:00
Frederick F. Kautz IV 574742ec14 Cleaning up minioapi code 2015-01-23 12:26:37 -08:00
Harshavardhana d9d80f7c22 Get Bucket List objects compliance MaxKeys to 1000, Rename
Content struct to Item for cosmetic reasons for xml decoding
on client side
2015-01-23 12:15:01 -08:00
Harshavardhana 132e661136 List buckets response should be nested xml buckets
Additionally check for 'Header' content-type before
referencing it, as it may be empty value
2015-01-23 01:57:26 -08:00
Harshavardhana d482c39341 Merge pull request #42 from harshavardhana/pr_out_make_gcc_mandatory_on_osx_since_clang_lacks_certain_gas_features 2015-01-22 18:33:49 -08:00
Harshavardhana 3d43305b1f Make gcc mandatory on OSX, since clang lacks certain GAS features 2015-01-22 18:33:35 -08:00
Frederick F. Kautz IV 8636e189e6 Cosmetic change, sorting routes 2015-01-22 16:19:55 -08:00
Frederick F. Kautz IV 8d1c447aac Adding HEAD verb to minioapi 2015-01-22 14:25:53 -08:00
Frederick F. Kautz IV 3a3d9989d1 Merge pull request #39 from fkautz/pr_out_making_in_memory_storage_data_type_private 2015-01-21 17:15:29 -08:00
Frederick F. Kautz IV 079cdcd909 Making in memory storage data type private 2015-01-21 17:15:05 -08:00
Frederick F. Kautz IV 8efd23b755 Migrating from unix ts to time.Time 2015-01-21 17:12:47 -08:00
Frederick F. Kautz IV 53a8536984 Fixing regex 2015-01-21 15:29:31 -08:00
Frederick F. Kautz IV 856781b2a4 Simplifying bucket name convention and making convention public 2015-01-21 15:22:15 -08:00
Frederick F. Kautz IV ae0b88f319 Simplfying bucket naming convention 2015-01-21 15:20:35 -08:00
Harshavardhana 546e762abf Remove http unused package 2015-01-21 15:14:49 -08:00
Harshavardhana bd1df87bd3 Merge pull request #34 from fkautz/pr_out_adding_etag_to_headers 2015-01-21 15:07:16 -08:00
Frederick F. Kautz IV 9ca1e37235 Adding etag to headers 2015-01-21 15:02:08 -08:00
Harshavardhana 5cb49175b1 Merge pull request #32 from harshavardhana/pr_out_remove_linux_specific_code_for_now_bring_them_in_later 2015-01-21 13:48:04 -08:00
Harshavardhana 9401262f75 Remove linux specific code for now, bring them in later 2015-01-21 13:47:50 -08:00
Frederick F. Kautz IV c23fa26830 Extracting storage api to interface 2015-01-21 12:58:33 -08:00
Harshavardhana d44404dd81 Provide ETag with sha256Sum of input object data 2015-01-21 10:55:33 -08:00
Harshavardhana 5b67da7d96 Add PutBucket and ListBuckets service 2015-01-21 00:52:59 -08:00
Harshavardhana e22ae2475a Add license headers and other cleanup 2015-01-20 23:16:24 -08:00
Harshavardhana 9949a02e3e Merge pull request #2 from harshavardhana/pr_out_provide_package_http_as_a_http_server_wrapper
Provide package http as a http.Server wrapper
2015-01-20 23:15:16 -08:00
Frederick F. Kautz IV 761249934b Merge pull request #27 from fkautz/pr_out_adding_error_when_object_exists 2015-01-20 19:16:51 -08:00
Frederick F. Kautz IV 9260e6404a Adding error when object exists 2015-01-20 19:13:57 -08:00
Frederick F. Kautz IV 3026f77cfc Adding handler for listing objects to both trailing and non-trailing url 2015-01-20 19:10:52 -08:00
Frederick F. Kautz IV cc4329fb12 List objects in a bucket. 2015-01-20 18:40:22 -08:00
Frederick F. Kautz IV 53190e1210 Initial work for xml list objects 2015-01-20 16:08:14 -08:00
Frederick F. Kautz IV 3c1580fcd9 Simplifying code 2015-01-20 14:07:39 -08:00
Frederick F. Kautz IV 2fedef04ac Moving scsi pkg away from errors.New 2015-01-20 11:34:05 -08:00
Frederick F. Kautz IV 36268f07ea Adding error handling to storage get call 2015-01-19 17:39:20 -08:00
Frederick F. Kautz IV f3705c5d61 Moving web logic to minioapi package 2015-01-19 15:59:01 -08:00
Frederick F. Kautz IV c791c7bca4 Store objects in memory map 2015-01-19 10:30:40 -08:00
Frederick F. Kautz IV 718794205f wip 2015-01-18 17:05:50 -08:00
Frederick F. Kautz IV 2ede0bff52 Closing channel when http server dies
Fixing deadlock on error
2015-01-18 17:04:09 -08:00
Frederick F. Kautz IV 1176d38e84 handler now only listens to GET requests 2015-01-18 16:23:17 -08:00
Frederick F. Kautz IV c766f3617b Populating http handler with test scaffolding 2015-01-18 16:16:02 -08:00
Frederick F. Kautz IV d3d1c1afb3 Minor refactoring, moving http request logic from storage to server 2015-01-18 15:50:53 -08:00
Frederick F. Kautz IV f356599e22 Adding initial web server and storage server module infrastructure 2015-01-18 15:06:24 -08:00
Frederick F. Kautz IV f550e84cf4 Removing old server
Removing storage drivers
2015-01-18 14:54:46 -08:00
Frederick F. Kautz IV b8981ce946 Removing old server 2015-01-17 10:39:35 -08:00
Harshavardhana b1266de212 Consolidate asm.S from crc32c, sha1, sha256 and sha512 2015-01-15 23:09:03 -08:00
Harshavardhana 3bf73642fd Remove assembly code bring back C code 2015-01-15 18:53:15 -08:00
Harshavardhana 6e84b1df97 Provide package http as a http.Server wrapper 2015-01-14 12:43:41 -08:00
Harshavardhana 68de9ac19e Further restructure 2015-01-14 12:40:43 -08:00
Harshavardhana 432275e966 Full restructure in accordance with
- pkg/{subsystem}/{package} style
  - modify Makefile to reflect the new style,
    consolidate various entries
  - add a dummy ``main.go`` at top level
2015-01-14 11:29:04 -08:00
Harshavardhana f347a1e590 Merge with Intel ISAL changes from github.com/minio-io/isal
- These changes bring in a much needed Mac OSX port for
    Intel ISAL library
  - At the current stage this MacOSX part of code is
    considered beta
  - pkg/cpu now supports OSX
  - pkg/checksum/crc32c - is still WIP, rest of the packages
    have been validated
2015-01-11 00:39:39 -08:00
Harshavardhana 462808b87a Disable sha1,sha256,sha512 avx,avx2,sse3 crypto implementations.
Re-implement them later, once stable
2015-01-06 17:02:25 -08:00
Frederick F. Kautz IV b5d84790a2 Further simplifying merging files. Eliminated a structure, switched to PipeWriter 2015-01-04 14:46:51 +13:00
Harshavardhana 0e4a26e3b4 Add Diskattrmap, Scsiattrmap for probed scsi devices
Additional changes

- Use ``iota`` for constants
- Remove unncessary C header files
- ``new-cmd`` now depends on codegangsta cli
2014-12-30 02:37:47 -08:00
Harshavardhana 6b36b5c551 A full restructure 2014-12-29 21:22:26 -08:00