]> git.sur5r.net Git - bacula/bacula/blobdiff - bacula/src/stored/job.c
Print length if Hello to short or long
[bacula/bacula] / bacula / src / stored / job.c
index 3de4d1c69ab1a0be7b9f1143600ecbd99b80a4a0..0481e25866401d05399ea9e630f8bf81df3191c6 100644 (file)
@@ -5,7 +5,7 @@
  *
  */
 /*
-   Copyright (C) 2000, 2001, 2002 Kern Sibbald and John Walker
+   Copyright (C) 2000-2003 Kern Sibbald and John Walker
 
    This program is free software; you can redistribute it and/or
    modify it under the terms of the GNU General Public License as
@@ -44,7 +44,7 @@ static char use_device[] = "use device=%s media_type=%s pool_name=%s pool_type=%
 /* Responses sent to Director daemon */
 static char OKjob[]     = "3000 OK Job SDid=%u SDtime=%u Authorization=%s\n";
 static char OK_device[] = "3000 OK use device\n";
-static char NO_device[] = "3914 Device %s not available\n";
+static char NO_device[] = "3914 Device \"%s\" not in SD Device resources.\n";
 static char BAD_use[]   = "3913 Bad use command: %s\n";
 static char BAD_job[]   = "3915 Bad Job command: %s\n";
 
@@ -91,7 +91,7 @@ int job_cmd(JCR *jcr)
       free_memory(client_name);
       free_memory(fileset_name);
       free_memory(fileset_md5);
-      jcr->JobStatus = JS_ErrorTerminated;
+      set_jcr_job_status(jcr, JS_ErrorTerminated);
       return 0;
    }
    jcr->JobId = JobId;
@@ -121,8 +121,8 @@ int job_cmd(JCR *jcr)
 
    /* Initialize FD start condition variable */
    if ((errstat = pthread_cond_init(&jcr->job_start_wait, NULL)) != 0) {
-      Emsg1(M_FATAL, 0, _("Unable to init job cond variable: ERR=%s\n"), strerror(errstat));
-      jcr->JobStatus = JS_ErrorTerminated;
+      Jmsg1(jcr, M_FATAL, 0, _("Unable to init job cond variable: ERR=%s\n"), strerror(errstat));
+      set_jcr_job_status(jcr, JS_ErrorTerminated);
       return 0;
    }
    jcr->authenticated = FALSE;
@@ -144,11 +144,11 @@ int job_cmd(JCR *jcr)
     * Wait for the device, media, and pool information
     */
    if (!use_device_cmd(jcr)) {
-      jcr->JobStatus = JS_ErrorTerminated;
+      set_jcr_job_status(jcr, JS_ErrorTerminated);
       return 0;
    }
 
-   jcr->JobStatus = JS_WaitFD;       /* wait for FD to connect */
+   set_jcr_job_status(jcr, JS_WaitFD);         /* wait for FD to connect */
    dir_send_job_status(jcr);
 
    gettimeofday(&tv, &tz);
@@ -217,7 +217,7 @@ void handle_filed_connection(BSOCK *fd, char *job_name)
    Dmsg1(110, "Found Job %s\n", job_name);
 
    if (jcr->authenticated) {
-      Pmsg2(000, "Hey!!!! JobId %d Job %s already authenticated.\n", 
+      Pmsg2(000, "Hey!!!! JobId %u Job %s already authenticated.\n", 
         jcr->JobId, jcr->Job);
    }
   
@@ -258,7 +258,7 @@ static int use_device_cmd(JCR *jcr)
    DEVRES *device;
 
    if (bnet_recv(dir) <= 0) {
-      Emsg0(M_FATAL, 0, "No Device from Director\n");
+      Jmsg0(jcr, M_FATAL, 0, _("No Device from Director\n"));
       return 0;
    }
    
@@ -297,10 +297,19 @@ static int use_device_cmd(JCR *jcr)
         }
       }
       UnlockRes();
-      Jmsg(jcr, M_FATAL, 0, _("Requested device %s not found. Cannot continue.\n"),
+      if (verbose) {
+        unbash_spaces(dir->msg);
+         Jmsg(jcr, M_INFO, 0, _("Failed command: %s\n"), dir->msg);
+      }
+      Jmsg(jcr, M_FATAL, 0, _("\n"
+         "     Device \"%s\" requested by Dir not found in SD Device resources.\n"),
           dev_name);
       bnet_fsend(dir, NO_device, dev_name);
    } else {
+      if (verbose) {
+        unbash_spaces(dir->msg);
+         Jmsg(jcr, M_INFO, 0, _("Failed command: %s\n"), dir->msg);
+      }
       Jmsg(jcr, M_FATAL, 0, _("store<dir: Bad Use Device command: %s\n"), dir->msg);
       bnet_fsend(dir, BAD_use, dir->msg);
    }