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

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

?? module_local.c

?? Save you music Database in MySQL
?? C
字號:
/***************************************************************************** * MusicDB - Copyright Eric Lorimer (8/02) * * This file implements a MusicDB module to serve local files from a database * * see the file README for some explanation of how it works. *   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.      You should have received a copy of the GNU General Public License   along with this program; if not, write to the Free Software   Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. * * **************************************************************************/#include "config.h"#include <stdio.h>#include <sys/stat.h>#include <utime.h>#include <dirent.h>#include <fcntl.h>#include <errno.h>#include <string.h>#include <includes.h>#include <vfs.h>#include "mysql.h"#include "shortcut.h"#include "musicdb.h"struct file {	int usage;	int systemfd;};static struct file fd_table[1024];static char prefix[] = "/home/music/";/**************************************************************************** * int module_init() * * clear out the file descriptor table * *************************************************************************/int module_init(){	int i;	for (i=0; i < 1024; i++)		fd_table[i].usage = 0;	return 1;}/**************************************************************************** * int module_open() * * initialize a file descriptor and return a pointer from the given entry * *************************************************************************/int module_open(struct song_entry *data){	int fd;	char realpath[256];	for (fd = 1; fd < 1024 && fd_table[fd].usage; fd++)			;	DEBUG(1, ("module_open: fname = %s, nfields = %d\n", data->fname, data->nfields));	snprintf(realpath, 256, "%s%s", prefix, data->fields[0]);	fd_table[fd].systemfd = open(realpath, O_RDONLY);	DEBUG(1, ("module_open: open(%s) returned %d\n", realpath, fd_table[fd].systemfd));	if ( fd_table[fd].systemfd == 0 )		return 0;	fd_table[fd].usage = 1;	return fd;}/**************************************************************************** * int module_close() * * simple; pass on to system * *************************************************************************/int module_close(int fd){	if ( fd > 0 && fd < 1024 ) {		close(fd_table[fd].systemfd);		fd_table[fd].usage = 0;	}	return 0;}/**************************************************************************** * int module_read() * * simple; pass on to local filesystem * *************************************************************************/ssize_t module_read(int fd, void *data, size_t n){	if ( fd < 0 || fd > 1024 || fd_table[fd].usage < 1 ) {		errno = EBADF;		return -1;	}	return read(fd_table[fd].systemfd, data, n);}/**************************************************************************** * int module_lseek() * * lseek the file * *************************************************************************/SMB_OFF_T module_lseek(int fd, SMB_OFF_T offset, int whence){	if ( fd < 0 || fd > 1024 || fd_table[fd].usage < 1 ) {		errno = EBADF;		return -1;	}	return lseek(fd_table[fd].systemfd, offset, whence);}/**************************************************************************** * int module_fstat() * * return stat information from an open file descriptor * *************************************************************************/int module_fstat(int fd, SMB_STRUCT_STAT *sbuf){	if ( fd < 0 || fd > 1024 || fd_table[fd].usage < 1 ) {		errno = EBADF;		return -1;	}	return fstat(fd_table[fd].systemfd, sbuf);}

?? 快捷鍵說明

