- set_attributes(jcr, fname, ofile, lname, type, stream,
- &statp, attribsEx, &ofd);
- extract = FALSE;
- } else if (!(stream == STREAM_MD5_SIGNATURE || stream == STREAM_SHA1_SIGNATURE)) {
+#else
+ non_support_acl++;
+#endif
+ break;
+
+ case STREAM_UNIX_ATTRIBUTES_DEFAULT_ACL:
+#ifdef HAVE_ACL
+ pm_strcpy(jcr->acl_text, sd->msg);
+ Dmsg2(400, "Restoring ACL type 0x%2x <%s>\n", BACL_TYPE_DEFAULT, jcr->acl_text);
+ if (bacl_set(jcr, BACL_TYPE_DEFAULT) != 0) {
+ Jmsg1(jcr, M_WARNING, 0, "Can't restore default ACL of %s\n", jcr->last_fname);
+ }
+#else
+ non_support_acl++;
+#endif
+ break;
+
+ case STREAM_MD5_SIGNATURE:
+ case STREAM_SHA1_SIGNATURE:
+ break;
+
+ case STREAM_PROGRAM_NAMES:
+ case STREAM_PROGRAM_DATA:
+ if (!non_support_progname) {
+ Pmsg0(000, "Got Program Name or Data Stream. Ignored.\n");
+ non_support_progname++;
+ }
+ break;
+
+ default:
+ /* If extracting, wierd stream (not 1 or 2), close output file anyway */
+ if (extract) {
+ Dmsg1(30, "Found wierd stream %d\n", stream);
+ if (size > 0 && !is_bopen(&bfd)) {
+ Jmsg0(jcr, M_ERROR, 0, _("Logic error: output file should be open\n"));
+ }
+ set_attributes(jcr, attr, &bfd);
+ extract = false;
+ } else if (is_bopen(&bfd)) {
+ Jmsg0(jcr, M_ERROR, 0, _("Logic error: output file should not be open\n"));
+ bclose(&bfd);
+ }
+ Jmsg(jcr, M_ERROR, 0, _("Unknown stream=%d ignored. This shouldn't happen!\n"), stream);