亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频

? 歡迎來到蟲蟲下載站! | ?? 資源下載 ?? 資源專輯 ?? 關于我們
? 蟲蟲下載站

?? wpagui.cpp

?? ralinktech rt61 wireless driver
?? CPP
?? 第 1 頁 / 共 2 頁
字號:
/* * wpa_gui - WpaGui class * Copyright (c) 2005-2006, Jouni Malinen <j@w1.fi> * * This program is free software; you can redistribute it and/or modify * it under the terms of the GNU General Public License version 2 as * published by the Free Software Foundation. * * Alternatively, this software may be distributed under the terms of BSD * license. * * See README and COPYING for more details. */#ifdef __MINGW32__/* Need to get getopt() */#include <unistd.h>#endif#include <QMessageBox>#include "wpagui.h"#include "dirent.h"#include "wpa_ctrl.h"#include "userdatarequest.h"#include "networkconfig.h"WpaGui::WpaGui(QWidget *parent, const char *, Qt::WFlags)	: QMainWindow(parent){	setupUi(this);	(void) statusBar();	connect(helpIndexAction, SIGNAL(activated()), this, SLOT(helpIndex()));	connect(helpContentsAction, SIGNAL(activated()), this,		SLOT(helpContents()));	connect(helpAboutAction, SIGNAL(activated()), this, SLOT(helpAbout()));	connect(fileExitAction, SIGNAL(activated()), this, SLOT(close()));	connect(disconnectButton, SIGNAL(clicked()), this, SLOT(disconnect()));	connect(scanButton, SIGNAL(clicked()), this, SLOT(scan()));	connect(connectButton, SIGNAL(clicked()), this, SLOT(connectB()));	connect(fileEventHistoryAction, SIGNAL(activated()), this,		SLOT(eventHistory()));	connect(networkSelect, SIGNAL(activated(const QString&)), this,		SLOT(selectNetwork(const QString&)));	connect(fileEdit_networkAction, SIGNAL(activated()), this,		SLOT(editNetwork()));	connect(fileAdd_NetworkAction, SIGNAL(activated()), this,		SLOT(addNetwork()));	connect(adapterSelect, SIGNAL(activated(const QString&)), this,		SLOT(selectAdapter(const QString&)));	eh = NULL;	scanres = NULL;	udr = NULL;	ctrl_iface = NULL;	ctrl_conn = NULL;	monitor_conn = NULL;	msgNotifier = NULL;	ctrl_iface_dir = strdup("/var/run/wpa_supplicant");	parse_argv();	textStatus->setText("connecting to wpa_supplicant");	timer = new QTimer(this);	connect(timer, SIGNAL(timeout()), SLOT(ping()));	timer->start(1000, FALSE);	if (openCtrlConnection(ctrl_iface) < 0) {		printf("Failed to open control connection to "		       "wpa_supplicant.\n");	}	updateStatus();	networkMayHaveChanged = true;	updateNetworks();}WpaGui::~WpaGui(){	delete msgNotifier;	if (monitor_conn) {		wpa_ctrl_detach(monitor_conn);		wpa_ctrl_close(monitor_conn);		monitor_conn = NULL;	}	if (ctrl_conn) {		wpa_ctrl_close(ctrl_conn);		ctrl_conn = NULL;	}	if (eh) {		eh->close();		delete eh;		eh = NULL;	}	if (scanres) {		scanres->close();		delete scanres;		scanres = NULL;	}	if (udr) {		udr->close();		delete udr;		udr = NULL;	}	free(ctrl_iface);	ctrl_iface = NULL;	free(ctrl_iface_dir);	ctrl_iface_dir = NULL;}void WpaGui::languageChange(){	retranslateUi(this);}void WpaGui::parse_argv(){	int c;	for (;;) {		c = getopt(qApp->argc(), qApp->argv(), "i:p:");		if (c < 0)			break;		switch (c) {		case 'i':			free(ctrl_iface);			ctrl_iface = strdup(optarg);			break;		case 'p':			free(ctrl_iface_dir);			ctrl_iface_dir = strdup(optarg);			break;		}	}}int WpaGui::openCtrlConnection(const char *ifname){	char *cfile;	int flen;	char buf[2048], *pos, *pos2;	size_t len;	if (ifname) {		if (ifname != ctrl_iface) {			free(ctrl_iface);			ctrl_iface = strdup(ifname);		}	} else {#ifdef CONFIG_CTRL_IFACE_UDP		free(ctrl_iface);		ctrl_iface = strdup("udp");#endif /* CONFIG_CTRL_IFACE_UDP */#ifdef CONFIG_CTRL_IFACE_UNIX		struct dirent *dent;		DIR *dir = opendir(ctrl_iface_dir);		free(ctrl_iface);		ctrl_iface = NULL;		if (dir) {			while ((dent = readdir(dir))) {#ifdef _DIRENT_HAVE_D_TYPE				/* Skip the file if it is not a socket.				 * Also accept DT_UNKNOWN (0) in case				 * the C library or underlying file				 * system does not support d_type. */				if (dent->d_type != DT_SOCK &&				    dent->d_type != DT_UNKNOWN)					continue;#endif /* _DIRENT_HAVE_D_TYPE */				if (strcmp(dent->d_name, ".") == 0 ||				    strcmp(dent->d_name, "..") == 0)					continue;				printf("Selected interface '%s'\n",				       dent->d_name);				ctrl_iface = strdup(dent->d_name);				break;			}			closedir(dir);		}#endif /* CONFIG_CTRL_IFACE_UNIX */#ifdef CONFIG_CTRL_IFACE_NAMED_PIPE		struct wpa_ctrl *ctrl;		int ret;		free(ctrl_iface);		ctrl_iface = NULL;		ctrl = wpa_ctrl_open(NULL);		if (ctrl) {			len = sizeof(buf) - 1;			ret = wpa_ctrl_request(ctrl, "INTERFACES", 10, buf,					       &len, NULL);			if (ret >= 0) {				buf[len] = '\0';				pos = strchr(buf, '\n');				if (pos)					*pos = '\0';				ctrl_iface = strdup(buf);			}			wpa_ctrl_close(ctrl);		}#endif /* CONFIG_CTRL_IFACE_NAMED_PIPE */	}	if (ctrl_iface == NULL)		return -1;#ifdef CONFIG_CTRL_IFACE_UNIX	flen = strlen(ctrl_iface_dir) + strlen(ctrl_iface) + 2;	cfile = (char *) malloc(flen);	if (cfile == NULL)		return -1;	snprintf(cfile, flen, "%s/%s", ctrl_iface_dir, ctrl_iface);#else /* CONFIG_CTRL_IFACE_UNIX */	flen = strlen(ctrl_iface) + 1;	cfile = (char *) malloc(flen);	if (cfile == NULL)		return -1;	snprintf(cfile, flen, "%s", ctrl_iface);#endif /* CONFIG_CTRL_IFACE_UNIX */	if (ctrl_conn) {		wpa_ctrl_close(ctrl_conn);		ctrl_conn = NULL;	}	if (monitor_conn) {		delete msgNotifier;		msgNotifier = NULL;		wpa_ctrl_detach(monitor_conn);		wpa_ctrl_close(monitor_conn);		monitor_conn = NULL;	}	printf("Trying to connect to '%s'\n", cfile);	ctrl_conn = wpa_ctrl_open(cfile);	if (ctrl_conn == NULL) {		free(cfile);		return -1;	}	monitor_conn = wpa_ctrl_open(cfile);	free(cfile);	if (monitor_conn == NULL) {		wpa_ctrl_close(ctrl_conn);		return -1;	}	if (wpa_ctrl_attach(monitor_conn)) {		printf("Failed to attach to wpa_supplicant\n");		wpa_ctrl_close(monitor_conn);		monitor_conn = NULL;		wpa_ctrl_close(ctrl_conn);		ctrl_conn = NULL;		return -1;	}#if defined(CONFIG_CTRL_IFACE_UNIX) || defined(CONFIG_CTRL_IFACE_UDP)	msgNotifier = new QSocketNotifier(wpa_ctrl_get_fd(monitor_conn),					  QSocketNotifier::Read, this);	connect(msgNotifier, SIGNAL(activated(int)), SLOT(receiveMsgs()));#endif	adapterSelect->clear();	adapterSelect->insertItem(ctrl_iface);	adapterSelect->setCurrentItem(0);	len = sizeof(buf) - 1;	if (wpa_ctrl_request(ctrl_conn, "INTERFACES", 10, buf, &len, NULL) >=	    0) {		buf[len] = '\0';		pos = buf;		while (*pos) {			pos2 = strchr(pos, '\n');			if (pos2)				*pos2 = '\0';			if (strcmp(pos, ctrl_iface) != 0)				adapterSelect->insertItem(pos);			if (pos2)				pos = pos2 + 1;			else				break;		}	}	return 0;}static void wpa_gui_msg_cb(char *msg, size_t){	/* This should not happen anymore since two control connections are	 * used. */	printf("missed message: %s\n", msg);}int WpaGui::ctrlRequest(const char *cmd, char *buf, size_t *buflen){	int ret;	if (ctrl_conn == NULL)		return -3;	ret = wpa_ctrl_request(ctrl_conn, cmd, strlen(cmd), buf, buflen,			       wpa_gui_msg_cb);	if (ret == -2)		printf("'%s' command timed out.\n", cmd);	else if (ret < 0)		printf("'%s' command failed.\n", cmd);	return ret;}void WpaGui::updateStatus(){	char buf[2048], *start, *end, *pos;	size_t len;	pingsToStatusUpdate = 10;	len = sizeof(buf) - 1;	if (ctrl_conn == NULL || ctrlRequest("STATUS", buf, &len) < 0) {		textStatus->setText("Could not get status from "				    "wpa_supplicant");		textAuthentication->clear();		textEncryption->clear();		textSsid->clear();		textBssid->clear();		textIpAddress->clear();		return;	}	buf[len] = '\0';	bool auth_updated = false, ssid_updated = false;	bool bssid_updated = false, ipaddr_updated = false;	bool status_updated = false;	char *pairwise_cipher = NULL, *group_cipher = NULL;	start = buf;	while (*start) {		bool last = false;		end = strchr(start, '\n');		if (end == NULL) {			last = true;			end = start;			while (end[0] && end[1])				end++;		}		*end = '\0';		pos = strchr(start, '=');		if (pos) {			*pos++ = '\0';			if (strcmp(start, "bssid") == 0) {				bssid_updated = true;				textBssid->setText(pos);			} else if (strcmp(start, "ssid") == 0) {				ssid_updated = true;				textSsid->setText(pos);			} else if (strcmp(start, "ip_address") == 0) {				ipaddr_updated = true;				textIpAddress->setText(pos);			} else if (strcmp(start, "wpa_state") == 0) {				status_updated = true;				textStatus->setText(pos);			} else if (strcmp(start, "key_mgmt") == 0) {				auth_updated = true;				textAuthentication->setText(pos);				/* TODO: could add EAP status to this */			} else if (strcmp(start, "pairwise_cipher") == 0) {				pairwise_cipher = pos;			} else if (strcmp(start, "group_cipher") == 0) {				group_cipher = pos;			}		}		if (last)			break;

