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

? 歡迎來到蟲蟲下載站! | ?? 資源下載 ?? 資源專輯 ?? 關(guān)于我們
? 蟲蟲下載站

?? autousb.c

?? 插上USB之后,該程序可以將USB自動(dòng)mount上,拔下之后,該程序也可以自動(dòng)umount
?? C
字號(hào):
/*    autousb.c: mount usb disk automaticly   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;*/#define _GNU_SOURCE#include <stdio.h>#include <stdlib.h>#include <fcntl.h>#include <unistd.h>#include <sys/types.h>#include <sys/wait.h>#include <sys/stat.h>#include <string.h>#include <signal.h>#include <sys/param.h>#include <stdio.h>#include "autousb.h"extern int get_par(char *dev, struct par_info *p);static void handler(int sig, siginfo_t *si, void *data);static int write_fstab(char *dev, char *mount_point, char *systype);static int _mount_dev(char *mount_point);static int chk_usb_attached(char *file_name);const char * sysname(unsigned char type);int mount_dev(int num);struct systypes {    unsigned char type;    char *name;} sys_types[] = {    {0, "auto"},    {6, "vfat"},    {0x53, "ext2"}};int main(){	fprintf(stderr,"Leo USB-Auto File Manage Tool\n");	struct sigaction act;	int fd;		act.sa_sigaction = handler;	sigemptyset(&act.sa_mask);	act.sa_flags = SA_SIGINFO;	sigaction(SIGRTMIN, &act, NULL);	while(1){		DBG("start pause...\n");		pause();	}		return 0;}//handler temp use beginstatic void handler(int sig, siginfo_t *si, void *data){		char buf[] = "ls /proc/scsi/";	FILE *ls;	char *line = NULL;	int len;	ls = popen(buf, "r");	if (!ls){		perror("popen");		exit(-1);	}	while(getline(&line, &len, ls) >= 0){		if (strstr(line, "usb-storage-"))			chk_usb_attached(line);//if we use ls /proc/scis,look at usb storage			//we will call function: chk_usb_attached	}	pclose(ls);}//test ,is there is usb disk plug instatic int chk_usb_attached(char *file_name){//the file_name is the result of  "ls /proc/scsi/"	char path[32], path_file[32];	int fd;	char line[1024];	int i;	int j;		for (i = 0; file_name[i] != '\n'; i++){		path[i] = file_name[i];	}	path[i] = '\0';	DBG("path:%s\n", path);	i = atoi(&path[12]);	sprintf(path_file, "/proc/scsi/usb-storage-%d/%d", i, i);	fd = open(path_file, O_RDONLY);	if (fd < 0 ){		DBG("fopen error :%d\n", __LINE__);		exit(-1);	}	for (j=0; j<1024; j++)		line[j] = '0';	if (read(fd, line, 1024) > 0){		//DBG("%s \n", line);		if (strstr(line, "Attached: Yes")){			DBG("Attached: Yes\n");			mount_dev(i);		}	}	close(fd);	return 0;	}static int write_fstab(char *dev, char *mount_point, char *systype){	FILE *fp_fstab;	char *line = NULL;	int len = 0;	DBG("starting %12s", __FUNCTION__);	if (fp_fstab = fopen("/etc/fstab", "a+")){		while(getline(&line, &len, fp_fstab) >=0){			if (strstr(line, dev))				goto out;		}	}	else		exit(-1);	mkdir(mount_point, 666);	fprintf(fp_fstab, "%-23s %-23s %-7s %-15s %d %d\n", dev, mount_point, systype, "noauto,kudzu,owner", 0, 0);	out:	fclose(fp_fstab);	DBG("  ok\n");	return 0;}int mount_dev(int num){	char dev[12];	FILE *fp_mnt;	char *line = NULL;	char mount_point[128];	int len;	int i = 0, j;	struct par_info par[64];	//memset(dev,0, 12);	for (j=0; j<12; j++)		dev[j] = '0';	memset(mount_point, 0, 128);	sprintf(dev, "/dev/sd%c", 'a'+num);	DBG("starting %12s num: %d\n", __FUNCTION__, num);        if (get_par(dev, par) < 0)		exit(-1);	if (par[0].type == 0){		goto nopartitions;	}	        while (par[i].type != 0){                memcpy(dev, par[i++].dev, 12);	nopartitions:                sprintf(mount_point, "/mnt%s",&(dev[4]));		if (fp_mnt = fopen("/proc/mounts", "r")){			while (getline(&line, &len, fp_mnt) >= 0) {							if (strstr(line, dev))					goto mounted;			}		}		else			exit(-1);		DBG("dev: %s, mount_point: %s\n", dev, mount_point);		write_fstab(dev, mount_point, sysname(par[i].type));		_mount_dev(mount_point);				mounted:		fclose(fp_mnt);	}	free(line);	return 0;}	static int _mount_dev(char *mount_point){	char *argv[] = {"/bin/mount", NULL, NULL};	pid_t pid;	//char tmp[64];	//int code = 950;	int status;	//FILE *fp_cfg;        DBG("starting %12s", __FUNCTION__);        if (mount_point == NULL)                return 1;	argv[1] = mount_point;	if (!(pid = fork())){		execv(argv[0], argv);		_exit(1);	}	waitpid(pid, &status, 0);	if (!WIFEXITED(status) || (WEXITSTATUS(status))){		DBG("  failed\n");		return (-1);	}	DBG("  ok\n");	return 0;}const char * sysname(unsigned char type){    struct systypes *s;                                                                                                                                 for (s = sys_types; s - sys_types < SIZE(sys_types); s++)      if (s->type == type)        return s->name;    return "auto";}	

