]> git.sur5r.net Git - bacula/bacula/blobdiff - bacula/src/stored/askdir.c
Allow plugin to skip restore if problem
[bacula/bacula] / bacula / src / stored / askdir.c
index 6e13beaa8f88a1a64b1f775c54a19ec970616982..898dfa093f40c97e5618c83d0a419080b34c6a07 100644 (file)
@@ -6,7 +6,7 @@
    The main author of Bacula is Kern Sibbald, with contributions from
    many others, a complete list can be found in the file AUTHORS.
    This program is Free Software; you can redistribute it and/or
-   modify it under the terms of version two of the GNU General Public
+   modify it under the terms of version three of the GNU Affero General Public
    License as published by the Free Software Foundation and included
    in the file LICENSE.
 
@@ -15,7 +15,7 @@
    MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
    General Public License for more details.
 
-   You should have received a copy of the GNU General Public License
+   You should have received a copy of the GNU Affero General Public License
    along with this program; if not, write to the Free Software
    Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA
    02110-1301, USA.
@@ -73,7 +73,7 @@ static char Device_update[] = "DevUpd Job=%s device=%s "
    "changer_name=%s media_type=%s volume_name=%s\n";
 
 
-/* Send update information about a device to Director */
+/** Send update information about a device to Director */
 bool dir_update_device(JCR *jcr, DEVICE *dev)
 {
    BSOCK *dir = jcr->dir_bsock;
@@ -142,7 +142,7 @@ bool dir_update_changer(JCR *jcr, AUTOCHANGER *changer)
 #endif
 
 
-/*
+/**
  * Send current JobStatus to Director
  */
 bool dir_send_job_status(JCR *jcr)
@@ -150,7 +150,7 @@ bool dir_send_job_status(JCR *jcr)
    return jcr->dir_bsock->fsend(Job_status, jcr->Job, jcr->JobStatus);
 }
 
-/*
+/**
  * Common routine for:
  *   dir_get_volume_info()
  * and
@@ -208,7 +208,7 @@ static bool do_get_volume_info(DCR *dcr)
 }
 
 
-/*
+/**
  * Get Volume info for a specific volume from the Director's Database
  *
  * Returns: true  on success   (Director guarantees that Pool and MediaType
@@ -237,7 +237,7 @@ bool dir_get_volume_info(DCR *dcr, enum get_vol_info_rw writing)
 
 
 
-/*
+/**
  * Get info on the next appendable volume in the Director's database
  *
  * Returns: true  on success dcr->VolumeName is volume
@@ -314,7 +314,7 @@ get_out:
 }
 
 
-/*
+/**
  * After writing a Volume, send the updated statistics
  * back to the director. The information comes from the
  * dev record.
@@ -385,7 +385,7 @@ bail_out:
    return ok;
 }
 
-/*
+/**
  * After writing a Volume, create the JobMedia record.
  */
 bool dir_create_jobmedia_record(DCR *dcr, bool zero)
@@ -440,8 +440,21 @@ bool dir_create_jobmedia_record(DCR *dcr, bool zero)
 }
 
 
-/*
+/**
  * Update File Attribute data
+ * We do the following:
+ *  1. expand the bsock buffer to be large enough 
+ *  2. Write a "header" into the buffer with serialized data
+ *    VolSessionId
+ *    VolSeesionTime
+ *    FileIndex
+ *    Stream
+ *    data length that follows
+ *    start of raw byte data from the Device record.
+ * Note, this is primarily for Attribute data, but can
+ *   also handle any device record. The Director must know
+ *   the raw byte data format that is defined for each Stream.
+ * Now Restore Objects pass through here STREAM_RESTORE_OBJECT
  */
 bool dir_update_file_attributes(DCR *dcr, DEV_RECORD *rec)
 {
@@ -474,7 +487,7 @@ bool dir_update_file_attributes(DCR *dcr, DEV_RECORD *rec)
 }
 
 
-/*
+/**
  *   Request the sysop to create an appendable volume
  *
  *   Entered with device blocked.
@@ -568,7 +581,7 @@ get_out:
    return true;
 }
 
-/*
+/**
  *   Request to mount specific Volume
  *
  *   Entered with device blocked and dcr->VolumeName is desired