1 // -*- mode:C++; tab-width:8; c-basic-offset:2; indent-tabs-mode:t -*-
2 // vim: ts=8 sw=2 smarttab ft=cpp
5 #include <include/types.h>
9 class ApplyServerSideEncryptionByDefault
11 std::string kmsMasterKeyID
;
12 std::string sseAlgorithm
;
15 ApplyServerSideEncryptionByDefault(): kmsMasterKeyID(""), sseAlgorithm("") {};
17 const std::string
& kms_master_key_id() const {
18 return kmsMasterKeyID
;
21 const std::string
& sse_algorithm() const {
25 void encode(bufferlist
& bl
) const {
26 ENCODE_START(1, 1, bl
);
27 encode(kmsMasterKeyID
, bl
);
28 encode(sseAlgorithm
, bl
);
32 void decode(bufferlist::const_iterator
& bl
) {
34 decode(kmsMasterKeyID
, bl
);
35 decode(sseAlgorithm
, bl
);
39 void decode_xml(XMLObj
*obj
);
40 void dump_xml(Formatter
*f
) const;
42 WRITE_CLASS_ENCODER(ApplyServerSideEncryptionByDefault
)
44 class ServerSideEncryptionConfiguration
47 ApplyServerSideEncryptionByDefault applyServerSideEncryptionByDefault
;
48 bool bucketKeyEnabled
;
51 ServerSideEncryptionConfiguration(): bucketKeyEnabled(false) {};
53 const std::string
& kms_master_key_id() const {
54 return applyServerSideEncryptionByDefault
.kms_master_key_id();
57 const std::string
& sse_algorithm() const {
58 return applyServerSideEncryptionByDefault
.sse_algorithm();
61 bool bucket_key_enabled() const {
62 return bucketKeyEnabled
;
65 void encode(bufferlist
& bl
) const {
66 ENCODE_START(1, 1, bl
);
67 encode(applyServerSideEncryptionByDefault
, bl
);
68 encode(bucketKeyEnabled
, bl
);
72 void decode(bufferlist::const_iterator
& bl
) {
74 decode(applyServerSideEncryptionByDefault
, bl
);
75 decode(bucketKeyEnabled
, bl
);
79 void decode_xml(XMLObj
*obj
);
80 void dump_xml(Formatter
*f
) const;
82 WRITE_CLASS_ENCODER(ServerSideEncryptionConfiguration
)
84 class RGWBucketEncryptionConfig
88 ServerSideEncryptionConfiguration rule
;
91 RGWBucketEncryptionConfig(): rule_exist(false) {}
93 const std::string
& kms_master_key_id() const {
94 return rule
.kms_master_key_id();
97 const std::string
& sse_algorithm() const {
98 return rule
.sse_algorithm();
101 bool bucket_key_enabled() const {
102 return rule
.bucket_key_enabled();
105 bool has_rule() const {
109 void encode(bufferlist
& bl
) const {
110 ENCODE_START(1, 1, bl
);
111 encode(rule_exist
, bl
);
118 void decode(bufferlist::const_iterator
& bl
) {
120 decode(rule_exist
, bl
);
127 void decode_xml(XMLObj
*obj
);
128 void dump_xml(Formatter
*f
) const;
130 WRITE_CLASS_ENCODER(RGWBucketEncryptionConfig
)