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

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

?? ndiswrapper

?? 改文件可以安裝無線網卡在linux下的驅動,大家可以在網站上查找一下用法
??
?? 第 1 頁 / 共 2 頁
字號:
#!/usr/bin/perl#/*#*  This program is free software; you can redistribute it and/or modify#*  it under the terms of the GNU General Public License as published by#*  the Free Software Foundation; either version 2 of the License, or#*  (at your option) any later version.#*#*  This program is distributed in the hope that it will be useful,#*  but WITHOUT ANY WARRANTY; without even the implied warranty of#*  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the#*  GNU General Public License for more details.#*#*/use strict;use Fcntl ':mode';my @sections;my %strings;my %version;my $driver_name;my $confdir = "/etc/ndiswrapper";my $hotplug_conf = "modules.ndiswrapper";my $instdir;my %fuzzlist;my $bustype;#Blacklist of files not to install.my @copy_blacklist;#Fixup list for parameters. my %param_fixlist = ("EnableRadio|0" => "EnableRadio|1",		     "IBSSGMode|0" => "IBSSGMode|2",                     "PrivacyMode|0" => "PrivacyMode|2");if(@ARGV < 1){	usage();	exit();}my $res;if($ARGV[0] eq "-i" and @ARGV == 2){	$res = install($ARGV[1]);}elsif($ARGV[0] eq "-d" and @ARGV == 3){	$res = devid_driver($ARGV[1], $ARGV[2]);}elsif($ARGV[0] eq "-e" and @ARGV == 2){	$res = remove($ARGV[1]);}elsif($ARGV[0] eq "-l" and @ARGV == 1){	$res = list();}elsif($ARGV[0] eq "-m" and @ARGV == 1){	$res = modconf();}elsif($ARGV[0] eq "-hotplug" and @ARGV == 1){	$res = hotplug_conf();}else{	usage();	exit();}exit $res;sub usage{	print "Usage: ndiswrapper OPTION\n".	      "\n".	      "Manage ndis drivers for ndiswrapper.\n".	      "-i inffile        Install driver described by 'inffile'\n".	      "-d devid driver   Use installed 'driver' for 'devid'\n".	      "-e driver         Remove 'driver'\n".	      "-l                List installed drivers\n".	      "-m                Write configuration for modprobe\n".		"-hotplug          (Re)Generate hotplug information\n".		"\n\nwhere 'devid' is either PCIID or USBID of the form ".		"XXXX:XXXX\n";	}sub install{	my $inf = shift;	$driver_name = lc($inf);	$driver_name =~ s/\.inf//;	$driver_name = `basename $driver_name`;	$instdir = `dirname $inf`;	chomp($instdir);	chomp($driver_name);	if(isInstalled($driver_name))	{		print "$driver_name is already installed. Use -e to remove it\n";		return -1;	}		if(!opendir(DH, $confdir))	{		mkdir($confdir);	}	else	{		close(DH);	}		print "Installing $driver_name\n";	if(!mkdir("$confdir/$driver_name"))	{		print "Unable to create directory $confdir/$driver_name. Make sure you are running as root\n";		return -1;	}		loadinf($inf);	initStrings(); 	parseVersion();	`cp -u $inf $confdir/$driver_name/$driver_name.inf`;		processPCIFuzz();}sub isInstalled{	my $installed;	my $name = shift;	my $mode = (stat("$confdir"))[2];	if (!S_ISDIR($mode)) {	  return 0;	}	open(LS, "ls -1 $confdir|");	while(my $f = <LS>)	{		chomp($f);		$mode = (stat("$confdir/$f"))[2];		if(S_ISDIR($mode) and $name eq $f)		{			$installed = 1;		}			}	close(LS);		return $installed;}sub remove{	my $name = shift;	if(!isInstalled($name))	{		print "Driver $name is not installed. Use -l to list installed drivers\n";		return;	}	`rm -rf $confdir/$name`;}sub devid_driver{	my $devid = shift;	my $driver = shift;	my $done = 0;	$devid = uc($devid);	if (!($devid =~ /[0-9A-Z]{4}:[0-9A-Z]{4}/))	{		print "'$devid' is not a valid device ID\n";		return;	}	open(LS, "ls -1 $confdir/$driver/ |");	while(my $f = <LS>)	{		chomp($f);		if ($f =~ /\.([05]).conf$/)		{			`ln -s $f $confdir/$driver/$devid.$1.conf`;			print "Driver '$driver' is used for '$devid'\n";			$done = 1;			last;		}	}	close(LS);		if ($done == 0)	{		print "Driver '$driver' is not installed properly!\n";	}	return;}sub hotplug_conf{	my $vendor;	my $device;	my $subvendor;	my $subdevice;	if(!open(CONF, ">$confdir/$hotplug_conf")) {		print "Unable to create file hotplug modules configuration file";		return -1;	}	printf CONF "# pci module         vendor     device     subvendor  subdevice  class      class_mask driver_data";	open(LS, "ls -1 $confdir|");	while(my $driver = <LS>) {		chomp($driver);		my $mode = (stat("$confdir/$driver"))[2];		if(S_ISDIR($mode)) {			open(LS2, "ls -1 $confdir/$driver/ |");			while (my $file = <LS2>) {				chomp ($file);				if ($file =~ s/.conf//) {					$file = lc($file);					if($file =~ /(.{4}):(.{4}):(.{4}):(.{4})/) {						$vendor = "0x0000$1";						$device = "0x0000$2";						$subvendor = "0x0000$3";						$subdevice = "0x0000$4";					}					elsif($file =~ /(.{4}):(.{4})/) {						$vendor = "0x0000$1";						$device = "0x0000$2";						$subvendor = "0xffffffff";						$subdevice = "0xffffffff";					}					printf CONF "ndiswrapper    $vendor $device $subvendor $subdevice 0x00000000 0x00000000 0x0\n";				}			}			close(LS2);		}	}	close(CONF);	close(LS);	return 0;}sub list{	my $s;	my $cards = getPresentCards();	if(!$cards)	{		print "WARNING: Cannot locate lspci and lsusb. Unable to see if hardware is present.\n";	}	my $mode = (stat("$confdir"))[2];	if (!S_ISDIR($mode)) {	  print "No drivers installed\n$s";	  return;	}	open(LS, "ls -1 $confdir|");	while(my $f = <LS>)	{		chomp($f);		my $mode = (stat("$confdir/$f"))[2];		if(S_ISDIR($mode))		{			$s .= "$f\t".installStatus($cards, $f)."\n";		}	}	if($s)	{		print "Installed ndis drivers:\n$s";	}	else	{		print "No drivers installed\n$s";	}	close(LS);	}sub modconf{	my $alias = 0;	my $err = 0;	my @modprobe = ("/sbin/modprobe", "/usr/sbin/modprobe", "modprobe");	my $ok = 0;	for(my $i = 0; $i < @modprobe; $i++)	{		if(open(MODPROBE, "$modprobe[$i] -c|"))		{			$ok = 1;			$i = @modprobe;		}	}	if(!$ok)	{		return -1;	}	while(my $line = <MODPROBE>)	{		if($line =~ /^alias\s.+\sndiswrapper/)		{			print "modprobe config already contains alias directive\n\n";			$alias = 1;		}		elsif($line =~ /^install\s.*ndiswrapper/)		{			print "You should not need an install directive in you modprobe config file.\n";			modconf_err($line);			$err = 1;		}		elsif($line =~ /^post-install\s+ndiswrapper/)		{			print "You should not need a post-install directive in you modprobe config file.\n";			modconf_err($line);			$err = 1;		}	}	close(MODPROBE);	if($alias)	{		return;	}		my $v =  `uname -r`;		$v =~ /(\d+)\.(\d+)\.(\d+)/;	my $major = $1;	my $minor = $2;	my $rev = $3;		my $modconf;	if($minor > 4)	{		if(-d "/etc/modprobe.d")		{			$modconf = "/etc/modprobe.d/ndiswrapper" 		}		else		{			$modconf = "/etc/modprobe.conf" 		}	}	else	{		if(-d "/etc/modutils")		{			$modconf = "/etc/modutils/ndiswrapper";		}		else		{			$modconf = "/etc/modules.conf";		}	}		print "Adding \"alias wlan0 ndiswrapper\" to $modconf\n";	system("echo \"alias wlan0 ndiswrapper\" >>$modconf");	    	if(-x "/sbin/update-modules")	{		system("/sbin/update-modules");	}}sub modconf_err{	my $line = shift;	print "Please remove the line saying:\n\n";	print "$line\n";	print "unless you are 100% sure of what you are doing.\n";			}sub getPresentCards{#01:00.0 Class 0300: 1002:4c66 (rev 01)#        Subsystem: 1043:1732	my @cards;		my @lspci = ("/sbin/lspci", "/usr/sbin/lspci", "lspci");	for(my $i = 0; $i < @lspci; $i++)	{		if(open(LSPCI, "$lspci[$i] -vn|"))		{			my $card;			while(my $line = <LSPCI>)			{				if($line =~ /^[0-9]+.*:\s(.{4}):(.{4}).*/)				{					my %c;					$card = \%c;					$card->{vendor} = $1;					$card->{device} = $2;				}				if($line =~ /.+Subsystem:\s*(.{4}):(.{4}).*/)				{					$card->{subvendor} = $1;					$card->{subdevice} = $2;					push(@cards, $card);				}								}			last;		}	}	my @lsusb = ("/sbin/lsusb", "/usr/sbin/lsusb", "lsusb");	for(my $i = 0; $i < @lsusb; $i++)	{		if(open(LSUSB, "$lsusb[$i] |"))		{			my $card;			while(my $line = <LSUSB>)			{				if($line =~ /.*: ID\s(.{4}):(.{4}).*/)				{					my %c;					$card = \%c;					$card->{vendor} = $1;					$card->{device} = $2;					push(@cards, $card);				}			}			last;		}	}	return \@cards;}sub installStatus{	my $cards = shift; 	my $driver = shift;		my $sys = 0;	my $conf = 0;	my $inf = 0;	if(!$cards)	{		return;	}	open(LS2, "ls -1 $confdir/$driver|");	while(my $device = <LS2>)	{		chomp($device);		my $d = $device;		$sys = 1 if $d =~ /\.sys$/;		$inf = 1 if $d =~ /\.inf$/;		$conf = 1 if $conf eq 0 and $d =~ /\.conf$/;		$d =~ s/.conf//;		if($d =~ /(.{4}):(.{4}):(.{4}):(.{4})/)		{			for(my $i = 0; $$cards[$i]; $i++)			{				if($$cards[$i]->{vendor} == $1 and				   $$cards[$i]->{device} == $2 and				   $$cards[$i]->{subvendor} == $3 and				   $$cards[$i]->{subdevice} == $4)				{					$conf = 3;					last;				}			}					}		elsif($d =~ /(.{4}):(.{4})/)		{			for(my $i = 0; $$cards[$i]; $i++)			{				if($$cards[$i]->{vendor} == $1 and				   $$cards[$i]->{device} == $2)				{					my $mode = (lstat("$confdir/$driver/$device"))[2];					if(S_ISLNK($mode))					{						$conf = 2;					}					else					{						$conf = 3;					}					last;				}			}		}	}	close(LS2);		my $ret;	if ($sys eq 0 || $inf eq 0 || $conf eq 0)	{		$ret = "invalid driver!";	}	else	{		$ret = $ret . "driver present " if $conf eq 1;		$ret = $ret . "driver present, hardware present " if			$conf eq 2;		$ret = $ret . "driver present, hardware present " if			$conf eq 3;	}	return $ret;}## Create symlink for PCI general device if not existing#sub processPCIFuzz{	my @devs = keys(%fuzzlist);	for(my $i = 0; $i < @devs; $i++)	{		my $dev = $devs[$i];		if($dev ne $fuzzlist{$dev})		{			`ln -s $confdir/$driver_name/$fuzzlist{$dev}.$bustype.conf $confdir/$driver_name/$dev.$bustype.conf`;		}	}}## Collect a list of supported PCI-Id's so we can add fuzzy entries if needed.#sub addPCIFuzzEntry{	my $vendor = shift;	my $device = shift;	my $subvendor = shift;	my $subdevice = shift;	my $s = "$vendor:$device";	if(!$subvendor or !$fuzzlist{$s})	{		my $s2 = $s;		if($subvendor)		{			$s2 .= ":$subvendor:$subdevice";		}		$fuzzlist{$s} = $s2;	}}sub parseVersion{  my $s = getSection("version");  if(!$s)    {      return;    }  my @lines = split("\n", $s->{data});  for(my $i = 0; $i < @lines; $i++)    {      (my $key, my $val) = getKeyVal($lines[$i]);      if($key eq "Provider")	{	  $val =~ s/"(.+)"/$1/; 	  $version{$key} = $val;	}      if($key eq "DriverVer")	{	  $val =~ s/"(.+)"/$1/; 	  $version{$key} = $val;	}    }  parseManu();}## Parse the [Manufacturer] section.#sub parseManu{

