           mount_request(jcr, bs, msg);
 Index: src/dird/protos.h
 ===================================================================
---- src/dird/protos.h	(revision 8270)
-+++ src/dird/protos.h	(working copy)
+--- src/dird/protos.h	(révision 8270)
++++ src/dird/protos.h	(copie de travail)
 @@ -80,6 +80,7 @@
  /* catreq.c */
  extern void catalog_request(JCR *jcr, BSOCK *bs);

Index: src/dird/catreq.c
===================================================================
--- src/dird/catreq.c	(revision 8270)
+++ src/dird/catreq.c	(working copy)
@@ -356,14 +356,7 @@
    return;
 }

          ( utime_t)time(NULL)));
    if (are_attributes_spooled(jcr)) {
       if (fseeko(jcr->dir_bsock->m_spool_fd, 0, SEEK_END) != 0) {
@@ -654,7 +681,13 @@
       dir_send_job_status(jcr);
       Jmsg(jcr, M_INFO, 0, _("Sending spooled attrs to the Director. Despooling %s bytes ...\n"),
             edit_uint64_with_commas(size, ec1));
-      jcr->dir_bsock->despool(update_attr_spool_size, size);
+
+      if (!blast_attr_spool_file(jcr, size)) {
+         /* Can't read spool file from director side,
+          * send content over network.
+          */
+         jcr->dir_bsock->despool(update_attr_spool_size, size);
+      }
       return close_attr_spool_file(jcr, jcr->dir_bsock);
    }
    return true;
@@ -664,13 +697,6 @@
    return false;
 }
 
