
/*
 * DO NOT EDIT THIS FILE - it is generated by Glade.
 */

#ifdef HAVE_CONFIG_H
#include <config.h>
#endif

#include <sys/types.h>
#include <sys/stat.h>
#include <unistd.h>
#include <string.h>
#include <stdio.h>

#include <gdk/gdkkeysyms.h>
#include <gtk/gtk.h>

#include "callbacks.h"
#include "interface.h"
#include "support.h"

#define GLADE_HOOKUP_OBJECT(component,widget,name) \
  g_object_set_data_full (G_OBJECT (component), name, \
    gtk_widget_ref (widget), (GDestroyNotify) gtk_widget_unref)

#define GLADE_HOOKUP_OBJECT_NO_REF(component,widget,name) \
  g_object_set_data (G_OBJECT (component), name, widget)

GtkWidget *create_wndMain(void) {
  GtkWidget *wndMain;
  GtkWidget *vbox1;
  GtkWidget *menubar1;
  GtkWidget *quit1;
  GtkWidget *ntbMain;
  GtkWidget *vbox5;
  GtkWidget *frame11;
  GtkWidget *table8;
  GtkWidget *cmbProtocol;
  GList *cmbProtocol_items = NULL;
  GtkWidget *entProtocol;
  GtkWidget *label7;
  GtkObject *spnPort_adj;
  GtkWidget *spnPort;
  GtkWidget *label6;
  GtkWidget *radioTarget2;
  GSList *radioTarget2_group = NULL;
  GtkWidget *entTargetFile;
  GtkWidget *entTarget;
  GtkWidget *radioTarget1;
  GtkWidget *label28;
  GtkWidget *frame12;
  GtkWidget *table9;
  GtkWidget *chkVerbose;
  GtkWidget *chkDebug;
  GtkWidget *chkAttempts;
  GtkWidget *chkIPV6;
  GtkWidget *chkSSL;
  GtkWidget *label29;
  GtkWidget *label1;
  GtkWidget *vbox2;
  GtkWidget *frmUsername;
  GtkWidget *table2;
  GtkWidget *entUsernameFile;
  GtkWidget *entUsername;
  GtkWidget *chkUsernameLoop;
  GtkWidget *radioUsername1;
  GSList *radioUsername1_group = NULL;
  GtkWidget *radioUsername2;
  GtkWidget *label8;
  GtkWidget *frmPass;
  GtkWidget *table3;
  GtkWidget *entPassFile;
  GtkWidget *entPass;
  GtkWidget *radioPass1;
  GSList *radioPass1_group = NULL;
  GtkWidget *radioPass2;
  GtkWidget *labelpass;
  GtkWidget *frame8;
  GtkWidget *table5;
  GtkWidget *chkColon;
  GtkWidget *entColonFile;
  GtkWidget *label20;
  GtkWidget *table6;
  GtkWidget *chkPassLogin;
  GtkWidget *chkPassNull;
  GtkWidget *label2;
  GtkWidget *table4;
  GtkWidget *frame9;
  GtkWidget *table7;
  GtkWidget *label22;
  GtkWidget *entHTTPProxy;
  GtkWidget *chkProxyAuth;
  GtkWidget *label23;
  GtkWidget *entProxyUser;
  GtkWidget *label24;
  GtkWidget *entProxyPass;
  GtkWidget *label26;
  GtkWidget *hbox3;
  GtkWidget *radioProxy;
  GSList *radioProxy_group = NULL;
  GtkWidget *radioProxy2;
  GtkWidget *radioProxy3;
  GtkWidget *label21;
  GtkWidget *frame13;
  GtkWidget *table10;
  GtkWidget *chkExitf;
  GtkObject *spnTimeout_adj;
  GtkWidget *spnTimeout;
  GtkObject *spnTasks_adj;
  GtkWidget *spnTasks;
  GtkWidget *label32;
  GtkWidget *label31;
  GtkWidget *label30;
  GtkWidget *label3;
  GtkWidget *vbox4;
  GtkWidget *frame10;
  GtkWidget *entHTTPProxyURL;
  GtkWidget *label27;
  GtkWidget *frame3;
  GtkWidget *entHTTPURL;
  GtkWidget *label15;
  GtkWidget *frame4;
  GtkWidget *entCiscoPass;
  GtkWidget *label16;
  GtkWidget *frame5;
  GtkWidget *entLDAPDN;
  GtkWidget *label17;
  GtkWidget *frame6;
  GtkWidget *hbox2;
  GtkWidget *chkLocal;
  GtkWidget *chkDomain;
  GtkWidget *chkNTLM;
  GtkWidget *label18;
  GtkWidget *frame7;
  GtkObject *spnSAPR3_adj;
  GtkWidget *spnSAPR3;
  GtkWidget *label19;
  GtkWidget *frame15;
  GtkWidget *entCVS;
  GtkWidget *label34;
  GtkWidget *frame17;
  GtkWidget *alignment1;
  GtkWidget *entTelnet;
  GtkWidget *label36;
  GtkWidget *frame16;
  GtkWidget *table11;
  GtkWidget *radioSNMPRead;
  GSList *radioSNMPRead_group = NULL;
  GtkWidget *radioSNMPWrite;
  GtkWidget *radioSNMPVer2;
  GSList *radioSNMPVer2_group = NULL;
  GtkWidget *radioSNMPVer1;
  GtkWidget *label35;
  GtkWidget *label14;
  GtkWidget *vbox3;
  GtkWidget *scrolledwindow1;
  GtkWidget *viewport1;
  GtkWidget *frame14;
  GtkWidget *txtOutput;
  GtkWidget *label33;
  GtkWidget *hbox1;
  GtkWidget *btnStart;
  GtkWidget *btnStop;
  GtkWidget *btnSave;
  GtkWidget *btnClear;
  GtkWidget *label4;
  GtkWidget *statusbar;
  GtkAccelGroup *accel_group;
  GtkTooltips *tooltips;

  tooltips = gtk_tooltips_new();

  accel_group = gtk_accel_group_new();

  wndMain = gtk_window_new(GTK_WINDOW_TOPLEVEL);
  gtk_widget_set_name(wndMain, "wndMain");
  gtk_window_set_title(GTK_WINDOW(wndMain), "xHydra");

  vbox1 = gtk_vbox_new(FALSE, 0);
  gtk_widget_set_name(vbox1, "vbox1");
  gtk_widget_show(vbox1);
  gtk_container_add(GTK_CONTAINER(wndMain), vbox1);

  menubar1 = gtk_menu_bar_new();
  gtk_widget_set_name(menubar1, "menubar1");
  gtk_widget_show(menubar1);
  gtk_box_pack_start(GTK_BOX(vbox1), menubar1, FALSE, FALSE, 0);

  quit1 = gtk_image_menu_item_new_from_stock("gtk-quit", accel_group);
  gtk_widget_set_name(quit1, "quit1");
  gtk_widget_show(quit1);
  gtk_container_add(GTK_CONTAINER(menubar1), quit1);

  ntbMain = gtk_notebook_new();
  gtk_widget_set_name(ntbMain, "ntbMain");
  gtk_widget_show(ntbMain);
  gtk_box_pack_start(GTK_BOX(vbox1), ntbMain, TRUE, TRUE, 0);

  vbox5 = gtk_vbox_new(FALSE, 0);
  gtk_widget_set_name(vbox5, "vbox5");
  gtk_widget_show(vbox5);
  gtk_container_add(GTK_CONTAINER(ntbMain), vbox5);

  frame11 = gtk_frame_new(NULL);
  gtk_widget_set_name(frame11, "frame11");
  gtk_widget_show(frame11);
  gtk_box_pack_start(GTK_BOX(vbox5), frame11, TRUE, TRUE, 0);

  table8 = gtk_table_new(5, 2, FALSE);
  gtk_widget_set_name(table8, "table8");
  gtk_widget_show(table8);
  gtk_container_add(GTK_CONTAINER(frame11), table8);

  cmbProtocol = gtk_combo_new();
  g_object_set_data(G_OBJECT(GTK_COMBO(cmbProtocol)->popwin), "GladeParentKey", cmbProtocol);
  gtk_widget_set_name(cmbProtocol, "cmbProtocol");
  gtk_widget_show(cmbProtocol);
  gtk_table_attach(GTK_TABLE(table8), cmbProtocol, 1, 2, 4, 5, (GtkAttachOptions) (GTK_EXPAND | GTK_SHRINK), (GtkAttachOptions) (GTK_EXPAND), 0, 0);
  cmbProtocol_items = g_list_append(cmbProtocol_items, (gpointer) "afp");
  cmbProtocol_items = g_list_append(cmbProtocol_items, (gpointer) "asterisk");
  cmbProtocol_items = g_list_append(cmbProtocol_items, (gpointer) "cisco");
  cmbProtocol_items = g_list_append(cmbProtocol_items, (gpointer) "cisco-enable");
  cmbProtocol_items = g_list_append(cmbProtocol_items, (gpointer) "cvs");
  cmbProtocol_items = g_list_append(cmbProtocol_items, (gpointer) "firebird");
  cmbProtocol_items = g_list_append(cmbProtocol_items, (gpointer) "ftp");
  cmbProtocol_items = g_list_append(cmbProtocol_items, (gpointer) "ftps");
  cmbProtocol_items = g_list_append(cmbProtocol_items, (gpointer) "http-head");
  cmbProtocol_items = g_list_append(cmbProtocol_items, (gpointer) "http-get");
  cmbProtocol_items = g_list_append(cmbProtocol_items, (gpointer) "http-get-form");
  cmbProtocol_items = g_list_append(cmbProtocol_items, (gpointer) "http-post-form");
  cmbProtocol_items = g_list_append(cmbProtocol_items, (gpointer) "http-proxy");
  cmbProtocol_items = g_list_append(cmbProtocol_items, (gpointer) "http-proxy-urlenum");
  cmbProtocol_items = g_list_append(cmbProtocol_items, (gpointer) "https-head");
  cmbProtocol_items = g_list_append(cmbProtocol_items, (gpointer) "https-get");
  cmbProtocol_items = g_list_append(cmbProtocol_items, (gpointer) "https-get-form");
  cmbProtocol_items = g_list_append(cmbProtocol_items, (gpointer) "https-post-form");
  cmbProtocol_items = g_list_append(cmbProtocol_items, (gpointer) "icq");
  cmbProtocol_items = g_list_append(cmbProtocol_items, (gpointer) "irc");
  cmbProtocol_items = g_list_append(cmbProtocol_items, (gpointer) "imap");
  cmbProtocol_items = g_list_append(cmbProtocol_items, (gpointer) "ldap2");
  cmbProtocol_items = g_list_append(cmbProtocol_items, (gpointer) "ldap3");
  cmbProtocol_items = g_list_append(cmbProtocol_items, (gpointer) "ldap3-crammd5");
  cmbProtocol_items = g_list_append(cmbProtocol_items, (gpointer) "ldap3-digestmd5");
  cmbProtocol_items = g_list_append(cmbProtocol_items, (gpointer) "mssql");
  cmbProtocol_items = g_list_append(cmbProtocol_items, (gpointer) "mysql");
  cmbProtocol_items = g_list_append(cmbProtocol_items, (gpointer) "ncp");
  cmbProtocol_items = g_list_append(cmbProtocol_items, (gpointer) "nntp");
  cmbProtocol_items = g_list_append(cmbProtocol_items, (gpointer) "oracle");
  cmbProtocol_items = g_list_append(cmbProtocol_items, (gpointer) "oracle-listener");
  cmbProtocol_items = g_list_append(cmbProtocol_items, (gpointer) "oracle-sid");
  cmbProtocol_items = g_list_append(cmbProtocol_items, (gpointer) "pcnfs");
  cmbProtocol_items = g_list_append(cmbProtocol_items, (gpointer) "pop3");
  cmbProtocol_items = g_list_append(cmbProtocol_items, (gpointer) "pcanywhere");
  cmbProtocol_items = g_list_append(cmbProtocol_items, (gpointer) "postgres");
  cmbProtocol_items = g_list_append(cmbProtocol_items, (gpointer) "rdp");
  cmbProtocol_items = g_list_append(cmbProtocol_items, (gpointer) "rexec");
  cmbProtocol_items = g_list_append(cmbProtocol_items, (gpointer) "rlogin");
  cmbProtocol_items = g_list_append(cmbProtocol_items, (gpointer) "rsh");
  cmbProtocol_items = g_list_append(cmbProtocol_items, (gpointer) "sapr3");
  cmbProtocol_items = g_list_append(cmbProtocol_items, (gpointer) "sip");
  cmbProtocol_items = g_list_append(cmbProtocol_items, (gpointer) "smb");
  cmbProtocol_items = g_list_append(cmbProtocol_items, (gpointer) "smtp");
  cmbProtocol_items = g_list_append(cmbProtocol_items, (gpointer) "snmp");
  cmbProtocol_items = g_list_append(cmbProtocol_items, (gpointer) "socks5");
  cmbProtocol_items = g_list_append(cmbProtocol_items, (gpointer) "ssh");
  cmbProtocol_items = g_list_append(cmbProtocol_items, (gpointer) "svn");
  cmbProtocol_items = g_list_append(cmbProtocol_items, (gpointer) "teamspeak");
  cmbProtocol_items = g_list_append(cmbProtocol_items, (gpointer) "telnet");
  cmbProtocol_items = g_list_append(cmbProtocol_items, (gpointer) "vnc");
  cmbProtocol_items = g_list_append(cmbProtocol_items, (gpointer) "vmauthd");
  cmbProtocol_items = g_list_append(cmbProtocol_items, (gpointer) "xmpp");
  gtk_combo_set_popdown_strings(GTK_COMBO(cmbProtocol), cmbProtocol_items);
  g_list_free(cmbProtocol_items);

  entProtocol = GTK_COMBO(cmbProtocol)->entry;
  gtk_widget_set_name(entProtocol, "entProtocol");
  gtk_widget_show(entProtocol);
  gtk_tooltips_set_tip(tooltips, entProtocol, "The protocol to use for the login/password cracking attempt", NULL);

  label7 = gtk_label_new("Protocol");
  gtk_widget_set_name(label7, "label7");
  gtk_widget_show(label7);
  gtk_table_attach(GTK_TABLE(table8), label7, 0, 1, 4, 5, (GtkAttachOptions) (GTK_EXPAND | GTK_SHRINK), (GtkAttachOptions) (GTK_EXPAND), 0, 0);
  gtk_misc_set_alignment(GTK_MISC(label7), 0, 0.5);

  spnPort_adj = gtk_adjustment_new(0, 0, 65535, 1, 10, 0);
  spnPort = gtk_spin_button_new(GTK_ADJUSTMENT(spnPort_adj), 1, 0);
  gtk_widget_set_name(spnPort, "spnPort");
  gtk_widget_show(spnPort);
  gtk_table_attach(GTK_TABLE(table8), spnPort, 1, 2, 3, 4, (GtkAttachOptions) (GTK_EXPAND | GTK_SHRINK), (GtkAttachOptions) (GTK_EXPAND), 0, 0);
  gtk_tooltips_set_tip(tooltips, spnPort, "select the port on which the daemon you want to brute force runs, 0 means default", NULL);

  label6 = gtk_label_new("Port");
  gtk_widget_set_name(label6, "label6");
  gtk_widget_show(label6);
  gtk_table_attach(GTK_TABLE(table8), label6, 0, 1, 3, 4, (GtkAttachOptions) (GTK_EXPAND | GTK_SHRINK), (GtkAttachOptions) (GTK_EXPAND), 0, 0);
  gtk_misc_set_alignment(GTK_MISC(label6), 0, 0.5);


  chkIPV6 = gtk_check_button_new_with_mnemonic("Prefer IPV6");
  gtk_widget_set_name(chkIPV6, "chkIPV6");
  gtk_widget_show(chkIPV6);
  gtk_table_attach(GTK_TABLE(table8), chkIPV6, 0, 2, 2, 3, (GtkAttachOptions) (GTK_EXPAND | GTK_SHRINK), (GtkAttachOptions) (GTK_EXPAND), 0, 0);
  gtk_tooltips_set_tip(tooltips, chkIPV6, "Enable to use IPV6", NULL);

  radioTarget2 = gtk_radio_button_new_with_mnemonic(NULL, "Target List");
  gtk_widget_set_name(radioTarget2, "radioTarget2");
  gtk_widget_show(radioTarget2);
  gtk_table_attach(GTK_TABLE(table8), radioTarget2, 0, 1, 1, 2, (GtkAttachOptions) (GTK_EXPAND | GTK_SHRINK), (GtkAttachOptions) (GTK_EXPAND), 0, 0);
  gtk_radio_button_set_group(GTK_RADIO_BUTTON(radioTarget2), radioTarget2_group);
  radioTarget2_group = gtk_radio_button_get_group(GTK_RADIO_BUTTON(radioTarget2));

  entTargetFile = gtk_entry_new();
  gtk_widget_set_name(entTargetFile, "entTargetFile");
  gtk_widget_show(entTargetFile);
  gtk_table_attach(GTK_TABLE(table8), entTargetFile, 1, 2, 1, 2, (GtkAttachOptions) (GTK_EXPAND | GTK_SHRINK), (GtkAttachOptions) (GTK_EXPAND), 0, 0);
  gtk_tooltips_set_tip(tooltips, entTargetFile, "A file which contains the targets to attack. One entry per line. IP\naddresses and/or DNS names.", NULL);

  entTarget = gtk_entry_new();
  gtk_widget_set_name(entTarget, "entTarget");
  gtk_widget_show(entTarget);
  gtk_table_attach(GTK_TABLE(table8), entTarget, 1, 2, 0, 1, (GtkAttachOptions) (GTK_EXPAND | GTK_SHRINK), (GtkAttachOptions) (GTK_EXPAND), 0, 0);
  gtk_tooltips_set_tip(tooltips, entTarget, "The target to attack - DNS name or IP address", NULL);
  gtk_entry_set_text(GTK_ENTRY(entTarget), "127.0.0.1");

  radioTarget1 = gtk_radio_button_new_with_mnemonic(NULL, "Single Target");
  gtk_widget_set_name(radioTarget1, "radioTarget1");
  gtk_widget_show(radioTarget1);
  gtk_table_attach(GTK_TABLE(table8), radioTarget1, 0, 1, 0, 1, (GtkAttachOptions) (GTK_EXPAND | GTK_SHRINK), (GtkAttachOptions) (GTK_EXPAND), 0, 0);
  gtk_radio_button_set_group(GTK_RADIO_BUTTON(radioTarget1), radioTarget2_group);
  radioTarget2_group = gtk_radio_button_get_group(GTK_RADIO_BUTTON(radioTarget1));
  gtk_toggle_button_set_active(GTK_TOGGLE_BUTTON(radioTarget1), TRUE);

  label28 = gtk_label_new("Target");
  gtk_widget_set_name(label28, "label28");
  gtk_widget_show(label28);
  gtk_frame_set_label_widget(GTK_FRAME(frame11), label28);

  frame12 = gtk_frame_new(NULL);
  gtk_widget_set_name(frame12, "frame12");
  gtk_widget_show(frame12);
  gtk_box_pack_start(GTK_BOX(vbox5), frame12, TRUE, TRUE, 0);

  table9 = gtk_table_new(2, 2, FALSE);
  gtk_widget_set_name(table9, "table9");
  gtk_widget_show(table9);
  gtk_container_add(GTK_CONTAINER(frame12), table9);

  chkVerbose = gtk_check_button_new_with_mnemonic("Be Verbose");
  gtk_widget_set_name(chkVerbose, "chkVerbose");
  gtk_widget_show(chkVerbose);
  gtk_table_attach(GTK_TABLE(table9), chkVerbose, 1, 2, 0, 1, (GtkAttachOptions) (GTK_EXPAND | GTK_SHRINK), (GtkAttachOptions) (GTK_EXPAND), 0, 0);
  gtk_tooltips_set_tip(tooltips, chkVerbose, "be verbose", NULL);

  chkDebug = gtk_check_button_new_with_mnemonic("Debug");
  gtk_widget_set_name(chkDebug, "chkDebug");
  gtk_widget_show(chkDebug);
  gtk_table_attach(GTK_TABLE(table9), chkDebug, 1, 2, 1, 2, (GtkAttachOptions) (GTK_EXPAND | GTK_SHRINK), (GtkAttachOptions) (GTK_EXPAND), 0, 0);
  gtk_tooltips_set_tip(tooltips, chkDebug, "Enable debug mode", NULL);

  chkAttempts = gtk_check_button_new_with_mnemonic("Show Attempts");
  gtk_widget_set_name(chkAttempts, "chkAttempts");
  gtk_widget_show(chkAttempts);
  gtk_table_attach(GTK_TABLE(table9), chkAttempts, 0, 1, 1, 2, (GtkAttachOptions) (GTK_EXPAND | GTK_SHRINK), (GtkAttachOptions) (GTK_EXPAND), 0, 0);
  gtk_tooltips_set_tip(tooltips, chkAttempts, "Show attempts", NULL);

  chkSSL = gtk_check_button_new_with_mnemonic("Use SSL");
  gtk_widget_set_name(chkSSL, "chkSSL");
  gtk_widget_show(chkSSL);
  gtk_table_attach(GTK_TABLE(table9), chkSSL, 0, 1, 0, 1, (GtkAttachOptions) (GTK_EXPAND | GTK_SHRINK), (GtkAttachOptions) (GTK_EXPAND), 0, 0);
  gtk_tooltips_set_tip(tooltips, chkSSL, "Enable to use SSL (the target must have SSL enabled!", NULL);

  label29 = gtk_label_new("Output Options");
  gtk_widget_set_name(label29, "label29");
  gtk_widget_show(label29);
  gtk_frame_set_label_widget(GTK_FRAME(frame12), label29);

  label1 = gtk_label_new("Target");
  gtk_widget_set_name(label1, "label1");
  gtk_widget_show(label1);
  gtk_notebook_set_tab_label(GTK_NOTEBOOK(ntbMain), gtk_notebook_get_nth_page(GTK_NOTEBOOK(ntbMain), 0), label1);

  vbox2 = gtk_vbox_new(FALSE, 0);
  gtk_widget_set_name(vbox2, "vbox2");
  gtk_widget_show(vbox2);
  gtk_container_add(GTK_CONTAINER(ntbMain), vbox2);

  frmUsername = gtk_frame_new(NULL);
  gtk_widget_set_name(frmUsername, "frmUsername");
  gtk_widget_show(frmUsername);
  gtk_box_pack_start(GTK_BOX(vbox2), frmUsername, TRUE, TRUE, 0);

  table2 = gtk_table_new(3, 2, FALSE);
  gtk_widget_set_name(table2, "table2");
  gtk_widget_show(table2);
  gtk_container_add(GTK_CONTAINER(frmUsername), table2);

  entUsernameFile = gtk_entry_new();
  gtk_widget_set_name(entUsernameFile, "entUsernameFile");
  gtk_widget_show(entUsernameFile);
  gtk_table_attach(GTK_TABLE(table2), entUsernameFile, 1, 2, 1, 2, (GtkAttachOptions) (GTK_EXPAND | GTK_SHRINK), (GtkAttachOptions) (GTK_EXPAND | GTK_SHRINK), 0, 0);
  gtk_tooltips_set_tip(tooltips, entUsernameFile, "File with user logins, one entry per line", NULL);

  entUsername = gtk_entry_new();
  gtk_widget_set_name(entUsername, "entUsername");
  gtk_widget_show(entUsername);
  gtk_table_attach(GTK_TABLE(table2), entUsername, 1, 2, 0, 1, (GtkAttachOptions) (GTK_EXPAND | GTK_SHRINK), (GtkAttachOptions) (GTK_EXPAND | GTK_SHRINK), 0, 0);
  gtk_tooltips_set_tip(tooltips, entUsername, "The login to use", NULL);
  gtk_entry_set_text(GTK_ENTRY(entUsername), "yourname");

  radioUsername1 = gtk_radio_button_new_with_mnemonic(NULL, "Username");
  gtk_widget_set_name(radioUsername1, "radioUsername1");
  gtk_widget_show(radioUsername1);
  gtk_table_attach(GTK_TABLE(table2), radioUsername1, 0, 1, 0, 1, (GtkAttachOptions) (GTK_EXPAND | GTK_SHRINK), (GtkAttachOptions) (GTK_EXPAND | GTK_SHRINK), 0, 0);
  gtk_radio_button_set_group(GTK_RADIO_BUTTON(radioUsername1), radioUsername1_group);
  radioUsername1_group = gtk_radio_button_get_group(GTK_RADIO_BUTTON(radioUsername1));
  gtk_toggle_button_set_active(GTK_TOGGLE_BUTTON(radioUsername1), TRUE);

  radioUsername2 = gtk_radio_button_new_with_mnemonic(NULL, "Username List");
  gtk_widget_set_name(radioUsername2, "radioUsername2");
  gtk_widget_show(radioUsername2);
  gtk_table_attach(GTK_TABLE(table2), radioUsername2, 0, 1, 1, 2, (GtkAttachOptions) (GTK_EXPAND | GTK_SHRINK), (GtkAttachOptions) (GTK_EXPAND | GTK_SHRINK), 0, 0);
  gtk_radio_button_set_group(GTK_RADIO_BUTTON(radioUsername2), radioUsername1_group);
  radioUsername1_group = gtk_radio_button_get_group(GTK_RADIO_BUTTON(radioUsername2));

  chkUsernameLoop = gtk_check_button_new_with_mnemonic("Loop around users");
  gtk_widget_set_name(chkUsernameLoop, "chkUsernameLoop");
  gtk_widget_show(chkUsernameLoop);
  gtk_table_attach(GTK_TABLE(table2), chkUsernameLoop, 0, 2, 2, 3, (GtkAttachOptions) (GTK_EXPAND | GTK_SHRINK), (GtkAttachOptions) (GTK_EXPAND), 0, 0);
  gtk_tooltips_set_tip(tooltips, chkUsernameLoop, "Enable this option to loop around users not passwords", NULL);

  label8 = gtk_label_new("Username");
  gtk_widget_set_name(label8, "label8");
  gtk_widget_show(label8);
  gtk_frame_set_label_widget(GTK_FRAME(frmUsername), label8);

  frmPass = gtk_frame_new(NULL);
  gtk_widget_set_name(frmPass, "frmPass");
  gtk_widget_show(frmPass);
  gtk_box_pack_start(GTK_BOX(vbox2), frmPass, TRUE, TRUE, 0);

  table3 = gtk_table_new(2, 2, FALSE);
  gtk_widget_set_name(table3, "table3");
  gtk_widget_show(table3);
  gtk_container_add(GTK_CONTAINER(frmPass), table3);

  entPassFile = gtk_entry_new();
  gtk_widget_set_name(entPassFile, "entPassFile");
  gtk_widget_show(entPassFile);
  gtk_table_attach(GTK_TABLE(table3), entPassFile, 1, 2, 1, 2, (GtkAttachOptions) (GTK_EXPAND | GTK_SHRINK), (GtkAttachOptions) (GTK_EXPAND | GTK_SHRINK), 0, 0);
  gtk_tooltips_set_tip(tooltips, entPassFile, "File with passwords to try, one entry per line", NULL);

  entPass = gtk_entry_new();
  gtk_widget_set_name(entPass, "entPass");
  gtk_widget_show(entPass);
  gtk_table_attach(GTK_TABLE(table3), entPass, 1, 2, 0, 1, (GtkAttachOptions) (GTK_EXPAND | GTK_SHRINK), (GtkAttachOptions) (GTK_EXPAND | GTK_SHRINK), 0, 0);
  gtk_tooltips_set_tip(tooltips, entPass, "The password to try", NULL);
  gtk_entry_set_text(GTK_ENTRY(entPass), "yourpass");

  radioPass1 = gtk_radio_button_new_with_mnemonic(NULL, "Password");
  gtk_widget_set_name(radioPass1, "radioPass1");
  gtk_widget_show(radioPass1);
  gtk_table_attach(GTK_TABLE(table3), radioPass1, 0, 1, 0, 1, (GtkAttachOptions) (GTK_EXPAND | GTK_SHRINK), (GtkAttachOptions) (GTK_EXPAND | GTK_SHRINK), 0, 0);
  gtk_radio_button_set_group(GTK_RADIO_BUTTON(radioPass1), radioPass1_group);
  radioPass1_group = gtk_radio_button_get_group(GTK_RADIO_BUTTON(radioPass1));
  gtk_toggle_button_set_active(GTK_TOGGLE_BUTTON(radioPass1), TRUE);

  radioPass2 = gtk_radio_button_new_with_mnemonic(NULL, "Password List");
  gtk_widget_set_name(radioPass2, "radioPass2");
  gtk_widget_show(radioPass2);
  gtk_table_attach(GTK_TABLE(table3), radioPass2, 0, 1, 1, 2, (GtkAttachOptions) (GTK_EXPAND | GTK_SHRINK), (GtkAttachOptions) (GTK_EXPAND | GTK_SHRINK), 0, 0);
  gtk_radio_button_set_group(GTK_RADIO_BUTTON(radioPass2), radioPass1_group);
  radioPass1_group = gtk_radio_button_get_group(GTK_RADIO_BUTTON(radioPass2));

  labelpass = gtk_label_new("Password");
  gtk_widget_set_name(labelpass, "labelpass");
  gtk_widget_show(labelpass);
  gtk_frame_set_label_widget(GTK_FRAME(frmPass), labelpass);

  frame8 = gtk_frame_new(NULL);
  gtk_widget_set_name(frame8, "frame8");
  gtk_widget_show(frame8);
  gtk_box_pack_start(GTK_BOX(vbox2), frame8, TRUE, TRUE, 0);

  table5 = gtk_table_new(1, 2, FALSE);
  gtk_widget_set_name(table5, "table5");
  gtk_widget_show(table5);
  gtk_container_add(GTK_CONTAINER(frame8), table5);

  chkColon = gtk_check_button_new_with_mnemonic("Use Colon separated file");
  gtk_widget_set_name(chkColon, "chkColon");
  gtk_widget_show(chkColon);
  gtk_table_attach(GTK_TABLE(table5), chkColon, 0, 1, 0, 1, (GtkAttachOptions) (GTK_EXPAND | GTK_SHRINK), (GtkAttachOptions) (GTK_EXPAND), 0, 0);
  gtk_tooltips_set_tip(tooltips, chkColon, "\"Enable this option to use a colon file for login/password attempts", NULL);

  entColonFile = gtk_entry_new();
  gtk_widget_set_name(entColonFile, "entColonFile");
  gtk_widget_show(entColonFile);
  gtk_table_attach(GTK_TABLE(table5), entColonFile, 1, 2, 0, 1, (GtkAttachOptions) (GTK_EXPAND | GTK_SHRINK), (GtkAttachOptions) (GTK_EXPAND), 0, 0);
  gtk_tooltips_set_tip(tooltips, entColonFile, "The colon file to use, each line has to be structured like \"mylogin:mypass\"", NULL);

  label20 = gtk_label_new("Colon separated file");
  gtk_widget_set_name(label20, "label20");
  gtk_widget_show(label20);
  gtk_frame_set_label_widget(GTK_FRAME(frame8), label20);

  table6 = gtk_table_new(1, 2, FALSE);
  gtk_widget_set_name(table6, "table6");
  gtk_widget_show(table6);
  gtk_box_pack_start(GTK_BOX(vbox2), table6, TRUE, TRUE, 0);

  chkPassLogin = gtk_check_button_new_with_mnemonic("Try login as password");
  gtk_widget_set_name(chkPassLogin, "chkPassLogin");
  gtk_widget_show(chkPassLogin);
  gtk_table_attach(GTK_TABLE(table6), chkPassLogin, 0, 1, 0, 1, (GtkAttachOptions) (GTK_EXPAND | GTK_SHRINK), (GtkAttachOptions) (GTK_EXPAND), 0, 0);
  gtk_tooltips_set_tip(tooltips, chkPassLogin, "Enable this option to try the login as password, in addition to the password/file", NULL);

  chkPassNull = gtk_check_button_new_with_mnemonic("Try empty password");
  gtk_widget_set_name(chkPassNull, "chkPassNull");
  gtk_widget_show(chkPassNull);
  gtk_table_attach(GTK_TABLE(table6), chkPassNull, 1, 2, 0, 1, (GtkAttachOptions) (GTK_EXPAND | GTK_SHRINK), (GtkAttachOptions) (GTK_EXPAND), 0, 0);
  gtk_tooltips_set_tip(tooltips, chkPassNull, "Enable this option to try an empty password, in addition to the password/file", NULL);

  label2 = gtk_label_new("Passwords");
  gtk_widget_set_name(label2, "label2");
  gtk_widget_show(label2);
  gtk_notebook_set_tab_label(GTK_NOTEBOOK(ntbMain), gtk_notebook_get_nth_page(GTK_NOTEBOOK(ntbMain), 1), label2);

  table4 = gtk_table_new(2, 1, FALSE);
  gtk_widget_set_name(table4, "table4");
  gtk_widget_show(table4);
  gtk_container_add(GTK_CONTAINER(ntbMain), table4);

  frame9 = gtk_frame_new(NULL);
  gtk_widget_set_name(frame9, "frame9");
  gtk_widget_show(frame9);
  gtk_table_attach(GTK_TABLE(table4), frame9, 0, 1, 1, 2, (GtkAttachOptions) (GTK_EXPAND | GTK_SHRINK | GTK_FILL), (GtkAttachOptions) (GTK_EXPAND | GTK_SHRINK | GTK_FILL), 0, 0);

  table7 = gtk_table_new(5, 2, FALSE);
  gtk_widget_set_name(table7, "table7");
  gtk_widget_show(table7);
  gtk_container_add(GTK_CONTAINER(frame9), table7);

  label22 = gtk_label_new("Proxy ");
  gtk_widget_set_name(label22, "label22");
  gtk_widget_show(label22);
  gtk_table_attach(GTK_TABLE(table7), label22, 0, 1, 1, 2, (GtkAttachOptions) (GTK_EXPAND | GTK_SHRINK), (GtkAttachOptions) (GTK_EXPAND), 0, 0);
  gtk_misc_set_alignment(GTK_MISC(label22), 0, 0.5);

  entHTTPProxy = gtk_entry_new();
  gtk_widget_set_name(entHTTPProxy, "entHTTPProxy");
  gtk_widget_show(entHTTPProxy);
  gtk_table_attach(GTK_TABLE(table7), entHTTPProxy, 1, 2, 1, 2, (GtkAttachOptions) (GTK_EXPAND | GTK_SHRINK), (GtkAttachOptions) (GTK_EXPAND), 0, 0);
  gtk_tooltips_set_tip(tooltips, entHTTPProxy, "The address of the proxy. Syntax: \"http://123.45.67.89:8080\"", NULL);
  gtk_entry_set_text(GTK_ENTRY(entHTTPProxy), "http://127.0.0.1:8080");

  chkProxyAuth = gtk_check_button_new_with_mnemonic("Proxy needs authentication");
  gtk_widget_set_name(chkProxyAuth, "chkProxyAuth");
  gtk_widget_show(chkProxyAuth);
  gtk_table_attach(GTK_TABLE(table7), chkProxyAuth, 0, 1, 2, 3, (GtkAttachOptions) (GTK_EXPAND | GTK_SHRINK), (GtkAttachOptions) (GTK_EXPAND), 0, 0);
  gtk_tooltips_set_tip(tooltips, chkProxyAuth, "Enable this if the proxy requires authenticatio", NULL);

  label23 = gtk_label_new("Username");
  gtk_widget_set_name(label23, "label23");
  gtk_widget_show(label23);
  gtk_table_attach(GTK_TABLE(table7), label23, 0, 1, 3, 4, (GtkAttachOptions) (GTK_EXPAND | GTK_SHRINK), (GtkAttachOptions) (GTK_EXPAND), 0, 0);
  gtk_misc_set_alignment(GTK_MISC(label23), 0, 0.5);

  entProxyUser = gtk_entry_new();
  gtk_widget_set_name(entProxyUser, "entProxyUser");
  gtk_widget_show(entProxyUser);
  gtk_table_attach(GTK_TABLE(table7), entProxyUser, 1, 2, 3, 4, (GtkAttachOptions) (GTK_EXPAND | GTK_SHRINK), (GtkAttachOptions) (GTK_EXPAND), 0, 0);
  gtk_tooltips_set_tip(tooltips, entProxyUser, "The user name for proxy authentication", NULL);
  gtk_entry_set_text(GTK_ENTRY(entProxyUser), "yourname");

  label24 = gtk_label_new("Password");
  gtk_widget_set_name(label24, "label24");
  gtk_widget_show(label24);
  gtk_table_attach(GTK_TABLE(table7), label24, 0, 1, 4, 5, (GtkAttachOptions) (GTK_EXPAND | GTK_SHRINK), (GtkAttachOptions) (GTK_EXPAND), 0, 0);
  gtk_misc_set_alignment(GTK_MISC(label24), 0, 0.5);

  entProxyPass = gtk_entry_new();
  gtk_widget_set_name(entProxyPass, "entProxyPass");
  gtk_widget_show(entProxyPass);
  gtk_table_attach(GTK_TABLE(table7), entProxyPass, 1, 2, 4, 5, (GtkAttachOptions) (GTK_EXPAND | GTK_SHRINK), (GtkAttachOptions) (GTK_EXPAND), 0, 0);
  gtk_tooltips_set_tip(tooltips, entProxyPass, "The password for proxy authentication", NULL);
  gtk_entry_set_text(GTK_ENTRY(entProxyPass), "yourpass");

  label26 = gtk_label_new("");
  gtk_widget_set_name(label26, "label26");
  gtk_widget_show(label26);
  gtk_table_attach(GTK_TABLE(table7), label26, 1, 2, 2, 3, (GtkAttachOptions) (GTK_FILL), (GtkAttachOptions) (0), 0, 0);
  gtk_misc_set_alignment(GTK_MISC(label26), 0, 0.5);

  hbox3 = gtk_hbox_new(FALSE, 0);
  gtk_widget_set_name(hbox3, "hbox3");
  gtk_widget_show(hbox3);
  gtk_table_attach(GTK_TABLE(table7), hbox3, 0, 2, 0, 1, (GtkAttachOptions) (GTK_EXPAND | GTK_SHRINK | GTK_FILL), (GtkAttachOptions) (GTK_EXPAND | GTK_FILL), 0, 0);

  radioProxy = gtk_radio_button_new_with_mnemonic(NULL, "No Proxy");
  gtk_widget_set_name(radioProxy, "radioProxy");
  gtk_widget_show(radioProxy);
  gtk_box_pack_start(GTK_BOX(hbox3), radioProxy, TRUE, TRUE, 0);
  gtk_radio_button_set_group(GTK_RADIO_BUTTON(radioProxy), radioProxy_group);
  radioProxy_group = gtk_radio_button_get_group(GTK_RADIO_BUTTON(radioProxy));
  gtk_toggle_button_set_active(GTK_TOGGLE_BUTTON(radioProxy), TRUE);

  radioProxy2 = gtk_radio_button_new_with_mnemonic(NULL, "HTTP Method");
  gtk_widget_set_name(radioProxy2, "radioProxy2");
  gtk_widget_show(radioProxy2);
  gtk_box_pack_start(GTK_BOX(hbox3), radioProxy2, TRUE, TRUE, 0);
  gtk_tooltips_set_tip(tooltips, radioProxy2, "Enable this to use a proxy for scanning ( Only for HTTP Module )", NULL);
  gtk_radio_button_set_group(GTK_RADIO_BUTTON(radioProxy2), radioProxy_group);
  radioProxy_group = gtk_radio_button_get_group(GTK_RADIO_BUTTON(radioProxy2));

  radioProxy3 = gtk_radio_button_new_with_mnemonic(NULL, "CONNECT Method");
  gtk_widget_set_name(radioProxy3, "radioProxy3");
  gtk_widget_show(radioProxy3);
  gtk_box_pack_start(GTK_BOX(hbox3), radioProxy3, TRUE, TRUE, 0);
  gtk_tooltips_set_tip(tooltips, radioProxy3, "Enable this to use a proxy for scanning", NULL);
  gtk_radio_button_set_group(GTK_RADIO_BUTTON(radioProxy3), radioProxy_group);
  radioProxy_group = gtk_radio_button_get_group(GTK_RADIO_BUTTON(radioProxy3));

  label21 = gtk_label_new("Use a HTTP/HTTPS Proxy");
  gtk_widget_set_name(label21, "label21");
  gtk_widget_show(label21);
  gtk_frame_set_label_widget(GTK_FRAME(frame9), label21);

  frame13 = gtk_frame_new(NULL);
  gtk_widget_set_name(frame13, "frame13");
  gtk_widget_show(frame13);
  gtk_table_attach(GTK_TABLE(table4), frame13, 0, 1, 0, 1, (GtkAttachOptions) (GTK_FILL), (GtkAttachOptions) (GTK_EXPAND | GTK_FILL), 0, 0);

  table10 = gtk_table_new(3, 2, FALSE);
  gtk_widget_set_name(table10, "table10");
  gtk_widget_show(table10);
  gtk_container_add(GTK_CONTAINER(frame13), table10);

  chkExitf = gtk_check_button_new_with_mnemonic("Exit after first found pair");
  gtk_widget_set_name(chkExitf, "chkExitf");
  gtk_widget_show(chkExitf);
  gtk_table_attach(GTK_TABLE(table10), chkExitf, 0, 2, 2, 3, (GtkAttachOptions) (GTK_EXPAND | GTK_SHRINK), (GtkAttachOptions) (GTK_EXPAND), 0, 0);
  gtk_tooltips_set_tip(tooltips, chkExitf, "Enable this to stop all attacking processes once a valid login/password pair is found", NULL);

  spnTimeout_adj = gtk_adjustment_new(30, 0, 295, 1, 10, 0);
  spnTimeout = gtk_spin_button_new(GTK_ADJUSTMENT(spnTimeout_adj), 1, 0);
  gtk_widget_set_name(spnTimeout, "spnTimeout");
  gtk_widget_show(spnTimeout);
  gtk_table_attach(GTK_TABLE(table10), spnTimeout, 1, 2, 1, 2, (GtkAttachOptions) (GTK_EXPAND | GTK_SHRINK), (GtkAttachOptions) (GTK_EXPAND), 0, 0);
  gtk_tooltips_set_tip(tooltips, spnTimeout, "The maximum timeout an attack process is waiting for a response from the target", NULL);

  spnTasks_adj = gtk_adjustment_new(16, 0, 128, 1, 10, 0);
  spnTasks = gtk_spin_button_new(GTK_ADJUSTMENT(spnTasks_adj), 1, 0);
  gtk_widget_set_name(spnTasks, "spnTasks");
  gtk_widget_show(spnTasks);
  gtk_table_attach(GTK_TABLE(table10), spnTasks, 1, 2, 0, 1, (GtkAttachOptions) (GTK_EXPAND | GTK_SHRINK), (GtkAttachOptions) (GTK_EXPAND), 0, 0);
  gtk_tooltips_set_tip(tooltips, spnTasks, "The number of attack tasks to run in parallel. The more the faster, the most: computer lockup :-) 16-64 is a good choice", NULL);

  label32 = gtk_label_new("Timeout");
  gtk_widget_set_name(label32, "label32");
  gtk_widget_show(label32);
  gtk_table_attach(GTK_TABLE(table10), label32, 0, 1, 1, 2, (GtkAttachOptions) (GTK_EXPAND | GTK_SHRINK), (GtkAttachOptions) (GTK_EXPAND), 0, 0);
  gtk_misc_set_alignment(GTK_MISC(label32), 0, 0.5);

  label31 = gtk_label_new("Number of Tasks");
  gtk_widget_set_name(label31, "label31");
  gtk_widget_show(label31);
  gtk_table_attach(GTK_TABLE(table10), label31, 0, 1, 0, 1, (GtkAttachOptions) (GTK_EXPAND | GTK_SHRINK), (GtkAttachOptions) (GTK_EXPAND), 0, 0);
  gtk_misc_set_alignment(GTK_MISC(label31), 0, 0.5);

  label30 = gtk_label_new("Performance Options");
  gtk_widget_set_name(label30, "label30");
  gtk_widget_show(label30);
  gtk_frame_set_label_widget(GTK_FRAME(frame13), label30);

  label3 = gtk_label_new("Tuning");
  gtk_widget_set_name(label3, "label3");
  gtk_widget_show(label3);
  gtk_notebook_set_tab_label(GTK_NOTEBOOK(ntbMain), gtk_notebook_get_nth_page(GTK_NOTEBOOK(ntbMain), 2), label3);

  vbox4 = gtk_vbox_new(FALSE, 0);
  gtk_widget_set_name(vbox4, "vbox4");
  gtk_widget_show(vbox4);
  gtk_container_add(GTK_CONTAINER(ntbMain), vbox4);

  frame10 = gtk_frame_new(NULL);
  gtk_widget_set_name(frame10, "frame10");
  gtk_widget_show(frame10);
  gtk_box_pack_start(GTK_BOX(vbox4), frame10, TRUE, TRUE, 0);

  entHTTPProxyURL = gtk_entry_new();
  gtk_widget_set_name(entHTTPProxyURL, "entHTTPProxyURL");
  gtk_widget_show(entHTTPProxyURL);
  gtk_container_add(GTK_CONTAINER(frame10), entHTTPProxyURL);
  gtk_tooltips_set_tip(tooltips, entHTTPProxyURL, "URL to connect to via the proxy", NULL);
  gtk_entry_set_text(GTK_ENTRY(entHTTPProxyURL), "www.suse.com");

  label27 = gtk_label_new("http-proxy url / http-proxy-urlenum credential module");
  gtk_widget_set_name(label27, "label27");
  gtk_widget_show(label27);
  gtk_frame_set_label_widget(GTK_FRAME(frame10), label27);

  frame3 = gtk_frame_new(NULL);
  gtk_widget_set_name(frame3, "frame3");
  gtk_widget_show(frame3);
  gtk_box_pack_start(GTK_BOX(vbox4), frame3, TRUE, TRUE, 0);

  entHTTPURL = gtk_entry_new();
  gtk_widget_set_name(entHTTPURL, "entHTTPURL");
  gtk_widget_show(entHTTPURL);
  gtk_container_add(GTK_CONTAINER(frame3), entHTTPURL);
  gtk_tooltips_set_tip(tooltips, entHTTPURL, "The protected URL you want to access", NULL);
  gtk_entry_set_text(GTK_ENTRY(entHTTPURL), "/foo/bar/protected.html");

  label15 = gtk_label_new("http / https url");
  gtk_widget_set_name(label15, "label15");
  gtk_widget_show(label15);
  gtk_frame_set_label_widget(GTK_FRAME(frame3), label15);

  frame4 = gtk_frame_new(NULL);
  gtk_widget_set_name(frame4, "frame4");
  gtk_widget_show(frame4);
  gtk_box_pack_start(GTK_BOX(vbox4), frame4, TRUE, TRUE, 0);

  entCiscoPass = gtk_entry_new();
  gtk_widget_set_name(entCiscoPass, "entCiscoPass");
  gtk_widget_show(entCiscoPass);
  gtk_container_add(GTK_CONTAINER(frame4), entCiscoPass);
  gtk_tooltips_set_tip(tooltips, entCiscoPass, "The password to the cisco device", NULL);
  gtk_entry_set_text(GTK_ENTRY(entCiscoPass), "password");

  label16 = gtk_label_new("Cisco Enable, Login for Cisco device");
  gtk_widget_set_name(label16, "label16");
  gtk_widget_show(label16);
  gtk_frame_set_label_widget(GTK_FRAME(frame4), label16);

  frame5 = gtk_frame_new(NULL);
  gtk_widget_set_name(frame5, "frame5");
  gtk_widget_show(frame5);
  gtk_box_pack_start(GTK_BOX(vbox4), frame5, TRUE, TRUE, 0);

  entLDAPDN = gtk_entry_new();
  gtk_widget_set_name(entLDAPDN, "entLDAPDN");
  gtk_widget_show(entLDAPDN);
  gtk_container_add(GTK_CONTAINER(frame5), entLDAPDN);
  gtk_tooltips_set_tip(tooltips, entLDAPDN, "The DN scope of ldap to authenticate against", NULL);
  gtk_entry_set_text(GTK_ENTRY(entLDAPDN), "dn-scope");

  label17 = gtk_label_new("LDAP DN");
  gtk_widget_set_name(label17, "label17");
  gtk_widget_show(label17);
  gtk_frame_set_label_widget(GTK_FRAME(frame5), label17);

  frame6 = gtk_frame_new(NULL);
  gtk_widget_set_name(frame6, "frame6");
  gtk_widget_show(frame6);
  gtk_box_pack_start(GTK_BOX(vbox4), frame6, TRUE, TRUE, 0);

  hbox2 = gtk_hbox_new(FALSE, 0);
  gtk_widget_set_name(hbox2, "hbox2");
  gtk_widget_show(hbox2);
  gtk_container_add(GTK_CONTAINER(frame6), hbox2);

  chkLocal = gtk_check_button_new_with_mnemonic("local accounts");
  gtk_widget_set_name(chkLocal, "chkLocal");
  gtk_widget_show(chkLocal);
  gtk_box_pack_start(GTK_BOX(hbox2), chkLocal, TRUE, TRUE, 0);
  gtk_tooltips_set_tip(tooltips, chkLocal, "Just attack local accounts", NULL);

  chkDomain = gtk_check_button_new_with_mnemonic("domain accounts");
  gtk_widget_set_name(chkDomain, "chkDomain");
  gtk_widget_show(chkDomain);
  gtk_box_pack_start(GTK_BOX(hbox2), chkDomain, TRUE, TRUE, 0);
  gtk_tooltips_set_tip(tooltips, chkDomain, "Attack domain and local accounts", NULL);

  chkNTLM = gtk_check_button_new_with_mnemonic("Interpret passes as NTLM hashes");
  gtk_widget_set_name(chkNTLM, "chkNTLM");
  gtk_widget_show(chkNTLM);
  gtk_box_pack_start(GTK_BOX(hbox2), chkNTLM, FALSE, FALSE, 0);
  gtk_tooltips_set_tip(tooltips, chkNTLM, "Interpret passes as NTML hashes", NULL);

  label18 = gtk_label_new("SMB");
  gtk_widget_set_name(label18, "label18");
  gtk_widget_show(label18);
  gtk_frame_set_label_widget(GTK_FRAME(frame6), label18);

  frame7 = gtk_frame_new(NULL);
  gtk_widget_set_name(frame7, "frame7");
  gtk_widget_show(frame7);
  gtk_box_pack_start(GTK_BOX(vbox4), frame7, TRUE, TRUE, 0);

  spnSAPR3_adj = gtk_adjustment_new(1, 0, 99, 1, 10, 0);
  spnSAPR3 = gtk_spin_button_new(GTK_ADJUSTMENT(spnSAPR3_adj), 1, 0);
  gtk_widget_set_name(spnSAPR3, "spnSAPR3");
  gtk_widget_show(spnSAPR3);
  gtk_container_add(GTK_CONTAINER(frame7), spnSAPR3);
  gtk_tooltips_set_tip(tooltips, spnSAPR3, "The client id you want to attack, something between 0 and 99", NULL);

  label19 = gtk_label_new("sapr3 client id");
  gtk_widget_set_name(label19, "label19");
  gtk_widget_show(label19);
  gtk_frame_set_label_widget(GTK_FRAME(frame7), label19);

  frame15 = gtk_frame_new(NULL);
  gtk_widget_set_name(frame15, "frame15");
  gtk_widget_show(frame15);
  gtk_box_pack_start(GTK_BOX(vbox4), frame15, TRUE, TRUE, 0);

  entCVS = gtk_entry_new();
  gtk_widget_set_name(entCVS, "entCVS");
  gtk_widget_show(entCVS);
  gtk_container_add(GTK_CONTAINER(frame15), entCVS);
  gtk_tooltips_set_tip(tooltips, entCVS, "Directory of the CVS/SVN repository", NULL);
  gtk_entry_set_text(GTK_ENTRY(entCVS), "trunk");

  label34 = gtk_label_new("CVS/SVN Repository");
  gtk_widget_set_name(label34, "label34");
  gtk_widget_show(label34);
  gtk_frame_set_label_widget(GTK_FRAME(frame15), label34);

  frame17 = gtk_frame_new(NULL);
  gtk_widget_set_name(frame17, "frame17");
  gtk_widget_show(frame17);
  gtk_box_pack_start(GTK_BOX(vbox4), frame17, TRUE, TRUE, 0);

  alignment1 = gtk_alignment_new(0.5, 0.5, 1, 1);
  gtk_widget_set_name(alignment1, "alignment1");
  gtk_widget_show(alignment1);
  gtk_container_add(GTK_CONTAINER(frame17), alignment1);

  entTelnet = gtk_entry_new();
  gtk_widget_set_name(entTelnet, "entTelnet");
  gtk_widget_show(entTelnet);
  gtk_container_add(GTK_CONTAINER(alignment1), entTelnet);
  gtk_tooltips_set_tip(tooltips, entTelnet, "Insert the return string for a succesfull login", NULL);

  label36 = gtk_label_new("Telnet - Successful Login String");
  gtk_widget_set_name(label36, "label36");
  gtk_widget_show(label36);
  gtk_frame_set_label_widget(GTK_FRAME(frame17), label36);
  gtk_label_set_use_markup(GTK_LABEL(label36), TRUE);

  frame16 = gtk_frame_new(NULL);
  gtk_widget_set_name(frame16, "frame16");
  gtk_widget_show(frame16);
  gtk_box_pack_start(GTK_BOX(vbox4), frame16, TRUE, TRUE, 0);

  table11 = gtk_table_new(2, 2, FALSE);
  gtk_widget_set_name(table11, "table11");
  gtk_widget_show(table11);
  gtk_container_add(GTK_CONTAINER(frame16), table11);

  radioSNMPRead = gtk_radio_button_new_with_mnemonic(NULL, "Write Password");
  gtk_widget_set_name(radioSNMPRead, "radioSNMPRead");
  gtk_widget_show(radioSNMPRead);
  gtk_table_attach(GTK_TABLE(table11), radioSNMPRead, 1, 2, 0, 1, (GtkAttachOptions) (GTK_EXPAND | GTK_SHRINK), (GtkAttachOptions) (GTK_EXPAND), 0, 0);
  gtk_radio_button_set_group(GTK_RADIO_BUTTON(radioSNMPRead), radioSNMPRead_group);
  radioSNMPRead_group = gtk_radio_button_get_group(GTK_RADIO_BUTTON(radioSNMPRead));

  radioSNMPWrite = gtk_radio_button_new_with_mnemonic(NULL, "Read Password");
  gtk_widget_set_name(radioSNMPWrite, "radioSNMPWrite");
  gtk_widget_show(radioSNMPWrite);
  gtk_table_attach(GTK_TABLE(table11), radioSNMPWrite, 1, 2, 1, 2, (GtkAttachOptions) (GTK_EXPAND | GTK_SHRINK), (GtkAttachOptions) (GTK_EXPAND), 0, 0);
  gtk_radio_button_set_group(GTK_RADIO_BUTTON(radioSNMPWrite), radioSNMPRead_group);
  radioSNMPRead_group = gtk_radio_button_get_group(GTK_RADIO_BUTTON(radioSNMPWrite));

  radioSNMPVer2 = gtk_radio_button_new_with_mnemonic(NULL, "Version 2");
  gtk_widget_set_name(radioSNMPVer2, "radioSNMPVer2");
  gtk_widget_show(radioSNMPVer2);
  gtk_table_attach(GTK_TABLE(table11), radioSNMPVer2, 0, 1, 1, 2, (GtkAttachOptions) (GTK_EXPAND | GTK_SHRINK), (GtkAttachOptions) (GTK_EXPAND), 0, 0);
  gtk_radio_button_set_group(GTK_RADIO_BUTTON(radioSNMPVer2), radioSNMPVer2_group);
  radioSNMPVer2_group = gtk_radio_button_get_group(GTK_RADIO_BUTTON(radioSNMPVer2));

  radioSNMPVer1 = gtk_radio_button_new_with_mnemonic(NULL, "Version 1");
  gtk_widget_set_name(radioSNMPVer1, "radioSNMPVer1");
  gtk_widget_show(radioSNMPVer1);
  gtk_table_attach(GTK_TABLE(table11), radioSNMPVer1, 0, 1, 0, 1, (GtkAttachOptions) (GTK_EXPAND | GTK_SHRINK), (GtkAttachOptions) (GTK_EXPAND), 0, 0);
  gtk_radio_button_set_group(GTK_RADIO_BUTTON(radioSNMPVer1), radioSNMPVer2_group);
  radioSNMPVer2_group = gtk_radio_button_get_group(GTK_RADIO_BUTTON(radioSNMPVer1));

  label35 = gtk_label_new("SNMP");
  gtk_widget_set_name(label35, "label35");
  gtk_widget_show(label35);
  gtk_frame_set_label_widget(GTK_FRAME(frame16), label35);

  label14 = gtk_label_new("Specific");
  gtk_widget_set_name(label14, "label14");
  gtk_widget_show(label14);
  gtk_notebook_set_tab_label(GTK_NOTEBOOK(ntbMain), gtk_notebook_get_nth_page(GTK_NOTEBOOK(ntbMain), 3), label14);

  vbox3 = gtk_vbox_new(FALSE, 0);
  gtk_widget_set_name(vbox3, "vbox3");
  gtk_widget_show(vbox3);
  gtk_container_add(GTK_CONTAINER(ntbMain), vbox3);

  scrolledwindow1 = gtk_scrolled_window_new(NULL, NULL);
  gtk_widget_set_name(scrolledwindow1, "scrolledwindow1");
  gtk_widget_show(scrolledwindow1);
  gtk_box_pack_start(GTK_BOX(vbox3), scrolledwindow1, TRUE, TRUE, 0);
  gtk_scrolled_window_set_policy(GTK_SCROLLED_WINDOW(scrolledwindow1), GTK_POLICY_AUTOMATIC, GTK_POLICY_AUTOMATIC);

  viewport1 = gtk_viewport_new(NULL, NULL);
  gtk_widget_set_name(viewport1, "viewport1");
  gtk_widget_show(viewport1);
  gtk_container_add(GTK_CONTAINER(scrolledwindow1), viewport1);

  frame14 = gtk_frame_new(NULL);
  gtk_widget_set_name(frame14, "frame14");
  gtk_widget_show(frame14);
  gtk_container_add(GTK_CONTAINER(viewport1), frame14);

  txtOutput = gtk_text_view_new();
  gtk_widget_set_name(txtOutput, "txtOutput");
  gtk_widget_show(txtOutput);
  gtk_container_add(GTK_CONTAINER(frame14), txtOutput);
  gtk_text_view_set_editable(GTK_TEXT_VIEW(txtOutput), FALSE);

  label33 = gtk_label_new("Output");
  gtk_widget_set_name(label33, "label33");
  gtk_widget_show(label33);
  gtk_frame_set_label_widget(GTK_FRAME(frame14), label33);

  hbox1 = gtk_hbox_new(FALSE, 0);
  gtk_widget_set_name(hbox1, "hbox1");
  gtk_widget_show(hbox1);
  gtk_box_pack_start(GTK_BOX(vbox3), hbox1, FALSE, TRUE, 0);

  btnStart = gtk_button_new_with_mnemonic("Start");
  gtk_widget_set_name(btnStart, "btnStart");
  gtk_widget_show(btnStart);
  gtk_box_pack_start(GTK_BOX(hbox1), btnStart, TRUE, FALSE, 0);
  gtk_tooltips_set_tip(tooltips, btnStart, "start hydra", NULL);

  btnStop = gtk_button_new_with_mnemonic("Stop");
  gtk_widget_set_name(btnStop, "btnStop");
  gtk_widget_show(btnStop);
  gtk_box_pack_start(GTK_BOX(hbox1), btnStop, TRUE, FALSE, 0);
  gtk_tooltips_set_tip(tooltips, btnStop, "stop hydra", NULL);

  btnSave = gtk_button_new_with_mnemonic("Save Output");
  gtk_widget_set_name(btnSave, "btnSave");
  gtk_widget_show(btnSave);
  gtk_box_pack_start(GTK_BOX(hbox1), btnSave, TRUE, FALSE, 0);
  gtk_tooltips_set_tip(tooltips, btnSave, "save output", NULL);

  btnClear = gtk_button_new_with_mnemonic("Clear Output");
  gtk_widget_set_name(btnClear, "btnClear");
  gtk_widget_show(btnClear);
  gtk_box_pack_start(GTK_BOX(hbox1), btnClear, TRUE, FALSE, 0);
  gtk_tooltips_set_tip(tooltips, btnClear, "clear screen", NULL);

  label4 = gtk_label_new("Start");
  gtk_widget_set_name(label4, "label4");
  gtk_widget_show(label4);
  gtk_notebook_set_tab_label(GTK_NOTEBOOK(ntbMain), gtk_notebook_get_nth_page(GTK_NOTEBOOK(ntbMain), 4), label4);

  statusbar = gtk_statusbar_new();
  gtk_widget_set_name(statusbar, "statusbar");
  gtk_widget_show(statusbar);
  gtk_box_pack_start(GTK_BOX(vbox1), statusbar, FALSE, FALSE, 0);

  g_signal_connect((gpointer) wndMain, "destroy", G_CALLBACK(on_wndMain_destroy), NULL);
  g_signal_connect((gpointer) quit1, "button-press-event", G_CALLBACK(on_quit1_activate), NULL);
  g_signal_connect((gpointer) entTargetFile, "button_press_event", G_CALLBACK(on_entTargetFile_button_press_event), NULL);
  g_signal_connect((gpointer) entUsernameFile, "button_press_event", G_CALLBACK(on_entUsernameFile_button_press_event), NULL);
  g_signal_connect((gpointer) entPassFile, "button_press_event", G_CALLBACK(on_entPassFile_button_press_event), NULL);
  g_signal_connect((gpointer) chkColon, "toggled", G_CALLBACK(on_chkColon_toggled), NULL);
  g_signal_connect((gpointer) entColonFile, "button_press_event", G_CALLBACK(on_entColonFile_button_press_event), NULL);
  g_signal_connect((gpointer) btnStart, "clicked", G_CALLBACK(on_btnStart_clicked), NULL);
  g_signal_connect((gpointer) btnStop, "clicked", G_CALLBACK(on_btnStop_clicked), NULL);
  g_signal_connect((gpointer) btnSave, "clicked", G_CALLBACK(on_btnSave_clicked), NULL);
  g_signal_connect((gpointer) btnClear, "clicked", G_CALLBACK(on_btnClear_clicked), NULL);

  /* Store pointers to all widgets, for use by lookup_widget(). */
  GLADE_HOOKUP_OBJECT_NO_REF(wndMain, wndMain, "wndMain");
  GLADE_HOOKUP_OBJECT(wndMain, vbox1, "vbox1");
  GLADE_HOOKUP_OBJECT(wndMain, menubar1, "menubar1");
  GLADE_HOOKUP_OBJECT(wndMain, quit1, "quit1");
  GLADE_HOOKUP_OBJECT(wndMain, ntbMain, "ntbMain");
  GLADE_HOOKUP_OBJECT(wndMain, vbox5, "vbox5");
  GLADE_HOOKUP_OBJECT(wndMain, frame11, "frame11");
  GLADE_HOOKUP_OBJECT(wndMain, table8, "table8");
  GLADE_HOOKUP_OBJECT(wndMain, cmbProtocol, "cmbProtocol");
  GLADE_HOOKUP_OBJECT(wndMain, entProtocol, "entProtocol");
  GLADE_HOOKUP_OBJECT(wndMain, label7, "label7");
  GLADE_HOOKUP_OBJECT(wndMain, spnPort, "spnPort");
  GLADE_HOOKUP_OBJECT(wndMain, label6, "label6");
  GLADE_HOOKUP_OBJECT(wndMain, radioTarget2, "radioTarget2");
  GLADE_HOOKUP_OBJECT(wndMain, entTargetFile, "entTargetFile");
  GLADE_HOOKUP_OBJECT(wndMain, entTarget, "entTarget");
  GLADE_HOOKUP_OBJECT(wndMain, radioTarget1, "radioTarget1");
  GLADE_HOOKUP_OBJECT(wndMain, label28, "label28");
  GLADE_HOOKUP_OBJECT(wndMain, frame12, "frame12");
  GLADE_HOOKUP_OBJECT(wndMain, table9, "table9");
  GLADE_HOOKUP_OBJECT(wndMain, chkVerbose, "chkVerbose");
  GLADE_HOOKUP_OBJECT(wndMain, chkDebug, "chkDebug");
  GLADE_HOOKUP_OBJECT(wndMain, chkAttempts, "chkAttempts");
  GLADE_HOOKUP_OBJECT(wndMain, chkIPV6, "chkIPV6");
  GLADE_HOOKUP_OBJECT(wndMain, chkSSL, "chkSSL");
  GLADE_HOOKUP_OBJECT(wndMain, label29, "label29");
  GLADE_HOOKUP_OBJECT(wndMain, label1, "label1");
  GLADE_HOOKUP_OBJECT(wndMain, vbox2, "vbox2");
  GLADE_HOOKUP_OBJECT(wndMain, frmUsername, "frmUsername");
  GLADE_HOOKUP_OBJECT(wndMain, table2, "table2");
  GLADE_HOOKUP_OBJECT(wndMain, entUsernameFile, "entUsernameFile");
  GLADE_HOOKUP_OBJECT(wndMain, entUsername, "entUsername");
  GLADE_HOOKUP_OBJECT(wndMain, radioUsername1, "radioUsername1");
  GLADE_HOOKUP_OBJECT(wndMain, chkUsernameLoop, "chkUsernameLoop");
  GLADE_HOOKUP_OBJECT(wndMain, radioUsername2, "radioUsername2");
  GLADE_HOOKUP_OBJECT(wndMain, label8, "label8");
  GLADE_HOOKUP_OBJECT(wndMain, frmPass, "frmPass");
  GLADE_HOOKUP_OBJECT(wndMain, table3, "table3");
  GLADE_HOOKUP_OBJECT(wndMain, entPassFile, "entPassFile");
  GLADE_HOOKUP_OBJECT(wndMain, entPass, "entPass");
  GLADE_HOOKUP_OBJECT(wndMain, radioPass1, "radioPass1");
  GLADE_HOOKUP_OBJECT(wndMain, radioPass2, "radioPass2");
  GLADE_HOOKUP_OBJECT(wndMain, labelpass, "labelpass");
  GLADE_HOOKUP_OBJECT(wndMain, frame8, "frame8");
  GLADE_HOOKUP_OBJECT(wndMain, table5, "table5");
  GLADE_HOOKUP_OBJECT(wndMain, chkColon, "chkColon");
  GLADE_HOOKUP_OBJECT(wndMain, entColonFile, "entColonFile");
  GLADE_HOOKUP_OBJECT(wndMain, label20, "label20");
  GLADE_HOOKUP_OBJECT(wndMain, table6, "table6");
  GLADE_HOOKUP_OBJECT(wndMain, chkPassLogin, "chkPassLogin");
  GLADE_HOOKUP_OBJECT(wndMain, chkPassNull, "chkPassNull");
  GLADE_HOOKUP_OBJECT(wndMain, label2, "label2");
  GLADE_HOOKUP_OBJECT(wndMain, table4, "table4");
  GLADE_HOOKUP_OBJECT(wndMain, frame9, "frame9");
  GLADE_HOOKUP_OBJECT(wndMain, table7, "table7");
  GLADE_HOOKUP_OBJECT(wndMain, label22, "label22");
  GLADE_HOOKUP_OBJECT(wndMain, entHTTPProxy, "entHTTPProxy");
  GLADE_HOOKUP_OBJECT(wndMain, chkProxyAuth, "chkProxyAuth");
  GLADE_HOOKUP_OBJECT(wndMain, label23, "label23");
  GLADE_HOOKUP_OBJECT(wndMain, entProxyUser, "entProxyUser");
  GLADE_HOOKUP_OBJECT(wndMain, label24, "label24");
  GLADE_HOOKUP_OBJECT(wndMain, entProxyPass, "entProxyPass");
  GLADE_HOOKUP_OBJECT(wndMain, label26, "label26");
  GLADE_HOOKUP_OBJECT(wndMain, hbox3, "hbox3");
  GLADE_HOOKUP_OBJECT(wndMain, radioProxy, "radioProxy");
  GLADE_HOOKUP_OBJECT(wndMain, radioProxy2, "radioProxy2");
  GLADE_HOOKUP_OBJECT(wndMain, radioProxy3, "radioProxy3");
  GLADE_HOOKUP_OBJECT(wndMain, label21, "label21");
  GLADE_HOOKUP_OBJECT(wndMain, frame13, "frame13");
  GLADE_HOOKUP_OBJECT(wndMain, table10, "table10");
  GLADE_HOOKUP_OBJECT(wndMain, chkExitf, "chkExitf");
  GLADE_HOOKUP_OBJECT(wndMain, spnTimeout, "spnTimeout");
  GLADE_HOOKUP_OBJECT(wndMain, spnTasks, "spnTasks");
  GLADE_HOOKUP_OBJECT(wndMain, label32, "label32");
  GLADE_HOOKUP_OBJECT(wndMain, label31, "label31");
  GLADE_HOOKUP_OBJECT(wndMain, label30, "label30");
  GLADE_HOOKUP_OBJECT(wndMain, label3, "label3");
  GLADE_HOOKUP_OBJECT(wndMain, vbox4, "vbox4");
  GLADE_HOOKUP_OBJECT(wndMain, frame10, "frame10");
  GLADE_HOOKUP_OBJECT(wndMain, entHTTPProxyURL, "entHTTPProxyURL");
  GLADE_HOOKUP_OBJECT(wndMain, label27, "label27");
  GLADE_HOOKUP_OBJECT(wndMain, frame3, "frame3");
  GLADE_HOOKUP_OBJECT(wndMain, entHTTPURL, "entHTTPURL");
  GLADE_HOOKUP_OBJECT(wndMain, label15, "label15");
  GLADE_HOOKUP_OBJECT(wndMain, frame4, "frame4");
  GLADE_HOOKUP_OBJECT(wndMain, entCiscoPass, "entCiscoPass");
  GLADE_HOOKUP_OBJECT(wndMain, label16, "label16");
  GLADE_HOOKUP_OBJECT(wndMain, frame5, "frame5");
  GLADE_HOOKUP_OBJECT(wndMain, entLDAPDN, "entLDAPDN");
  GLADE_HOOKUP_OBJECT(wndMain, label17, "label17");
  GLADE_HOOKUP_OBJECT(wndMain, frame6, "frame6");
  GLADE_HOOKUP_OBJECT(wndMain, hbox2, "hbox2");
  GLADE_HOOKUP_OBJECT(wndMain, chkLocal, "chkLocal");
  GLADE_HOOKUP_OBJECT(wndMain, chkDomain, "chkDomain");
  GLADE_HOOKUP_OBJECT(wndMain, chkNTLM, "chkNTLM");
  GLADE_HOOKUP_OBJECT(wndMain, label18, "label18");
  GLADE_HOOKUP_OBJECT(wndMain, frame7, "frame7");
  GLADE_HOOKUP_OBJECT(wndMain, spnSAPR3, "spnSAPR3");
  GLADE_HOOKUP_OBJECT(wndMain, label19, "label19");
  GLADE_HOOKUP_OBJECT(wndMain, frame15, "frame15");
  GLADE_HOOKUP_OBJECT(wndMain, entCVS, "entCVS");
  GLADE_HOOKUP_OBJECT(wndMain, label34, "label34");
  GLADE_HOOKUP_OBJECT(wndMain, frame17, "frame17");
  GLADE_HOOKUP_OBJECT(wndMain, alignment1, "alignment1");
  GLADE_HOOKUP_OBJECT(wndMain, entTelnet, "entTelnet");
  GLADE_HOOKUP_OBJECT(wndMain, label36, "label36");
  GLADE_HOOKUP_OBJECT(wndMain, frame16, "frame16");
  GLADE_HOOKUP_OBJECT(wndMain, table11, "table11");
  GLADE_HOOKUP_OBJECT(wndMain, radioSNMPRead, "radioSNMPRead");
  GLADE_HOOKUP_OBJECT(wndMain, radioSNMPWrite, "radioSNMPWrite");
  GLADE_HOOKUP_OBJECT(wndMain, radioSNMPVer2, "radioSNMPVer2");
  GLADE_HOOKUP_OBJECT(wndMain, radioSNMPVer1, "radioSNMPVer1");
  GLADE_HOOKUP_OBJECT(wndMain, label35, "label35");
  GLADE_HOOKUP_OBJECT(wndMain, label14, "label14");
  GLADE_HOOKUP_OBJECT(wndMain, vbox3, "vbox3");
  GLADE_HOOKUP_OBJECT(wndMain, scrolledwindow1, "scrolledwindow1");
  GLADE_HOOKUP_OBJECT(wndMain, viewport1, "viewport1");
  GLADE_HOOKUP_OBJECT(wndMain, frame14, "frame14");
  GLADE_HOOKUP_OBJECT(wndMain, txtOutput, "txtOutput");
  GLADE_HOOKUP_OBJECT(wndMain, label33, "label33");
  GLADE_HOOKUP_OBJECT(wndMain, hbox1, "hbox1");
  GLADE_HOOKUP_OBJECT(wndMain, btnStart, "btnStart");
  GLADE_HOOKUP_OBJECT(wndMain, btnStop, "btnStop");
  GLADE_HOOKUP_OBJECT(wndMain, btnSave, "btnSave");
  GLADE_HOOKUP_OBJECT(wndMain, btnClear, "btnClear");
  GLADE_HOOKUP_OBJECT(wndMain, label4, "label4");
  GLADE_HOOKUP_OBJECT(wndMain, statusbar, "statusbar");
  GLADE_HOOKUP_OBJECT_NO_REF(wndMain, tooltips, "tooltips");

  gtk_window_add_accel_group(GTK_WINDOW(wndMain), accel_group);

  return wndMain;
}
