⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 jiemian.c

📁 用C编写的网络入侵检测系统的菜单和按钮等
💻 C
📖 第 1 页 / 共 3 页
字号:
	label=gtk_label_new("      HTTP      ");
	gtk_widget_show(label);
	gtk_notebook_append_page(GTK_NOTEBOOK(text_notebook),hbox,label);
	//=================设置事件显示页面==================//
	listvbox=gtk_vbox_new(FALSE,0);
	gtk_container_set_border_width(GTK_CONTAINER(vbox),5);
	label=gtk_label_new("      Alert Event      ");
	gtk_widget_show(label);
	gtk_notebook_append_page(GTK_NOTEBOOK(text_notebook),listvbox,label);
	gtk_widget_show(listvbox);
	scrolled_window=gtk_scrolled_window_new(NULL,NULL);
	gtk_scrolled_window_set_policy(GTK_SCROLLED_WINDOW(scrolled_window),GTK_POLICY_AUTOMATIC,GTK_POLICY_ALWAYS);
	gtk_box_pack_start(GTK_BOX(listvbox),scrolled_window,TRUE,TRUE,0);
	gtk_widget_show(scrolled_window);
	clist_event=gtk_clist_new(11);
	gtk_object_set_data(GTK_OBJECT(window),"clist_event",clist_event);
	gtk_widget_ref(clist_event);
	gtk_object_set_data_full(GTK_OBJECT(window),"clist_event",clist_event,(GtkDestroyNotify)gtk_widget_unref);
	gtk_clist_set_shadow_type(GTK_CLIST(clist_event),GTK_SHADOW_IN);
	gtk_clist_set_column_title(GTK_CLIST(clist_event),0,"Time");
	//显示时间
	gtk_clist_set_column_title(GTK_CLIST(clist_event),1,"Event Name");	
	gtk_clist_set_column_title(GTK_CLIST(clist_event),2,"Source MAC");
	gtk_clist_set_column_title(GTK_CLIST(clist_event),3,"Destination MAC");
	gtk_clist_set_column_title(GTK_CLIST(clist_event),4,"Source IP");
	gtk_clist_set_column_title(GTK_CLIST(clist_event),5,"Destination IP");
	gtk_clist_set_column_title(GTK_CLIST(clist_event),6,"Event Protocol");
	gtk_clist_set_column_title(GTK_CLIST(clist_event),7,"Event Code");
	gtk_clist_set_column_title(GTK_CLIST(clist_event),8,"Event Defination");
	gtk_clist_set_column_title(GTK_CLIST(clist_event),9,"Event Information");
	gtk_clist_set_column_title(GTK_CLIST(clist_event),10,"Alert Type");
	//显示事件响应方式
	gtk_clist_column_titles_show(GTK_CLIST(clist_event));
	gtk_clist_set_column_width(GTK_CLIST(clist_event),0,200);
	gtk_clist_set_column_width(GTK_CLIST(clist_event),1,100);
	gtk_clist_set_column_width(GTK_CLIST(clist_event),2,100);
	gtk_clist_set_column_width(GTK_CLIST(clist_event),3,100);
	gtk_clist_set_column_width(GTK_CLIST(clist_event),4,100);
	gtk_clist_set_column_width(GTK_CLIST(clist_event),5,100);
	gtk_clist_set_column_width(GTK_CLIST(clist_event),6,100);
	gtk_clist_set_column_width(GTK_CLIST(clist_event),7,100);
	gtk_clist_set_column_width(GTK_CLIST(clist_event),8,100);
	gtk_clist_set_column_width(GTK_CLIST(clist_event),9,100);
	gtk_clist_set_column_width(GTK_CLIST(clist_event),10,100);
	gtk_container_add(GTK_CONTAINER(scrolled_window),clist_event);
	gtk_widget_show(clist_event);
	hbox=gtk_hbox_new(FALSE,0);
	showcount_label=gtk_label_new("count");
	gtk_widget_ref(showcount_label);
	gtk_object_set_data_full(GTK_OBJECT(window),"showcount_label",showcount_label,(GtkDestroyNotify)gtk_widget_unref);
	gtk_box_pack_start(GTK_BOX(hbox),showcount_label,TRUE,TRUE,0);
	gtk_widget_show(showcount_label);
	label=gtk_label_new("count");
	gtk_widget_ref(label);
	gtk_object_set_data_full(GTK_OBJECT(window),"label",label,(GtkDestroyNotify)gtk_widget_unref);
	gtk_box_pack_start(GTK_BOX(hbox),label,TRUE,TRUE,0);
	gtk_widget_show(label);
	baojinlabel=gtk_label_new("count");
	gtk_widget_ref(baojinlabel);
	gtk_object_set_data_full(GTK_OBJECT(window),"baojinlabel",baojinlabel,(GtkDestroyNotify)gtk_widget_unref);
	gtk_box_pack_start(GTK_BOX(hbox),baojinlabel,TRUE,TRUE,0);
	gtk_widget_show(baojinlabel);
	gtk_box_pack_start(GTK_BOX(vbox),hbox,FALSE,FALSE,0);
	gtk_widget_show(hbox);
	separator=gtk_hseparator_new();
	gtk_box_pack_start(GTK_BOX(vbox),separator,FALSE,TRUE,0);
	gtk_widget_show(separator);
	//====================创建按钮行======================//
	buttons_hbox=gtk_hbox_new(FALSE,0);
	gtk_object_set_data(GTK_OBJECT(window),"buttons_hbox",buttons_hbox);
	tooltips=gtk_tooltips_new();
	gtk_tooltips_set_delay(tooltips,0);
	button=gtk_button_new();
	gtk_signal_connect(GTK_OBJECT(button),"clicked",GTK_SIGNAL_FUNC(threads_click),NULL);
	//设置回调函数threads_click(),其功能是开始系统运行
	gtk_box_pack_start(GTK_BOX(buttons_hbox),button,TRUE,TRUE,5);
	gtk_tooltips_set_tip(tooltips,button,"Show the data in graph forms.",NULL);
	box_xpm=xpm_label_box(window,"./xpm/sniffer.xpm","Sniffer");
	gtk_widget_show(box_xpm);
	gtk_container_add(GTK_CONTAINER(button),box_xpm);
	gtk_widget_show(button);
	tooltips=gtk_tooltips_new();
	gtk_tooltips_set_delay(tooltips,0);
	button1=gtk_button_new();
	gtk_signal_connect(GTK_OBJECT(button1),"clicked",GTK_SIGNAL_FUNC(ok_clicked),NULL);
	//设置回调函数ok_clicked()
	gtk_signal_connect_object(GTK_OBJECT(button1),"clicked",GTK_SIGNAL_FUNC(ok_clicked_1),GTK_OBJECT(window));
	//设置回调函数ok_clicked1_1()
	gtk_box_pack_start(GTK_BOX(buttons_hbox),button1,TRUE,TRUE,5);
	gtk_tooltips_set_tip(tooltips,button1,"Sniffer one packet a time.",NULL);
	box_xpm=xpm_label_box_button(window,"./xpm/onepacket.xpm","One packet");
	gtk_widget_show(box_xpm);
	gtk_container_add(GTK_CONTAINER(button1),box_xpm);
	gtk_widget_show(button1);
	tooltips=gtk_tooltips_new();
	gtk_tooltips_set_delay(tooltips,0);
	button=gtk_button_new();
	gtk_signal_connect(GTK_OBJECT(button),"clicked",GTK_SIGNAL_FUNC(clear),NULL);
	//设置回调函数clear()
	gtk_box_pack_start(GTK_BOX(buttons_hbox),button,TRUE,TRUE,5);
	gtk_tooltips_set_tip(tooltips,button,"Clear all content in the text.",NULL);
	box_xpm=xpm_label_box_button(window,"./xpm/delete.xpm","Clear");
	gtk_widget_show(box_xpm);
	gtk_container_add(GTK_CONTAINER(button),box_xpm);
	gtk_widget_show(button);
	tooltips=gtk_tooltips_new();
	gtk_tooltips_set_delay(tooltips,0);
	button=gtk_button_new();
	gtk_signal_connect(GTK_OBJECT(button),"clicked",GTK_SIGNAL_FUNC(savetofile),NULL);
	//设置回调函数savetofile(),功能是保存当前信息
	gtk_box_pack_start(GTK_BOX(buttons_hbox),button,TRUE,TRUE,5);
	gtk_tooltips_set_tip(tooltips,button,"Save the content to the file.",NULL);
	box_xpm=xpm_label_box_button(window,"./xpm/filesave.xpm","Save");
	gtk_widget_show(box_xpm);
	gtk_container_add(GTK_CONTAINER(button),box_xpm);
	gtk_widget_show(button);
	tooltips=gtk_tooltips_new();
	gtk_tooltips_set_delay(tooltips,0);
	button=gtk_button_new();
	gtk_signal_connect(GTK_OBJECT(button),"clicked",GTK_SIGNAL_FUNC(openfile_test),NULL);
	//设置回调函数openfile_test(),其功能是打开文件
	gtk_box_pack_start(GTK_BOX(buttons_hbox),button,TRUE,TRUE,5);
	gtk_tooltips_set_tip(tooltips,button,"Show the data in text forms.",NULL);
	box_xpm=xpm_label_box_button(window,"./xpm/open.xpm","Open");
	gtk_widget_show(box_xpm);
	gtk_container_add(GTK_CONTAINER(button),box_xpm);
	gtk_widget_show(button);
	tooltips=gtk_tooltips_new();
	gtk_tooltips_set_delay(tooltips,0);
	button=gtk_button_new();
	gtk_signal_connect(GTK_OBJECT(button),"clicked",GTK_SIGNAL_FUNC(plot),NULL);
	//设置回调函数plot(),其功能是显示图形
	gtk_box_pack_start(GTK_BOX(buttons_hbox),button,TRUE,TRUE,5);
	gtk_tooltips_set_tip(tooltips,button,"Show the data in graph forms.",NULL);
	box_xpm=xpm_label_box_button(window,"./xpm/idea.xpm","Graph");
	gtk_widget_show(box_xpm);
	gtk_container_add(GTK_CONTAINER(button),box_xpm);
	gtk_widget_show(button);
	tooltips=gtk_tooltips_new();
	gtk_tooltips_set_delay(tooltips,0);
	button=gtk_button_new();
	gtk_signal_connect(GTK_OBJECT(button),"clicked",GTK_SIGNAL_FUNC(tcstat),NULL);
	//设置回调函数tcpstat(),其功能是显示画面
	gtk_box_pack_start(GTK_BOX(buttons_hbox),button,TRUE,TRUE,5);
	gtk_tooltips_set_tip(tooltips,button,"Show the data in graph forms.",NULL);
	box_xpm=xpm_label_box_button(window,"./xpm/flag.xpm","tcpstat");
	gtk_widget_show(box_xpm);
	gtk_container_add(GTK_CONTAINER(button),box_xpm);
	gtk_widget_show(button);
	tooltips=gtk_tooltips_new();
	gtk_tooltips_set_delay(tooltips,0);
	button=gtk_button_new();
	gtk_signal_connect(GTK_OBJECT(button),"clicked",GTK_SIGNAL_FUNC(test),NULL);
	//设置回调函数test(),其功能是测试响应方式
	gtk_box_pack_start(GTK_BOX(buttons_hbox),button,TRUE,TRUE,5);
	gtk_tooltips_set_tip(tooltips,button,"Show the data in graph forms.",NULL);
	box_xpm=xpm_label_box_button(window,"./xpm/minibreak.xpm","Test");
	gtk_widget_show(box_xpm);
	gtk_container_add(GTK_CONTAINER(button),box_xpm);
	gtk_widget_show(button);
	tooltips=gtk_tooltips_new();
	gtk_tooltips_set_delay(tooltips,0);
	button=gtk_button_new();
	gtk_signal_connect(GTK_OBJECT(button),"clicked",GTK_SIGNAL_FUNC(read_bpf),NULL);
	//设置回调函数read_bpf(),其功能是读取pbf文件
	gtk_box_pack_start(GTK_BOX(buttons_hbox),button,TRUE,TRUE,5);
	gtk_tooltips_set_tip(tooltips,button,"Show the data in graph forms.",NULL);
	box_xpm=xpm_label_box_button(window,"./xpm/run.xpm","Readbpf");
	gtk_widget_show(box_xpm);
	gtk_container_add(GTK_CONTAINER(button),box_xpm);
	gtk_widget_show(button);
	tooltips=gtk_tooltips_new();
	gtk_tooltips_set_delay(tooltips,0);
	button=gtk_button_new();
	gtk_signal_connect(GTK_OBJECT(button),"clicked",GTK_SIGNAL_FUNC(stop1),NULL);
	//设置回调函数stop1(),其功能是停止系统运行
	gtk_box_pack_start(GTK_BOX(buttons_hbox),button,TRUE,TRUE,5);
	gtk_tooltips_set_tip(tooltips,button,"Stop sniffering……",NULL);
	box_xpm=xpm_label_box_button(window,"./xpm/break,xpm","Stop");
	gtk_widget_show(box_xpm);
	gtk_container_add(GTK_CONTAINER(button),box_xpm);
	gtk_widget_show(button);
	tooltips=gtk_tooltips_new();
	gtk_tooltips_set_delay(tooltips,0);
	button=gtk_button_new();
	gtk_signal_connect(GTK_OBJECT(window),"destroy",GTK_SIGNAL_FUNC(gtk_exit),NULL);
	//设置回调函数gtk_exit(),其功能是退出GTK
	gtk_signal_connect(GTK_OBJECT(window),"delete_event",GTK_SIGNAL_FUNC(gtk_exit),NULL);
	//设置回调函数gtk_exit(),其功能是退出GTK
	gtk_signal_connect_object(GTK_OBJECT(button),"clicked",GTK_SIGNAL_FUNC(gtk_widget_destroy),GTK_OBJECT(window));
	//设置回调函数gtk_widget_destroy(),其功能是销毁窗口
	gtk_signal_connect(GTK_OBJECT(button),"clicked",GTK_SIGNAL_FUNC(destroy),NULL);
	//设置回调函数destroy(),其功能是销毁窗口	gtk_box_pack_start(GTK_BOX(buttons_hbox),button,TRUE,TRUE,5);
	gtk_tooltips_set_tip(tooltips,button,"Quit the program",NULL);
	box_xpm=xpm_label_box_button(window,"./xpm/quit.xpm","Quit");
	gtk_widget_show(box_xpm);
	gtk_container_add(GTK_CONTAINER(button),box_xpm);
	gtk_widget_show(button);
	gtk_box_pack_start(GTK_BOX(vbox),buttons_hbox,FALSE,FALSE,5);
	gtk_widget_show(buttons_hbox);
	gtk_container_add(GTK_CONTAINER(window),vbox);
	gtk_widget_show(vbox);
	gtk_widget_show(window);
	mynids_init();
	srand((unsigned int)time(NULL));
	gdk_threads_enter();
	gtk_main();
	gdk_threads_leave();
	return 0;				
}


	

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -