Commit Graph

48827 Commits

Author SHA1 Message Date
Yehuda Sadeh
f851cbcde7 rgw: implement RGWOp_Metadata_Put::get_type()
Signed-off-by: Yehuda Sadeh <yehuda@redhat.com>
2016-02-13 12:49:42 +00:00
Javier M. Mellid
e183009b5b rgw: raise error on not implemented AWS4 completions
Signed-off-by: Javier M. Mellid <jmunhoz@igalia.com>
2016-02-13 12:49:42 +00:00
Javier M. Mellid
8e1048d142 rgw: add AWS4 completion support for RGW_OP_PUT_ACLS
Signed-off-by: Javier M. Mellid <jmunhoz@igalia.com>
2016-02-13 12:43:04 +00:00
Javier M. Mellid
e28072e392 rgw: add AWS4 completion support for RGW_OP_PUT_OBJ
Signed-off-by: Javier M. Mellid <jmunhoz@igalia.com>
2016-02-13 12:43:04 +00:00
Javier M. Mellid
55477546e8 rgw: return -EINVAL on unknow authorization
Signed-off-by: Javier M. Mellid <jmunhoz@igalia.com>
2016-02-13 12:41:28 +00:00
Javier M. Mellid
e533917dc9 rgw: verify X-Amz-Date
Signed-off-by: Javier M. Mellid <jmunhoz@igalia.com>
2016-02-13 12:41:28 +00:00
Javier M. Mellid
f7f2198436 rgw: do not encode key/val when computing canonical qs
Signed-off-by: Javier M. Mellid <jmunhoz@igalia.com>
2016-02-13 12:41:27 +00:00
Javier M. Mellid
537e5493fb Revert "rgw: avoid re-encoding already encoded query strings in AWS4 auth"
Signed-off-by: Javier M. Mellid <jmunhoz@igalia.com>
2016-02-13 12:41:27 +00:00
Yehuda Sadeh
52e601b347 rgw: multiple fixes and adjustments following aws4 code review
Signed-off-by: Yehuda Sadeh <yehuda@redhat.com>
2016-02-13 12:39:41 +00:00
Javier M. Mellid
4da853950c rgw: achieve same error behaviour in S3 and RGW when processing signedheaders
This patch gets the same error response in S3 and RGW when the error is related
to the signedheaders processing.

Fixes: #10333

Signed-off-by: Javier M. Mellid <jmunhoz@igalia.com>
2016-02-13 12:33:43 +00:00
Javier M. Mellid
2de292acf3 rgw: validate x-amz-sha256
Verify content's sha256 sum matches the expected value.

Fixes: #10333

Signed-off-by: Javier M. Mellid <jmunhoz@igalia.com>
2016-02-13 12:33:43 +00:00
Javier M. Mellid
79b6b4f105 rgw: check if x-amz-date has a value
Fixes: #10333

Signed-off-by: Javier M. Mellid <jmunhoz@igalia.com>
2016-02-13 12:31:07 +00:00
Javier M. Mellid
c32e5eaa8e rgw: verify Content-MD5 is a valid base64 value
Fixes: #10333

Signed-off-by: Javier M. Mellid <jmunhoz@igalia.com>
2016-02-13 12:31:07 +00:00
Javier M. Mellid
b7772cac3a rgw: initialize aws4_auth_complete
Fixes: #10333

Signed-off-by: Javier M. Mellid <jmunhoz@igalia.com>
2016-02-13 12:31:07 +00:00
Javier M. Mellid
3210cd8a28 rgw: AWS4 auth support for positive content-length
Handle AWS4 auth on requests with positive content-length. It splits the
auth process along several steps to process the body content on the fly
instead of reading the whole body in memory. After that, it completes
the delayed AWS4 auth properly.

Requests with content-length <= 0 are validated as usual. They don't
require any kind of completion.

Requests with content-length > 0 use a streaming approach together with
a completion step.

Fixes: #10333

Signed-off-by: Javier M. Mellid <jmunhoz@igalia.com>
2016-02-13 12:31:07 +00:00
Javier M. Mellid
466cb81cfc rgw: UNSIGNED-PAYLOAD support in AWS4 auth
Fixes: #10333

Signed-off-by: Javier M. Mellid <jmunhoz@igalia.com>
2016-02-13 12:25:55 +00:00
Javier M. Mellid
483ad81592 rgw: avoid re-encoding already encoded query strings in AWS4 auth
When computing V4 signature, we need to encode the query string. But it
could come already encoded, at least partially.

So do not encode the entities that are already encoded.

Fixes: #10333

Signed-off-by: Javier M. Mellid <jmunhoz@igalia.com>
2016-02-13 12:25:55 +00:00
Javier M. Mellid
49856eb7c1 rgw: AWS4 auth support when using request params
Fixes: #10333

