]> git.sur5r.net Git - bacula/bacula/commitdiff
Add db_strtime_handler to get DATE fields from database
authorEric Bollengier <eric@eb.homelinux.org>
Mon, 16 May 2011 16:53:25 +0000 (18:53 +0200)
committerEric Bollengier <eric@eb.homelinux.org>
Mon, 16 May 2011 17:59:36 +0000 (19:59 +0200)
bacula/src/cats/protos.h
bacula/src/cats/sql.c

index 0be1f4f81d50ccd6ce27a871cbe964a1f00120d1..a6777a45700be1671247632ecb442555555166ca 100644 (file)
@@ -44,6 +44,7 @@
 bool db_open_batch_connexion(JCR *jcr, B_DB *mdb);
 char *db_strerror(B_DB *mdb);
 int db_int64_handler(void *ctx, int num_fields, char **row);
+int db_strtime_handler(void *ctx, int num_fields, char **row);
 int db_list_handler(void *ctx, int num_fields, char **row);
 void db_debug_print(JCR *jcr, FILE *fp);
 int db_int_handler(void *ctx, int num_fields, char **row);
index 3bb8a9c1703b2eba945b0d67c7d39b708bd72af9..e4f88f61a92a00208c586088495b9216b7438707 100644 (file)
@@ -99,6 +99,21 @@ int db_int64_handler(void *ctx, int num_fields, char **row)
    return 0;
 }
 
+/*
+ * Called here to retrieve a btime from the database.
+ *   The returned integer will be extended to 64 bit.
+ */
+int db_strtime_handler(void *ctx, int num_fields, char **row)
+{
+   db_int64_ctx *lctx = (db_int64_ctx *)ctx;
+
+   if (row[0]) {
+      lctx->value = str_to_utime(row[0]);
+      lctx->count++;
+   }
+   return 0;
+}
+
 /*
  * Use to build a comma separated list of values from a query. "10,20,30"
  */