[sheepdog] [PATCH v2 00/10] add preliminary support for S3 and Swift APIs
MORITA Kazutaka
morita.kazutaka at gmail.com
Thu Oct 31 18:08:03 CET 2013
From: MORITA Kazutaka <morita.kazutaka at lab.ntt.co.jp>
v2:
- add error check of strtoull
- initialize req->status with UNKNOWN explicitly
- move all the http files into the http subdirectory
- rename kvs to kv
This adds a basic support for S3 and Swift APIs.
TODO items:
- Improve compatibility with S3 and Swift.
- Improve performance of the underlying kvs feature.
- Add support for authorization.
- Add support for large objects than 4MB.
- Add multi part upload support.
- Add ACL support.
- Add versioning support.
- Add support for other calling format like http://bucket.[host]/object
- Add support for metadata.
- Add support for etag.
- Add tests.
- Add support for quota limit.
MORITA Kazutaka (10):
sheep: move http.c into the http subdirectory
util: add helper functions to process a requested URI
http: avoid reading a total data in the main thread
http: add uri and status to http_request
http: usr CRLF for endline of http header
http: move some structures and definitions to http.h
sheep: add framework for http drivers
sheep: add kvs feature for object storage
sheep/http: add s3 driver
sheep/http: add swift driver
include/util.h | 3 +
lib/util.c | 53 +++++
sheep/Makefile.am | 4 +-
sheep/http.c | 313 ------------------------------
sheep/http/http.c | 379 ++++++++++++++++++++++++++++++++++++
sheep/http/http.h | 111 +++++++++++
sheep/http/kv.c | 556 +++++++++++++++++++++++++++++++++++++++++++++++++++++
sheep/http/kv.h | 44 +++++
sheep/http/s3.c | 282 +++++++++++++++++++++++++++
sheep/http/swift.c | 259 +++++++++++++++++++++++++
sheep/sheep.c | 16 +-
sheep/sheep_priv.h | 4 +-
12 files changed, 1701 insertions(+), 323 deletions(-)
delete mode 100644 sheep/http.c
create mode 100644 sheep/http/http.c
create mode 100644 sheep/http/http.h
create mode 100644 sheep/http/kv.c
create mode 100644 sheep/http/kv.h
create mode 100644 sheep/http/s3.c
create mode 100644 sheep/http/swift.c
--
1.8.1.2
More information about the sheepdog
mailing list