-int hop_channel(info_struct *info)
-{
- struct iwreq iwreq;
- if(info->current_channel>=CHANNEL_MAX) info->current_channel=1;
- memset(&iwreq,0,sizeof(iwreq));
- strcpy(iwreq.ifr_name,info->device);
- iwreq.u.freq.e=0;
- iwreq.u.freq.m=info->current_channel;
- if(ioctl(info->channel_hop_fd,SIOCSIWFREQ,&iwreq)<0)
- {
- puts("unable to hop channel");
- perror("ioctl");
- return -23;
- }
- ++(info->current_channel);
- return 23;
+int noop(t_input *input,void *ptr) {
+
+ return 23;
+}
+
+int get_user_interaction(t_info *info) {
+
+ char *string;
+
+ string=(char *)malloc(info->display.max_x*sizeof(char));
+
+ input_get_event(&(info->input),noop,info);
+
+ /*
+ if(info->input.content[0]=='h') {
+ display_console(info,"hdw-sniff help:");
+ display_console(info,"h - print this help");
+ display_console(info,"x - enable/disable hex output");
+ display_console(info,"a - enable/disable ascii output");
+ display_console(info,"q - quit");
+ display_console(info,"console navigation: arrow up/down");
+ display_console(info,"network list navigation: page up/down");
+ }
+ */
+
+ if(info->input.content[0]=='x') {
+ info->mode^=MODE_HEXOUT;
+ display_console(info,"toggled hex output");
+ }
+
+ else if(info->input.content[0]=='a') {
+ info->mode^=MODE_ASCIIOUT;
+ display_console(info,"toggled ascii output");
+ }
+
+ else if(info->input.content[0]=='q') {
+ event_stop(&(info->event));
+ display_console(info,"quit!");
+ }
+
+ else {
+ snprintf(string,info->display.max_x,"unknown event (%x)",
+ info->input.content[0]);
+ display_console(info,string);
+ }
+
+ return 23;