Print this page
NEX-2911 NDMP logging should use syslog and is too chatty
NEX-559 NDMP cannot backup/restore a file which spans multiple tapes
        
@@ -1,7 +1,8 @@
 /*
  * Copyright (c) 2008, 2010, Oracle and/or its affiliates. All rights reserved.
+ * Copyright 2013 Nexenta Systems, Inc. All rights reserved.
  */
 
 /*
  * BSD 3 Clause License
  *
@@ -38,10 +39,11 @@
 /* Copyright (c) 2007, The Storage Networking Industry Association. */
 /* Copyright (c) 1996, 1997 PDC, Network Appliance. All Rights Reserved */
 /* Copyright 2014 Nexenta Systems, Inc. All rights reserved. */
 
 #include <sys/types.h>
+#include <syslog.h>
 #include <stdlib.h>
 #include <errno.h>
 #include <stdarg.h>
 #include <stdio.h>
 #include <string.h>
@@ -86,11 +88,11 @@
 
         if (session->ns_data.dd_state == NDMP_DATA_STATE_IDLE ||
             session->ns_data.dd_state == NDMP_DATA_STATE_HALTED)
                 return;
 
-        NDMP_LOG(LOG_DEBUG, "data.operation: %d",
+        syslog(LOG_DEBUG, "data.operation: %d",
             session->ns_data.dd_operation);
 
         if (session->ns_data.dd_operation == NDMP_DATA_OP_BACKUP) {
                 /*
                  * Send/discard any buffered file history data.
@@ -125,22 +127,22 @@
         }
 
         req_v2.reason = session->ns_data.dd_halt_reason;
         req_v2.text_reason = "";
 
-        NDMP_LOG(LOG_DEBUG, "ndmp_send_request(NDMP_NOTIFY_DATA_HALTED)");
+        syslog(LOG_DEBUG, "ndmp_send_request(NDMP_NOTIFY_DATA_HALTED)");
 
         if (ndmp_send_request_lock(session->ns_connection,
             NDMP_NOTIFY_DATA_HALTED, NDMP_NO_ERR, (void *)&req_v2, 0) < 0)
-                NDMP_LOG(LOG_DEBUG, "Sending notify_data_halted request");
+                syslog(LOG_DEBUG, "Sending notify_data_halted request");
 
         if (session->ns_data.dd_mover.addr_type == NDMP_ADDR_TCP) {
 
                 if (session->ns_mover.md_sock != session->ns_data.dd_sock) {
                         (void) close(session->ns_data.dd_sock);
                 } else {
-                        NDMP_LOG(LOG_DEBUG, "Not closing as used by mover");
+                        syslog(LOG_DEBUG, "Not closing as used by mover");
                 }
 
                 session->ns_data.dd_sock = -1;
         } else {
                 ndmpd_mover_error(session, NDMP_MOVER_HALT_CONNECT_CLOSED);
@@ -184,11 +186,11 @@
         request.entry = buf;
 
 
         if (ndmp_send_request(session->ns_connection, _NDMP_LOG_LOG,
             NDMP_NO_ERR, (void *)&request, 0) < 0) {
-                NDMP_LOG(LOG_DEBUG, "Sending log request");
+                syslog(LOG_ERR, "Sending log request");
                 return (-1);
         }
         return (0);
 
 }
@@ -273,11 +275,11 @@
 
                 if (ndmp_send_request_lock(session->ns_connection,
                     NDMP_NOTIFY_DATA_READ, NDMP_NO_ERR,
                     (void *)&request, 0) < 0) {
 
-                        NDMP_LOG(LOG_DEBUG,
+                        syslog(LOG_ERR,
                             "Sending notify_data_read request");
                         return (-1);
                 }
                 return (0);
         }
@@ -337,11 +339,11 @@
                 request.error = NDMP_PERMISSION_ERR;
         }
 
         if (ndmp_send_request_lock(session->ns_connection, NDMP_LOG_FILE,
             NDMP_NO_ERR, (void *)&request, 0) < 0) {
-                NDMP_LOG(LOG_DEBUG, "Sending log file request");
+                syslog(LOG_ERR, "Sending log file request");
                 return (-1);
         }
         return (0);
 }
 
@@ -464,11 +466,11 @@
         request.log_type = type;
         request.message_id = msg_id;
 
         if (ndmp_send_request(session->ns_connection, NDMP_LOG_MESSAGE,
             NDMP_NO_ERR, (void *)&request, 0) < 0) {
-                NDMP_LOG(LOG_DEBUG, "Error sending log message request.");
+                syslog(LOG_ERR, "Error sending log message request.");
                 return (-1);
         }
         return (0);
 }
 
@@ -617,11 +619,11 @@
                 request.error = NDMP_PERMISSION_ERR;
         }
 
         if (ndmp_send_request_lock(session->ns_connection, NDMP_LOG_FILE,
             NDMP_NO_ERR, (void *)&request, 0) < 0) {
-                NDMP_LOG(LOG_DEBUG, "Error sending log file request");
+                syslog(LOG_ERR, "Error sending log file request");
                 return (-1);
         }
 
         return (0);
 }
@@ -669,11 +671,11 @@
                 request.length = long_long_to_quad(length);
 
                 if (ndmp_send_request_lock(session->ns_connection,
                     NDMP_NOTIFY_DATA_READ, NDMP_NO_ERR,
                     (void *)&request, 0) < 0) {
-                        NDMP_LOG(LOG_DEBUG,
+                        syslog(LOG_ERR,
                             "Sending notify_data_read request");
                         return (-1);
                 }
 
                 return (0);
@@ -754,11 +756,11 @@
         request.associated_message_valid = NDMP_NO_ASSOCIATED_MESSAGE;
         request.associated_message_sequence = 0;
 
         if (ndmp_send_request(session->ns_connection, NDMP_LOG_MESSAGE,
             NDMP_NO_ERR, (void *)&request, 0) < 0) {
-                NDMP_LOG(LOG_DEBUG, "Error sending log message request.");
+                syslog(LOG_ERR, "Error sending log message request.");
                 return (-1);
         }
         return (0);
 }
 
@@ -816,11 +818,11 @@
                 break;
         }
 
         if (ndmp_send_request_lock(session->ns_connection, NDMP_LOG_FILE,
             NDMP_NO_ERR, (void *)&request, 0) < 0) {
-                NDMP_LOG(LOG_DEBUG, "Error sending log file request");
+                syslog(LOG_ERR, "Error sending log file request");
                 return (-1);
         }
 
         return (0);
 }
@@ -920,11 +922,11 @@
 
         session->ns_data.dd_env = realloc((void *)session->ns_data.dd_env,
             sizeof (ndmp_pval) * (session->ns_data.dd_env_len + 1));
 
         if (session->ns_data.dd_env == NULL) {
-                NDMP_LOG(LOG_ERR, "Out of memory.");
+                syslog(LOG_ERR, "Out of memory.");
                 return (-1);
         }
         namebuf = strdup(name);
         if (namebuf == NULL)
                 return (-1);