?? 快捷鍵說明

復制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
亚洲精品一区二区三区99| 国产成a人亚洲精| 欧美日韩国产高清一区二区三区 | 亚洲线精品一区二区三区八戒| caoporen国产精品视频| 亚洲视频一二区| 在线一区二区三区| 日韩av中文在线观看| 精品久久久久久无| 成人国产精品免费网站| 亚洲精品中文在线影院| 欧美久久久久久久久久| 麻豆精品一区二区| 国产精品青草久久| 日韩欧美电影一二三| 国产露脸91国语对白| 亚洲欧洲精品一区二区三区不卡| 色婷婷激情一区二区三区| 婷婷国产v国产偷v亚洲高清| 精品国产99国产精品| 北条麻妃国产九九精品视频| 亚洲福利一区二区三区| 欧美sm美女调教| 99国内精品久久| 日韩高清不卡一区二区三区| 国产无人区一区二区三区| 在线免费一区三区| 麻豆精品蜜桃视频网站| 国产精品视频免费| 欧美日韩高清一区二区不卡| 国内精品视频666| 亚洲精品高清在线| 久久理论电影网| 在线看一区二区| 黄页视频在线91| 亚洲一区二区三区视频在线 | 99久久久久久| 麻豆高清免费国产一区| 亚洲色图自拍偷拍美腿丝袜制服诱惑麻豆 | 99re亚洲国产精品| 久久国产精品99久久久久久老狼| 国产精品初高中害羞小美女文| 91精品国产91久久久久久最新毛片| 成人性生交大片免费看在线播放| 五月婷婷激情综合网| 免费欧美在线视频| 中文字幕亚洲一区二区va在线| 91精品国产综合久久精品| 91亚洲永久精品| 国产激情视频一区二区在线观看 | 国产精品一区二区在线播放| 婷婷综合另类小说色区| ...xxx性欧美| 久久精品人人做人人综合| 91超碰这里只有精品国产| aaa欧美色吧激情视频| 国产成人在线观看| 激情综合色综合久久综合| 日韩有码一区二区三区| 亚洲色图丝袜美腿| 中文字幕色av一区二区三区| 国产婷婷一区二区| 26uuu亚洲综合色欧美| 日韩欧美专区在线| 欧美精品色综合| 欧美日韩精品一区二区三区蜜桃| 99久久综合国产精品| 成人在线一区二区三区| 国产精品一区二区免费不卡| 国内精品伊人久久久久av一坑| 蜜臀久久99精品久久久久久9| 午夜亚洲福利老司机| 亚洲国产欧美日韩另类综合 | 久久影院午夜片一区| 欧美一区二区三区啪啪| 欧美丰满一区二区免费视频 | 99精品1区2区| 99久久伊人久久99| 97久久精品人人做人人爽 | 97超碰欧美中文字幕| www.亚洲精品| 91在线视频免费91| 色噜噜狠狠成人中文综合| 在线亚洲一区观看| 久久婷婷一区二区三区| 亚洲精品一区在线观看| 国产午夜亚洲精品羞羞网站| 国产亚洲精品7777| 自拍偷拍亚洲欧美日韩| 综合久久给合久久狠狠狠97色| 亚洲精品视频免费观看| 亚洲黄一区二区三区| 亚洲午夜精品17c| 奇米在线7777在线精品| 国产在线视频不卡二| 成人黄色在线视频| 色综合色狠狠综合色| 欧美日韩中文字幕一区| 日韩天堂在线观看| 国产性色一区二区| 一区二区三区高清| 青青青爽久久午夜综合久久午夜| 久久se精品一区二区| 成人午夜私人影院| 在线视频一区二区三| 日韩欧美中文字幕制服| 欧美国产日韩一二三区| 一区二区三区影院| 蜜臀久久99精品久久久久久9| 国产一区二区在线观看免费| 97精品国产露脸对白| 日韩小视频在线观看专区| 国产精品日韩成人| 天堂成人国产精品一区| 国产精品影视网| 欧美在线免费观看视频| 久久久久久9999| 亚洲午夜久久久久久久久电影网 | 欧美中文字幕一区| 久久久久高清精品| 亚洲国产欧美日韩另类综合| 国产伦理精品不卡| 欧美日韩日日夜夜| 亚洲国产精品精华液2区45| 午夜伦欧美伦电影理论片| 国产a视频精品免费观看| 欧美日韩国产综合一区二区| 国产精品全国免费观看高清 | 亚洲日本va在线观看| 精品一区二区日韩| 精品卡一卡二卡三卡四在线| 亚洲精品成人精品456| 国产精品888| 日韩一区国产二区欧美三区| 亚洲欧洲国产专区| 国产乱码一区二区三区| 欧美猛男男办公室激情| 亚洲欧美自拍偷拍色图| 国产剧情一区二区三区| 91超碰这里只有精品国产| 亚洲精品国久久99热| 国产ts人妖一区二区| 欧美岛国在线观看| 婷婷六月综合亚洲| 在线视频亚洲一区| 一色屋精品亚洲香蕉网站| 国产精品77777| 精品国产乱码久久久久久1区2区| 亚洲电影一级黄| 91视频精品在这里| 国产精品污污网站在线观看| 国产一区二区精品久久99| 日韩欧美国产综合| 免费视频最近日韩| 欧美日韩国产片| 亚洲一区视频在线观看视频| av资源网一区| 中文字幕一区二区三区在线不卡 | 久久女同精品一区二区| 精品一区二区在线观看| 欧美一卡二卡三卡| 日韩中文字幕不卡| 欧美精品1区2区| 石原莉奈在线亚洲二区| 欧美性色综合网| 亚洲一级不卡视频| 欧美日韩一区在线| 亚洲一区二区三区中文字幕在线| 色婷婷综合五月| 亚洲一区精品在线| 欧美在线视频日韩| 五月天国产精品| 在线综合+亚洲+欧美中文字幕| 视频一区在线播放| 欧美一级黄色片| 国产一区在线观看视频| 国产亚洲欧美在线| 99久久99久久精品免费看蜜桃| 1024国产精品| 精品黑人一区二区三区久久 | 国产91精品一区二区| 中文字幕不卡的av| 97se亚洲国产综合在线| 亚洲国产精品一区二区久久| 欧美老人xxxx18| 韩国v欧美v亚洲v日本v| 中文字幕电影一区| 欧美曰成人黄网| 免费一级片91| 中文字幕免费不卡| 欧美午夜理伦三级在线观看| 日韩国产欧美一区二区三区| 久久免费美女视频| 99久精品国产| 日韩和欧美一区二区三区| 欧美精品一区二区久久婷婷| 成a人片亚洲日本久久| 亚洲成av人片一区二区三区| 精品国产一区二区三区av性色| 成人做爰69片免费看网站|