復制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
亚洲在线成人精品| 久久久蜜臀国产一区二区| 国产乱理伦片在线观看夜一区| 一二三四社区欧美黄| 中文字幕一区在线观看| 日本一二三四高清不卡| 国产欧美日韩麻豆91| 日本一区二区视频在线观看| 国产日韩精品一区二区三区| 国产欧美中文在线| 欧美激情一区二区三区不卡| 亚洲国产精品t66y| 中文字幕中文字幕中文字幕亚洲无线| 中文无字幕一区二区三区| 日本一区二区三区高清不卡| 国产精品视频麻豆| 亚洲视频一二区| 亚洲一区二区视频在线| 亚洲成人www| 日本午夜一本久久久综合| 七七婷婷婷婷精品国产| 国产在线一区二区| 成人性色生活片免费看爆迷你毛片| 懂色av一区二区三区蜜臀| 99精品视频在线播放观看| 欧美性感一区二区三区| 884aa四虎影成人精品一区| 精品久久久久久久一区二区蜜臀| 国产日韩欧美a| 亚洲自拍偷拍综合| 久久99精品国产麻豆婷婷洗澡| 国产麻豆欧美日韩一区| 91年精品国产| 欧美大片在线观看一区二区| 日本一二三四高清不卡| 亚洲va在线va天堂| 国产超碰在线一区| 欧美日韩在线播放三区四区| 精品福利一区二区三区| 综合久久综合久久| 久久精品国产精品青草| 91啪亚洲精品| 久久蜜桃av一区精品变态类天堂| 亚洲男人的天堂在线观看| 日本人妖一区二区| 91免费国产在线| 精品国产精品一区二区夜夜嗨| 亚洲视频中文字幕| 国产一区二区三区在线看麻豆| 91久久一区二区| 国产色综合久久| 全国精品久久少妇| 日本精品免费观看高清观看| 久久综合成人精品亚洲另类欧美| 亚洲综合色在线| 不卡电影免费在线播放一区| 日韩欧美www| 香蕉成人啪国产精品视频综合网 | 成人免费高清在线观看| 在线播放91灌醉迷j高跟美女| 国产精品蜜臀av| 国产精品亚洲综合一区在线观看| 欧美日免费三级在线| 日韩美女视频19| 波多野结衣在线一区| 久久日韩精品一区二区五区| 男人操女人的视频在线观看欧美| 欧美亚洲尤物久久| 亚洲综合在线五月| 色综合天天做天天爱| 国产精品久久久久影视| 国产精品一区二区无线| 2020国产成人综合网| 美国毛片一区二区| 69成人精品免费视频| 亚洲第一成年网| 精品1区2区3区| 婷婷综合五月天| 欧美人动与zoxxxx乱| 亚洲一区二区三区在线| 91福利在线播放| 香蕉久久一区二区不卡无毒影院 | 亚洲一区二区在线免费观看视频 | 7777精品伊人久久久大香线蕉超级流畅| 亚洲欧洲av色图| 91丝袜国产在线播放| 亚洲欧美视频在线观看视频| 99热99精品| 亚洲一级片在线观看| 欧美日韩一二区| 奇米亚洲午夜久久精品| 精品成人一区二区三区| 国产精品亚洲一区二区三区在线 | 老司机午夜精品99久久| 欧美日韩高清在线播放| 视频在线在亚洲| 欧美一二三区精品| 韩国v欧美v亚洲v日本v| 中文在线免费一区三区高中清不卡| 国产.欧美.日韩| 一区二区三区在线观看国产| 欧美日韩一区二区在线观看视频| 日韩精品国产精品| 久久精品欧美一区二区三区不卡| 成人性生交大片免费看视频在线| 亚洲另类在线制服丝袜| 欧美日韩成人综合天天影院| 激情五月激情综合网| 国产精品国产三级国产aⅴ中文| 一本久道中文字幕精品亚洲嫩| 日韩专区欧美专区| 国产色产综合产在线视频| 在线免费观看一区| 国产一区二区三区在线看麻豆| 椎名由奈av一区二区三区| 91精品国产综合久久久蜜臀粉嫩 | 色综合久久99| 美日韩一区二区| 亚洲欧洲性图库| 精品入口麻豆88视频| 91香蕉视频污在线| 国内精品在线播放| 亚洲大片精品永久免费| 欧美国产日本视频| 欧美一区二区精品| 91久久久免费一区二区| 国产九色精品成人porny | 麻豆成人久久精品二区三区红| 日本一二三不卡| 日韩午夜电影av| 日本韩国欧美一区| 成人精品gif动图一区| 蜜臀av亚洲一区中文字幕| 亚洲欧洲一区二区在线播放| 欧美xxxxx裸体时装秀| 精品污污网站免费看| 成人成人成人在线视频| 免费一级片91| 午夜精品视频在线观看| 亚洲欧美另类久久久精品| 精品不卡在线视频| 91精品国产综合久久精品图片| 色综合婷婷久久| 99久久99精品久久久久久| 国产一区不卡在线| 国内国产精品久久| 久色婷婷小香蕉久久| 日本午夜精品一区二区三区电影| 亚洲aⅴ怡春院| 亚洲国产精品一区二区久久 | 亚洲激情五月婷婷| 亚洲欧洲另类国产综合| 国产精品理论在线观看| 欧美激情一区二区三区在线| 2020国产成人综合网| 久久色中文字幕| 久久久久久影视| 国产欧美一区二区精品性色| 国产日韩欧美高清在线| 久久久精品国产免大香伊| 久久久久久久久久久黄色| 2023国产精品| 国产精品色哟哟| 亚洲天堂成人网| 一区二区国产视频| 亚洲国产视频在线| 日日摸夜夜添夜夜添亚洲女人| 日本网站在线观看一区二区三区| 美女网站一区二区| 狠狠色丁香九九婷婷综合五月| 国产一区二区电影| 成人高清伦理免费影院在线观看| 99久久伊人精品| 欧美性大战久久久久久久蜜臀| 99久久精品免费看国产免费软件| 色婷婷激情综合| 91精品国产高清一区二区三区蜜臀| 日韩午夜精品视频| 国产精品乱子久久久久| 亚洲综合精品自拍| 黄色日韩网站视频| 99国产精品久久久久久久久久| 日本久久电影网| 日韩欧美高清一区| 亚洲欧洲无码一区二区三区| 亚洲第一电影网| 国产美女精品在线| 欧洲亚洲精品在线| 精品久久一二三区| 亚洲欧美另类在线| 精东粉嫩av免费一区二区三区| 97精品久久久午夜一区二区三区| 精品污污网站免费看| 欧美极品aⅴ影院| 视频一区视频二区中文| 丁香一区二区三区| 日韩一级高清毛片| 亚洲尤物在线视频观看| 国产福利91精品| 欧美二区乱c少妇|