Signed-off-by: Javier M. Mellid <jmunhoz@igalia.com>
2016-02-13 12:22:36 +00:00
Javier M. Mellid
a15abe4690 rgw: add proper AWSv4 and AWSv2 auth detection
Adds a new authorize function to identify/handle AWSv4 and AWSv2 auth
properly, handling common code, etc.

Fixes: #10333

Signed-off-by: Javier M. Mellid <jmunhoz@igalia.com>
2016-02-13 12:22:36 +00:00
Javier M. Mellid
cbfc4af649 rgw: handle AWS4 auth case when query string exists
Crafts the canonical query string. URI-encode each parameter name and
value properly.

Fixes: #10333

Signed-off-by: Javier M. Mellid <jmunhoz@igalia.com>
2016-02-13 12:22:36 +00:00
Javier M. Mellid
9a0de484d8 rgw: AWS4 authentication minimal support
Amazon S3 supports Signature Version 4. This patch contains the minimal
implementation supporting AWS4 in RGW. It implements AWS4 authentication
on http methods without body content and vars not shipping in the
request query string.

Fixes: #10333

Signed-off-by: Javier M. Mellid <jmunhoz@igalia.com>
2016-02-13 12:22:36 +00:00
Kefu Chai
fb72714326 Merge pull request #7605 from dachary/wip-python-wheelhouse
python: use pip instead of python setup.py

Reviewed-by: Kefu Chai <kchai@redhat.com>
2016-02-12 19:59:08 +08:00
Loic Dachary
cd87bd48de ceph-disk,ceph-detect-init: clean the build directory
b030d8fc11 should have kept the build
directory in .gitignore and the clean target. Re-adding.

Signed-off-by: Loic Dachary <loic@dachary.org>
2016-02-12 17:10:41 +07:00
Loic Dachary
c1d8faad26 python: use pip instead of python setup.py
python setup.py develop may try to pull dependencies from the net and
has no way to collect them from the wheelhouse that was populated by
install-deps.sh. Use pip install -e instead

Signed-off-by: Loic Dachary <loic@dachary.org>
2016-02-12 17:10:41 +07:00
Loic Dachary
18e64820aa Merge pull request #7528 from objoo/YD-jewel-mailmap-updates-take2
mailmap updates

Reviewed-by: Loic Dachary <ldachary@redhat.com>
2016-02-12 13:14:17 +07:00
Josh Durgin
a2888e0ad8 Merge pull request #7609 from dillaman/wip-librbd-flatten-test
test: new librbd flatten test case

Reviewed-by: Josh Durgin <jdurgin@redhat.com>
2016-02-11 21:10:13 -08:00
Josh Durgin
bc22c0f327 Merge pull request #7583 from dillaman/wip-librbd-journal-fsx
librbd: integrate journal replay with fsx testing

Reviewed-by: Josh Durgin <jdurgin@redhat.com>
2016-02-11 21:09:01 -08:00
Sage Weil
90d93fe938 Merge pull request #7613 from wjwithagen/patch-1
osd: add missing newline to usage message

Reviewed-by: Sage Weil <sage@redhat.com>
2016-02-11 16:32:44 -05:00
Willem Jan Withagen
34f896b0db src/ceph_osd.cc Add missing newline to usage message
Signed-off-by: Willem Jan Withagen <wjw@digiware.nl>
2016-02-11 21:29:19 +01:00
Sage Weil
d7f0304aec common: fix build error with Graylog
Graylog includes boost stuff, which clobbers our assert macros.

Signed-off-by: Sage Weil <sage@redhat.com>
2016-02-11 13:24:29 -05:00
Casey Bodley
05a4811c57 Merge pull request #6920 from oritwas/wip-mstart-cmake
ajdust mstart and mstop script to run with cmake build
2016-02-11 12:43:04 -05:00
Ali Maredia
aa6d0a9c65 Merge pull request #7523 from tchaikov/wip-fix-cmake
cmake: fix the build of tests
2016-02-11 12:40:41 -05:00
Sage Weil
6adb6944a4 Merge pull request #7607 from FlorentCoppint/master
mount.fuse.ceph: better parsing of arguments passed to mount.fuse.ceph by mount command

Reviewed-by: Sage Weil <sage@redhat.com>
2016-02-11 12:30:54 -05:00
Jason Dillaman
5b3a4d2cbc test: new librbd flatten test case
AIO operations after a flatten operation were previously
hanging during the close of the parent image.