?? 快捷鍵說明

復制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
国产精品久久久久久久久晋中| 一区二区三区四区高清精品免费观看| 成人精品一区二区三区四区 | 捆绑调教美女网站视频一区| 国产精品亲子伦对白| 884aa四虎影成人精品一区| 成人黄色777网| 激情综合网av| 精品在线观看视频| 亚洲欧美影音先锋| 久久色成人在线| 91精品国产色综合久久ai换脸 | 91精品国产综合久久久蜜臀图片| 成人av网在线| 国产精品羞羞答答xxdd| 日韩福利电影在线| 亚洲国产精品嫩草影院| 亚洲欧美日韩成人高清在线一区| 久久女同性恋中文字幕| 日韩一级黄色片| 欧美午夜精品一区| 99久久精品国产麻豆演员表| 国产一区二区网址| 麻豆视频观看网址久久| 亚洲不卡在线观看| 亚洲大片免费看| 一区二区三区在线视频观看58| 国产精品萝li| 国产欧美精品日韩区二区麻豆天美| 日韩欧美亚洲国产精品字幕久久久| 欧美日韩中文字幕一区二区| 色视频成人在线观看免| 91在线视频官网| 91天堂素人约啪| 不卡的av电影在线观看| 粉嫩av一区二区三区| 国产一区二区免费视频| 久久99最新地址| 国产在线精品一区二区夜色| 免费人成网站在线观看欧美高清| 日韩精品欧美精品| 奇米精品一区二区三区四区| 日韩二区三区四区| 欧美日韩午夜影院| 欧美亚洲另类激情小说| 在线看国产一区二区| 在线日韩av片| 欧美高清视频www夜色资源网| 欧美视频一区在线观看| 欧美精品在线一区二区三区| 欧美日韩视频在线观看一区二区三区 | 国产美女主播视频一区| 国产在线精品不卡| 懂色av一区二区三区蜜臀| 国产aⅴ精品一区二区三区色成熟| 国产成人在线网站| 91浏览器入口在线观看| 欧美日韩一本到| 日韩精品专区在线影院重磅| 亚洲精品一区二区三区蜜桃下载 | 日本高清成人免费播放| 欧美群妇大交群中文字幕| 欧美一卡二卡在线| 久久综合久久综合久久| 欧美高清一级片在线观看| 亚洲欧美日韩国产一区二区三区| 亚洲一区二区美女| 另类的小说在线视频另类成人小视频在线| 看电视剧不卡顿的网站| 福利一区在线观看| 日本道精品一区二区三区| 欧美一区二区三区成人| 日本一区二区综合亚洲| 亚洲精品成人a在线观看| 琪琪久久久久日韩精品| 高清日韩电视剧大全免费| 91国偷自产一区二区使用方法| 欧美高清视频不卡网| 久久精品欧美日韩精品| 一区二区三区电影在线播| 久久国产免费看| 成人a免费在线看| 在线不卡欧美精品一区二区三区| 久久久不卡网国产精品二区| 一区二区三区美女视频| 精品一区二区三区不卡| 91福利区一区二区三区| 欧美电影免费观看高清完整版在| 亚洲人快播电影网| 国产一区欧美一区| 欧美日产在线观看| 欧美经典三级视频一区二区三区| 亚洲一区二区成人在线观看| 国产精品1区2区3区在线观看| 欧洲精品一区二区三区在线观看| 久久免费偷拍视频| 五月天丁香久久| 91丨九色丨蝌蚪富婆spa| 欧美一区永久视频免费观看| 中文字幕制服丝袜成人av| 蜜臀久久久久久久| 日本丰满少妇一区二区三区| 久久这里只有精品视频网| 舔着乳尖日韩一区| 色婷婷综合激情| 亚洲国产精品av| 精品中文av资源站在线观看| 欧美日韩日日夜夜| 一区二区三区四区中文字幕| 国产精品18久久久久久久久久久久 | 亚洲日本护士毛茸茸| 国产精品中文字幕日韩精品| 在线播放视频一区| 亚洲永久免费视频| aaa欧美色吧激情视频| 欧美精品一区在线观看| 日本怡春院一区二区| 欧美日韩综合色| 亚洲图片欧美视频| caoporm超碰国产精品| 国产日产欧美一区二区三区| 裸体歌舞表演一区二区| 91麻豆精品国产91久久久| 亚洲一区二区五区| 91麻豆国产精品久久| 国产精品久久久久久久久久久免费看| 国产九色sp调教91| 日韩毛片视频在线看| 丁香婷婷深情五月亚洲| 国产亚洲短视频| 国产一区视频网站| 久久精品综合网| 国产成人精品亚洲午夜麻豆| 久久久久久电影| 国产乱妇无码大片在线观看| 久久亚洲精品国产精品紫薇| 久久精品999| 久久精品视频在线看| 国产91色综合久久免费分享| 国产拍揄自揄精品视频麻豆| 国产成人免费视频网站高清观看视频| 久久精品夜夜夜夜久久| 国产成人欧美日韩在线电影| 亚洲国产高清不卡| 不卡一区在线观看| 亚洲视频中文字幕| 91久久精品一区二区三| 夜夜揉揉日日人人青青一国产精品| 91福利精品第一导航| 石原莉奈在线亚洲三区| 日韩亚洲欧美在线观看| 韩日av一区二区| 国产精品网站在线观看| 色香蕉成人二区免费| 亚洲国产精品一区二区www| 欧美日韩三级一区| 九九精品视频在线看| 国产欧美精品一区| 日本韩国精品一区二区在线观看| 亚洲国产视频一区二区| 欧美一区二区三区在| 国产很黄免费观看久久| 亚洲天堂2016| 69成人精品免费视频| 韩国毛片一区二区三区| **欧美大码日韩| 欧美日韩美少妇| 国产一区二区电影| 中文字幕一区不卡| 欧美精三区欧美精三区| 国产一区二区视频在线| 亚洲激情av在线| 欧美不卡在线视频| 成人免费视频网站在线观看| 亚洲精品久久久蜜桃| 欧美不卡视频一区| gogo大胆日本视频一区| 日韩国产高清影视| 国产欧美日韩中文久久| 在线观看亚洲a| 国产一区二区网址| 亚洲电影一区二区| 国产欧美综合色| 91麻豆精品91久久久久同性| 懂色av一区二区三区蜜臀| 婷婷开心激情综合| 国产精品沙发午睡系列990531| 欧美色视频一区| 东方欧美亚洲色图在线| 日韩电影免费一区| 日韩毛片视频在线看| 欧美精品一区视频| 欧美午夜精品一区二区三区 | 91原创在线视频| 国产一区中文字幕| 日韩电影在线一区二区三区| 国产精品不卡在线| www国产亚洲精品久久麻豆| 欧美体内she精视频| 99久久久国产精品免费蜜臀|