diff options
Diffstat (limited to 'test/vpnor/tmpd.cpp')
-rw-r--r-- | test/vpnor/tmpd.cpp | 33 |
1 files changed, 33 insertions, 0 deletions
diff --git a/test/vpnor/tmpd.cpp b/test/vpnor/tmpd.cpp new file mode 100644 index 0000000..16a4c2b --- /dev/null +++ b/test/vpnor/tmpd.cpp @@ -0,0 +1,33 @@ +// SPDX-License-Identifier: Apache-2.0 +// Copyright (C) 2018 IBM Corp. + +#include "test/vpnor/tmpd.hpp" + +namespace openpower +{ +namespace virtual_pnor +{ +namespace test +{ + +namespace fs = std::experimental::filesystem; + +size_t VpnorRoot::write(const std::string &name, const void *data, size_t len) +{ + fs::path path{root}; + path /= name; + + if (!fs::exists(path)) + /* It's not in the ToC */ + throw std::invalid_argument(name); + + std::ofstream partitionFile(path.c_str()); + partitionFile.write((const char *)data, len); + partitionFile.close(); + + return len; +} + +} // test +} // virtual_pnor +} // openpower |