Signed-off-by: Jason Dillaman <dillaman@redhat.com>
2016-02-11 10:01:38 -05:00
Florent
8fe75846bd Better parsing of arguments passed to mount.fuse.ceph by mount command.
Signed-off-by: Florent Bautista <florent@coppint.com>
2016-02-11 14:51:49 +01:00
Sage Weil
63e671a979 Merge pull request #5961 from majianpeng/small-fix
osd: clean up CMPXATTR checks

Reviewed-by: Samuel Just <sjust@redhat.com>
Reviewed-by: Sage Weil <sage@redhat.com>
2016-02-11 08:46:22 -05:00
Sage Weil
e211b5b278 Merge pull request #7533 from Cdiscount/master
debian: include cpio in build-requiers

Reviewed-by: Sage Weil <sage@redhat.com>
2016-02-11 08:45:17 -05:00
Sage Weil
cc2200c5e6 Merge pull request #7537 from ifed01/wip-no-promote-for-delete-fix
osd: fix unnecessary object promotion when deleting from cache pool

Reviewed-by: Sage Weil <sage@redhat.com>
2016-02-11 08:44:35 -05:00
Sage Weil
f8d5807151 Merge pull request #7567 from branch-predictor/bp-slimdown-conns
msg: significantly reduce minimal memory usage of connections

Reviewed-by: Sage Weil <sage@redhat.com>
2016-02-11 08:43:46 -05:00
Sage Weil
88d251475b Merge pull request #7579 from javacruft/wip-systemd-escaping
systemd: correctly escape block device paths

Reviewed-by: Sage Weil <sage@redhat.com>
2016-02-11 08:42:50 -05:00
Sage Weil
0d819d549b Merge pull request #7581 from jcsp/wip-asok-lockdep
librados: mix lock cycle (un)registering asok commands

Reviewed-by: Sage Weil <sage@redhat.com>
2016-02-11 08:42:26 -05:00
Sage Weil
62ecb28ff2 Merge pull request #7604 from ceph/wip-selinux-update-radosgw-log
selinux: allow log files to be located in /var/log/radosgw

Reviewed-by: Sage Weil <sage@redhat.com>
2016-02-11 08:37:50 -05:00
Loic Dachary
4056ee298a Merge pull request #7606 from tchaikov/wip-fix-ceph-disk
tests: ceph-disk.sh: use "readlink -f" instead for fullpath

Reviewed-by: Loic Dachary <ldachary@redhat.com>
2016-02-11 19:18:34 +07:00
Kefu Chai
8f42f89937 tests: ceph-disk.sh: use "readlink -f" instead for fullpath
if $PATH has ".." in it, and the program happen to be located in
"..", `which program` will print `../program` instead of its fullpath,
so we should always use `readlink -f` for the fullpath.

Signed-off-by: Kefu Chai <kchai@redhat.com>
2016-02-11 20:08:35 +08:00
Boris Ranto
bcf12049fb selinux: Allow log files to be located in /var/log/radosgw
We do suggest users to put their logs in /var/log/radosgw in the
documentation at times. We should also label that directory with
ceph_var_log_t so that ceph daemons can also write there.

The commit also updates the man page for this policy. This man page is
automatically generated by

* sepolicy manpage -p . -d ceph_t

and have not been reloaded in a while. Hence, it contains few more
changes than the new radosgw directory.

Signed-off-by: Boris Ranto <branto@redhat.com>
2016-02-11 12:37:51 +01:00
Haomai Wang
765c7592af Merge pull request #7601 from jjhuo/master
os/bluestore: fix a typo in SPDK path parsing

Reviewed-by: Haomai Wang <haomai@xsky.com>
2016-02-11 14:36:01 +08:00
Jianjian Huo
40936fb1f5 os/bluestore: fix a typo in SPDK path parsing
SPDK block path with bluestore is something like spdk:55cd2e404bd73932.
The size of the prefix to compare should be 5.
sizeof(SPDK_PREFIX)-1 returns 5, while sizeof(SPDK_PREFIX-1) returns 8.

Signed-off-by: Jianjian Huo <samuel.huo@gmail.com>
2016-02-10 20:44:33 -05:00
Jason Dillaman
b92eb668c1 librbd: protect journal replay against overlapping writes
If fsx issues a back-to-back synchronous write, these will be
replayed as AIO writes.  If object map is enabled, it's possible
for the two writes to commit to disk out-of-order if the first
write required an object map update.

Signed-off-by: Jason Dillaman <dillaman@redhat.com>
2016-02-10 19:06:02 -05:00
Jason Dillaman
bb662311b4 librbd: track in-flight AIO flush requests during journal replay
Signed-off-by: Jason Dillaman <dillaman@redhat.com>
2016-02-10 17:40:42 -05:00
Jason Dillaman
1cc409b45e test: possible librbd journal replay flush race
Signed-off-by: Jason Dillaman <dillaman@redhat.com>
2016-02-10 17:39:36 -05:00