r12608: Remove some unused #include lines.
[abartlet/samba.git/.git] / source4 / gtk / tools / gwcrontab.c
index ad3c58ca833b47ec027f1256c2bea3f489cad721..f294e8439239b412fdfc95c59815ae85292c571b 100644 (file)
 */
 
 #include "includes.h"
-#include "dynconfig.h"
 #include "librpc/gen_ndr/ndr_atsvc.h"
-#include "gtk/common/select.h"
 #include "gtk/common/gtk-smb.h"
+#include "smb_build.h"
 
-struct dcerpc_pipe *at_pipe = NULL;
-GtkWidget *mainwin;
-GtkListStore *store_jobs;
-GtkWidget *tasks;
-GtkWidget *entry_cmd;
-GtkWidget *entry_repeat_weekly;
-GtkWidget *entry_repeat_monthly;
-GtkWidget *delete;
+static struct dcerpc_pipe *at_pipe = NULL;
+static GtkWidget *mainwin;
+static GtkListStore *store_jobs;
+static GtkWidget *tasks;
+static GtkWidget *entry_cmd;
+static GtkWidget *entry_repeat_weekly;
+static GtkWidget *entry_repeat_monthly;
+static GtkWidget *delete;
 
 void update_joblist(void)
 {
@@ -54,7 +53,7 @@ void update_joblist(void)
        
        status = dcerpc_atsvc_JobEnum(at_pipe, mem_ctx, &r);
        if(!NT_STATUS_IS_OK(status)) {
-               gtk_show_ntstatus(mainwin, status);
+               gtk_show_ntstatus(mainwin, "Error while enumerating first job", status);
                return;
        }
 
@@ -74,23 +73,21 @@ void update_joblist(void)
        gtk_widget_set_sensitive(tasks, TRUE);
 }
 
-static void on_job_select(GtkTreeSelection *sel,
-                                             gpointer data)
+static void on_job_select(GtkTreeSelection *sel, gpointer data)
 {
        gtk_widget_set_sensitive(delete, gtk_tree_selection_get_selected(sel, NULL, NULL));
 }
 
 
-static void
-on_connect_activate                    (GtkMenuItem     *menuitem,
-                                        gpointer         user_data)
+static void on_connect_activate(GtkMenuItem *menuitem, gpointer user_data)
 {
        GtkRpcBindingDialog *d;
        NTSTATUS status;
+       struct cli_credentials *credentials;
        gint result;
        TALLOC_CTX *mem_ctx;
 
-       d = GTK_RPC_BINDING_DIALOG(gtk_rpc_binding_dialog_new(FALSE, NULL));
+       d = GTK_RPC_BINDING_DIALOG(gtk_rpc_binding_dialog_new(NULL));
        result = gtk_dialog_run(GTK_DIALOG(d));
        switch(result) {
                case GTK_RESPONSE_ACCEPT:
@@ -102,15 +99,18 @@ on_connect_activate                    (GtkMenuItem     *menuitem,
 
        mem_ctx = talloc_init("gwcrontab_connect");
        /* If connected, get list of jobs */
+
+       credentials = cli_credentials_init(mem_ctx);
+       cli_credentials_guess(credentials);
+       cli_credentials_set_gtk_callbacks(credentials);
        
-       status = dcerpc_pipe_connect_b(&at_pipe,
+       status = dcerpc_pipe_connect_b(mem_ctx, &at_pipe,
                                       gtk_rpc_binding_dialog_get_binding(d, mem_ctx),
-                                      DCERPC_ATSVC_UUID,
-                                      DCERPC_ATSVC_VERSION,
-                                      gtk_rpc_binding_dialog_get_credentials(d));
+                                          &dcerpc_table_atsvc,
+                                      credentials, NULL);
 
        if(!NT_STATUS_IS_OK(status)) {
-               gtk_show_ntstatus(mainwin, status);
+               gtk_show_ntstatus(mainwin, "Error while connecting to at service", status);
                at_pipe = NULL;
                gtk_widget_destroy(GTK_WIDGET(d));
                talloc_free(mem_ctx);
@@ -118,15 +118,14 @@ on_connect_activate                    (GtkMenuItem     *menuitem,
        }
        gtk_widget_destroy(GTK_WIDGET(d));
 
+       at_pipe = talloc_reference(talloc_autofree_context(), at_pipe);
        talloc_free(mem_ctx);
        update_joblist();
 }
 
-void
-on_quit_activate                      (GtkMenuItem     *menuitem,
-                                                                          gpointer         user_data)
+static void on_quit_activate(GtkMenuItem *menuitem, gpointer user_data)
 {
-       if(at_pipe)dcerpc_pipe_close(at_pipe);
+       talloc_free(at_pipe);
        gtk_main_quit();
 }
 
@@ -163,7 +162,7 @@ on_new_activate                        (GtkMenuItem     *menuitem,
        status = dcerpc_atsvc_JobAdd(at_pipe, mem_ctx, &r);
        if(!NT_STATUS_IS_OK(status)) {
                talloc_free(mem_ctx);
-               gtk_show_ntstatus(mainwin, status);
+               gtk_show_ntstatus(mainwin, "Error while adding job", status);
                return;
        }
        
@@ -200,7 +199,7 @@ on_delete_activate                     (GtkMenuItem     *menuitem,
                status = dcerpc_atsvc_JobDel(at_pipe, mem_ctx, &r);
                talloc_free(mem_ctx);
                if(!NT_STATUS_IS_OK(status)) {
-                       gtk_show_ntstatus(mainwin, status);
+                       gtk_show_ntstatus(mainwin, "Error deleting job", status);
                        return;
                }
 
@@ -209,17 +208,14 @@ on_delete_activate                     (GtkMenuItem     *menuitem,
 }
 
 
-void
-on_about_activate                     (GtkMenuItem     *menuitem,
-                                                                          gpointer         user_data)
+static void on_about_activate(GtkMenuItem *menuitem, gpointer user_data)
 {
        GtkDialog *aboutwin = GTK_DIALOG(create_gtk_samba_about_dialog("gwcrontab"));
        gtk_dialog_run(aboutwin);
        gtk_widget_destroy(GTK_WIDGET(aboutwin));
 }
 
-GtkWidget*
-create_mainwindow (void)
+static GtkWidget* create_mainwindow (void)
 {
        GtkWidget *mainwindow;
        GtkWidget *vbox;
@@ -497,8 +493,7 @@ static GtkWidget*create_new_job_dialog (void)
  int main(int argc, char **argv)
 {
        gwcrontab_init_subsystems;
-       lp_load(dyn_CONFIGFILE,True,False,False);
-       load_interfaces();
+       lp_load();
        setup_logging(argv[0], DEBUG_STDERR);
 
        gtk_init(&argc, &argv);