MySQL  8.0.21
Source Code Documentation
filesystem.cc File Reference
#include "mysql/harness/filesystem.h"
#include <cstring>
#include <fstream>
#include <ostream>
#include <fcntl.h>
#include <sys/stat.h>

Namespaces

 mysql_harness
 

Functions

static const char * mysql_harness::file_type_name (Path::FileType type)
 
std::ostream & mysql_harness::operator<< (std::ostream &out, Path::FileType type)
 
HARNESS_EXPORT int mysql_harness::delete_dir_recursive (const std::string &dir) noexcept
 Removes directory and all its contents. More...
 
HARNESS_EXPORT std::string mysql_harness::get_plugin_dir (const std::string &runtime_dir)
 
HARNESS_EXPORT std::string mysql_harness::get_tests_data_dir (const std::string &runtime_dir)
 
int mysql_harness::mkdir_wrapper (const std::string &dir, perm_mode mode)
 
int mysql_harness::mkdir_recursive (const Path &path, perm_mode mode)
 
HARNESS_EXPORT int mysql_harness::mkdir (const std::string &dir, perm_mode mode, bool recursive=false)
 Creates a directory *. More...
 
void HARNESS_EXPORT mysql_harness::check_file_access_rights (const std::string &file_name)
 Verifies access permissions of a file. More...
 
static void mysql_harness::throwing_chmod (const std::string &file_name, mode_t mask)
 Sets access permissions for a file. More...
 
void HARNESS_EXPORT mysql_harness::make_file_public (const std::string &file_name)
 Changes file access permissions to be fully accessible by all users. More...
 
void HARNESS_EXPORT mysql_harness::make_file_private (const std::string &file_name, const bool read_only_for_local_service=true)
 Changes file access permissions to be accessible only by a limited set of users. More...
 
void HARNESS_EXPORT mysql_harness::make_file_readonly (const std::string &file_name)
 Changes file access permissions to be read only. More...