index 52036028d2905d35555705ec026e2bc30f96c55e..08f639f1ac104c9a8c0527321bc92ba89070e4db 100644 (file)
--- a/src/tools/sysdb/input.c
+++ b/src/tools/sysdb/input.c
return;
}
+ if (sdb_client_eof(sysdb_input->client))
+ sdb_input_reconnect();
+
sdb_strbuf_append(sysdb_input->input, "%s\n", line);
free(line);
return 0;
} /* sdb_input_exec_query */
+int
+sdb_input_reconnect(void)
+{
+ sdb_client_close(sysdb_input->client);
+ if (sdb_client_connect(sysdb_input->client, sysdb_input->user)) {
+ printf("Failed to reconnect to SysDBd.\n");
+ return -1;
+ }
+ printf("Successfully reconnected to SysDBd.\n");
+ return 0;
+} /* sdb_input_reconnect */
+
/* vim: set tw=78 sw=4 ts=4 noexpandtab : */