break;
case FT_NOFSCHG:
/* Suppress message for /dev filesystems */
- if (strncmp(ff_pkt->fname, "/dev/", 5) != 0) {
+// if (strncmp(ff_pkt->fname, "/dev/", 5) != 0) {
+ if (!is_in_fileset(ff_pkt)) {
Jmsg(jcr, M_INFO, 1, _(" %s is a different filesystem. Will not descend from %s into %s\n"),
ff_pkt->fname, ff_pkt->top_fname, ff_pkt->fname);
}
return 1;
}
+/*
+ * Test if the currently selected directory (in ff->fname) is
+ * explicitly in the Include list or explicitly in the Exclude
+ * list.
+ */
+bool is_in_fileset(FF_PKT *ff)
+{
+ dlistString *node;
+ char *fname;
+ int i;
+ findINCEXE *incexe;
+ findFILESET *fileset = ff->fileset;
+ if (fileset) {
+ for (i=0; i<fileset->include_list.size(); i++) {
+ incexe = (findINCEXE *)fileset->include_list.get(i);
+ foreach_dlist(node, &incexe->name_list) {
+ fname = node->c_str();
+ Dmsg2(100, "Inc fname=%s ff->fname=%s\n", fname, ff->fname);
+ if (strcmp(fname, ff->fname) == 0) {
+ return true;
+ }
+ }
+ }
+#ifdef xxx
+ for (i=0; i<fileset->exclude_list.size(); i++) {
+ incexe = (findINCEXE *)fileset->exclude_list.get(i);
+ foreach_dlist(node, &incexe->name_list) {
+ fname = node->c_str();
+ Dmsg2(000, "Exc fname=%s ff->fname=%s\n", fname, ff->fname);
+ if (strcmp(fname, ff->fname) == 0) {
+ return true;
+ }
+ }
+ }
+#endif
+ }
+ return false;
+}
+
+
static bool accept_file(FF_PKT *ff)
{
int i, j, k;
int match_files(JCR *jcr, FF_PKT *ff, int sub(JCR *, FF_PKT *ff_pkt, bool));
int term_find_files(FF_PKT *ff);
int get_win32_driveletters(FF_PKT *ff, char* szDrives);
+bool is_in_fileset(FF_PKT *ff);
/* From match.c */
void init_include_exclude_files(FF_PKT *ff);
General:
27Feb08
+kes Suppress incorrect 'Will not descend from x into y' messages.
kes Eliminate FORTIFY_CODE=2 bug, and make first cut at removing
daemon globals used by parser.
kes Apply Joao's patch to separate DB_TYPE and DB_PROG in configure.