24 bool recursiveDelete(
const string &path)
26 DIR *mydir = opendir(path.c_str());
30 struct dirent *mydirent;
31 while ((mydirent = readdir(mydir)) != 0) {
32 string d = mydirent->d_name;
33 if (d ==
"." || d ==
"..")
36 string f = path +
"/" + d;
39 if (lstat(f.c_str(), &mystat) != 0) {
45 if (S_ISDIR(mystat.st_mode)) {
46 if (!recursiveDelete(f)) {
50 if (rmdir(f.c_str()) != 0 && errno != ENOENT) {
55 if (unlink(f.c_str()) != 0 && errno != ENOENT) {
75 if (!recursiveDelete(s_in)) {
76 setLastError(
"error deleting Maildir - status is undefined");
80 if (rmdir(s_in.c_str()) != 0) {
82 +
string(strerror(errno))
83 +
" - status is undefined");
void setLastError(const std::string &error) const
bool deleteMailbox(const std::string &s)
Declaration of the Maildir class.