fix getting and setting contexts in selinux

recreate lost+found with selinux contexts

Change-Id: I19e8696d47319dfb641520956c8a27c2a796a0c3
diff --git a/twrpTar.cpp b/twrpTar.cpp
index 76c23c8..eba482e 100644
--- a/twrpTar.cpp
+++ b/twrpTar.cpp
@@ -34,6 +34,7 @@
 #include <sstream>
 #include <vector>
 #include <dirent.h>
+#include <libgen.h>
 #include <sys/mman.h>
 #include "twrpTar.hpp"
 #include "twcommon.h"
@@ -532,7 +533,7 @@
 			continue; // Skip /data/media
 		if (de->d_type == DT_BLK || de->d_type == DT_CHR)
 			continue;
-		if (de->d_type == DT_DIR && strcmp(de->d_name, ".") != 0 && strcmp(de->d_name, "..") != 0 && strcmp(de->d_name, "lost+foud") != 0)
+		if (de->d_type == DT_DIR && strcmp(de->d_name, ".") != 0 && strcmp(de->d_name, "..") != 0)
 		{
 			unsigned long long folder_size = TWFunc::Get_Folder_Size(FileName, false);
 			if (Archive_Current_Size + folder_size > MAX_ARCHIVE_SIZE) {
@@ -723,6 +724,10 @@
 			if (strcmp(de->d_name, ".") != 0) {
 				subfolder += de->d_name;
 			} else {
+				std::string parentDir = basename(subfolder.c_str());
+				LOGINFO("parentDir: %s\n", parentDir.c_str());
+				if (!parentDir.compare("lost+found"))
+					continue;
 				LOGINFO("tarDirs addFile '%s' including root: %i\n", subfolder.c_str(), include_root);
 				if (addFile(subfolder, include_root) != 0)
 					return -1;