commit
43249b7458
@ -0,0 +1 @@ |
|||||||
|
ippcp_example |
Binary file not shown.
Binary file not shown.
@ -1,4 +1,4 @@ |
|||||||
ippcp_SOURCES = ippcp_provider.cc
|
ippcp_SOURCES = ippcp_provider.cc
|
||||||
ippcp_HEADERS = ippcp_provider.h
|
ippcp_HEADERS = ippcp_provider.h
|
||||||
ippcp_LDFLAGS = -lippcp
|
ippcp_LDFLAGS = -lippcp -Lplugin/ippcp/library/linux/lib
|
||||||
ippcp_CXXFLAGS = -Iplugin/ippcp/library/include
|
ippcp_CXXFLAGS = -Iplugin/ippcp/library/include
|
||||||
|
Binary file not shown.
Binary file not shown.
@ -1,6 +1,6 @@ |
|||||||
include ../../../make_config.mk |
include ../../../make_config.mk |
||||||
|
|
||||||
PLATFORM_LDFLAGS += -lrocksdb -lippcp -L../../.. -L../library/lib
|
PLATFORM_LDFLAGS += -lrocksdb -lippcp -L../../.. -L../library/linux/lib
|
||||||
.PHONY: clean |
.PHONY: clean |
||||||
|
|
||||||
all: ippcp_example |
all: ippcp_example |
@ -0,0 +1,69 @@ |
|||||||
|
// Copyright (c) 2011-present, Facebook, Inc. All rights reserved.
|
||||||
|
// Copyright (c) 2020 Intel Corporation
|
||||||
|
// This source code is licensed under both the GPLv2 (found in the
|
||||||
|
// COPYING file in the root directory) and Apache 2.0 License
|
||||||
|
// (found in the LICENSE.Apache file in the root directory).
|
||||||
|
|
||||||
|
#include <rocksdb/db.h> |
||||||
|
#include <rocksdb/env_encryption.h> |
||||||
|
#include <rocksdb/options.h> |
||||||
|
#include <rocksdb/slice.h> |
||||||
|
#include <rocksdb/utilities/options_util.h> |
||||||
|
#include <rocksdb/utilities/object_registry.h> |
||||||
|
|
||||||
|
#include <string> |
||||||
|
|
||||||
|
#include "../ippcp_provider.h" |
||||||
|
|
||||||
|
using namespace ROCKSDB_NAMESPACE; |
||||||
|
|
||||||
|
std::string kDBPath = "/tmp/ipp_aes_example_linux"; |
||||||
|
|
||||||
|
int main() { |
||||||
|
DB* db; |
||||||
|
Options options; |
||||||
|
options.create_if_missing = true; |
||||||
|
|
||||||
|
std::shared_ptr<EncryptionProvider> provider; |
||||||
|
Status status = EncryptionProvider::CreateFromString( |
||||||
|
ConfigOptions(), IppcpProvider::kName(), &provider); |
||||||
|
|
||||||
|
assert(status.ok()); |
||||||
|
|
||||||
|
status = |
||||||
|
provider->AddCipher("", "a6d2ae2816157e2b3c4fcf098815f7xb", 32, false); |
||||||
|
assert(status.ok()); |
||||||
|
|
||||||
|
options.env = NewEncryptedEnv(Env::Default(), provider); |
||||||
|
|
||||||
|
status = DB::Open(options, kDBPath, &db); |
||||||
|
assert(status.ok()); |
||||||
|
|
||||||
|
setbuf(stdout, NULL); |
||||||
|
printf("writing 1M records..."); |
||||||
|
WriteOptions w_opts; |
||||||
|
for (int i = 0; i < 1000000; ++i) { |
||||||
|
status = db->Put(w_opts, std::to_string(i), std::to_string(i)); |
||||||
|
assert(status.ok()); |
||||||
|
} |
||||||
|
db->Flush(FlushOptions()); |
||||||
|
printf("done.\n"); |
||||||
|
|
||||||
|
printf("reading 1M records..."); |
||||||
|
std::string value; |
||||||
|
ReadOptions r_opts; |
||||||
|
for (int i = 0; i < 1000000; ++i) { |
||||||
|
status = db->Get(r_opts, std::to_string(i), &value); |
||||||
|
assert(status.ok()); |
||||||
|
assert(value == std::to_string(i)); |
||||||
|
} |
||||||
|
printf("done.\n"); |
||||||
|
|
||||||
|
// Close database
|
||||||
|
status = db->Close(); |
||||||
|
assert(status.ok()); |
||||||
|
//status = DestroyDB(kDBPath, options);
|
||||||
|
//assert(status.ok());
|
||||||
|
|
||||||
|
return 0; |
||||||
|
} |
@ -0,0 +1,12 @@ |
|||||||
|
include ../../../make_config.mk |
||||||
|
|
||||||
|
PLATFORM_LDFLAGS += -lrocksdb -lippcp -L../../.. -L../library/macos/lib
|
||||||
|
.PHONY: clean |
||||||
|
|
||||||
|
all: ippcp_example |
||||||
|
|
||||||
|
ippcp_example: ippcp_example.cc |
||||||
|
$(CXX) $(CXXFLAGS) $@.cc -o$@ -I../../../include -O2 $(PLATFORM_LDFLAGS) $(PLATFORM_CXXFLAGS) -I../library/include
|
||||||
|
|
||||||
|
clean: |
||||||
|
rm -rf ./ippcp_example
|
@ -1,6 +1,6 @@ |
|||||||
include ../../../make_config.mk |
include ../../../make_config.mk |
||||||
|
|
||||||
PLATFORM_LDFLAGS += -lrocksdb -lippcp -L../../.. -L../library/lib
|
PLATFORM_LDFLAGS += -lrocksdb -lippcp -L../../.. -L../library/linux/lib
|
||||||
.PHONY: clean |
.PHONY: clean |
||||||
|
|
||||||
all: ippcp_example |
all: ippcp_example |
Loading…
Reference in new issue