?? 快捷鍵說明

復(fù)制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號(hào) Ctrl + =
減小字號(hào) Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
久久免费看少妇高潮| 欧美一区二区视频免费观看| 91精品国产综合久久精品app| 精品成a人在线观看| 一区二区三区中文在线| 国产一区美女在线| 欧美一区午夜视频在线观看| 中文字幕视频一区二区三区久| 五月婷婷色综合| 91国在线观看| 国产精品久久夜| 国产最新精品免费| 欧美一级视频精品观看| 亚洲影视在线播放| 91视频一区二区| 欧美激情中文不卡| 国产成人免费在线观看| 精品欧美一区二区久久| 日韩黄色免费网站| 欧美日韩一区三区| 亚洲靠逼com| 91香蕉视频在线| 中文字幕一区二区三区视频| 国产成人免费视| 久久美女艺术照精彩视频福利播放| 日韩国产精品久久久久久亚洲| 欧美中文一区二区三区| 亚洲精品乱码久久久久久黑人| 国产白丝精品91爽爽久久| 国产亚洲精品福利| 国产91在线观看| 国产精品久99| 9人人澡人人爽人人精品| 国产精品免费观看视频| 波多野结衣视频一区| 中文字幕在线一区| 91丝袜美女网| 一区二区三区日韩欧美精品| 欧美丝袜自拍制服另类| 日韩精品一二区| 欧美一区二区精品在线| 麻豆免费看一区二区三区| 日韩欧美电影一区| 国产激情一区二区三区桃花岛亚洲| 久久精品欧美一区二区三区不卡 | 欧美一区二区免费视频| 蜜臀av一区二区三区| 精品日韩一区二区三区免费视频| 久草在线在线精品观看| 国产婷婷一区二区| 97久久精品人人做人人爽50路| 中文字幕一区二区在线播放| 色伊人久久综合中文字幕| 亚洲一区二区三区中文字幕| 日韩一区二区在线观看| 粉嫩蜜臀av国产精品网站| 一区二区三区在线免费观看| 色香蕉久久蜜桃| 日本在线不卡一区| 国产精品视频观看| 777久久久精品| 大美女一区二区三区| 亚洲一区在线播放| 亚洲精品一区二区三区精华液 | 国产精品一区免费视频| 亚洲欧洲av在线| 56国语精品自产拍在线观看| 国产精品一区专区| 亚洲综合区在线| 久久综合久久综合亚洲| 在线中文字幕一区二区| 国产精品一卡二卡在线观看| 亚洲男人天堂av网| 欧美不卡视频一区| 欧美私人免费视频| 成人综合在线网站| 丝袜美腿高跟呻吟高潮一区| 国产精品女同一区二区三区| 欧美二区乱c少妇| 成人av高清在线| 人禽交欧美网站| 亚洲九九爱视频| 久久久精品免费免费| 欧美日韩激情在线| 一本高清dvd不卡在线观看 | 欧美一区二区免费| 91在线免费视频观看| 国产在线视视频有精品| 石原莉奈一区二区三区在线观看| 国产精品家庭影院| 国产亚洲一区二区三区四区| 制服丝袜中文字幕亚洲| 91黄色免费版| 色菇凉天天综合网| 成人网在线免费视频| 国精产品一区一区三区mba桃花 | 成人伦理片在线| 精品一区二区三区不卡 | 精品区一区二区| 欧美区在线观看| 欧美在线制服丝袜| 色综合天天在线| av在线播放不卡| 99视频热这里只有精品免费| 国产精品自产自拍| 国产一区中文字幕| 国产在线精品一区二区不卡了| 日本亚洲视频在线| 日韩中文字幕麻豆| 日韩精品91亚洲二区在线观看| 亚洲一区国产视频| 一区二区三区蜜桃网| 一区二区三区在线视频观看| 亚洲激情自拍偷拍| 亚洲一区二区三区四区五区中文 | 91国偷自产一区二区开放时间 | www.亚洲色图| 99精品国产视频| 一本一本大道香蕉久在线精品| 91影院在线观看| 91麻豆视频网站| 91首页免费视频| 欧美性极品少妇| 9191久久久久久久久久久| 91精品国产欧美一区二区18| 777午夜精品免费视频| 欧美不卡视频一区| 久久精品人人做人人综合| 亚洲欧美综合网| 亚洲一区二区美女| 日日欢夜夜爽一区| 精东粉嫩av免费一区二区三区| 国产乱码精品一区二区三区忘忧草 | 成人小视频免费观看| www.成人在线| 欧美乱熟臀69xxxxxx| 精品免费国产一区二区三区四区| 国产情人综合久久777777| 综合欧美一区二区三区| 肉丝袜脚交视频一区二区| 美女久久久精品| 成人精品视频.| 欧美日韩亚洲丝袜制服| 久久一区二区三区四区| 亚洲欧洲精品一区二区三区| 亚洲电影中文字幕在线观看| 久久99精品久久久久久国产越南| 成人黄色电影在线| 欧美二区乱c少妇| 中文字幕高清一区| 天天射综合影视| 成人av第一页| 日韩一区二区三区视频| 亚洲视频一二三区| 美美哒免费高清在线观看视频一区二区| 国产精品66部| 欧美日韩国产乱码电影| 亚洲国产成人午夜在线一区| 婷婷丁香激情综合| 99精品国产99久久久久久白柏| 欧美性大战久久久| 国产精品青草久久| 蜜臀国产一区二区三区在线播放| 色天天综合久久久久综合片| 久久综合九色综合欧美就去吻| 一区二区三区小说| www.日韩精品| 久久女同互慰一区二区三区| 亚洲成人福利片| av高清久久久| 亚洲精品一区二区三区影院| 午夜不卡av在线| 色婷婷av一区二区三区大白胸 | 欧美一区二区视频观看视频| 综合久久综合久久| 国产成人无遮挡在线视频| 欧美一区二区三区公司| 亚洲一区二区三区爽爽爽爽爽| 成人av在线影院| 久久网这里都是精品| 奇米影视一区二区三区小说| 色哦色哦哦色天天综合| 国产精品二三区| 成人av网在线| 亚洲视频1区2区| 成人av在线影院| 综合亚洲深深色噜噜狠狠网站| 福利一区福利二区| 中文字幕不卡在线播放| 激情五月播播久久久精品| 日韩欧美国产午夜精品| 日韩成人dvd| 日韩欧美中文字幕公布| 日韩高清一区在线| 91精品综合久久久久久| 午夜久久久久久电影| 欧美老人xxxx18| 午夜不卡在线视频| 91精品国产综合久久福利软件 | 日韩一区二区免费视频|