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

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

?? smgw.c

?? 基于上海電信 sgmp3.0短信協(xié)議,實現(xiàn)的源程序,現(xiàn)網(wǎng)運行穩(wěn)定,unix (freeBSD) 環(huán)境下編程.
?? C
字號:
/*$Header: /base/cvsroot/wam/sms/platform/src/smgp3/smgw.c,v 1.4 2007/07/18 08:29:25 haowen Exp $*/
#include <stdio.h>
#include <sys/time.h>
#include <time.h>
#include <string.h>
#include <stdlib.h>
#include <stdarg.h>
#include <mysql.h>
#include <mysqld_error.h>
#include <errno.h>
#include "smgw.h"
#include "mylog.h"

extern char logfile[256];
extern int errno;

void getday(char *const day)
{
    struct tm *tp;
    time_t timep;

    time(&timep);
    tp=localtime(&timep);

    sprintf(day,"%d%02d%02d",(tp->tm_year+1900),( 1+tp->tm_mon), tp->tm_mday);
}

void getdatetime (char *const datetime)
{
    	struct tm *tp;
    	time_t timep;

    	time(&timep);
    	tp=localtime(&timep);

	sprintf(datetime,"%d-%02d-%02d %02d:%02d:%02d", (tp->tm_year+1900),( 1+tp->tm_mon), tp->tm_mday ,tp->tm_hour, tp->tm_min, tp->tm_sec);
}



void WriteMessagetolog(SEND_Q send)
{
    char content[256];
    char pi[1024];
    char mi[1024];
    char buffer[2048];

    mysql_escape_string(content, send.sq_sms_content, strlen(send.sq_sms_content)) ;
    mysql_escape_string(pi, send.sq_desc_pi, send.length_pi);
    mysql_escape_string(mi, send.sq_desc_mi, send.length_mi);
    sprintf(buffer, "insert into send_q_tmp values(%d,'%s',%d,'%s','%s','%s',%d,'%s','%s','%s','%s','%s','%s','%s','%d','%s','%s','%s','%s','%s',now(),'%s','%s','%s','%s','%s','%s','%s','%s','%s','%s','%s','%s','%s')",
             send.sq_id, 
            send.sq_service_code,
            send.sq_pri,
            send.sq_message_format,
            send.sq_fee_type,
            send.sq_fee_code,
            send.sq_sms_length,
            content,
            send.sq_content_type,
            pi,
            mi,
            send.sq_mobile,
            send.sq_send,
            send.sq_fee_mobile,
            send.sq_msg_type,
            send.sq_content_name,
            send.sq_content_id,
            send.sq_provider,
            send.sq_province,
            send.sq_sms_scheduletime,
      //      send->sq_send_time,
            send.sq_submit_id,
            "", /* send->sq_submit_stat, */
            send.sq_submit_time,
            send.sq_linkid,
            send.sq_jf_code,
            send.sq_product,
            send.sq_zone_province,
            send.sq_zone_city,
            send.sq_from,
            send.sq_wamid,
            send.sq_reg_cmd,
            send.sq_reg_gateway,
            send.sq_reg_from);
	INFO("[INFO-MAIN]BACKUP:  %s\n",buffer);
}



int HaveData(int socket_fd)
{
	fd_set recvset;
	struct timeval  timeout;
	int ret;
	
	/* Select Receive Set */
	FD_ZERO(&recvset);
	FD_SET(socket_fd, &recvset);
	timeout.tv_sec = 1;
	timeout.tv_usec = 100;
	again:
	if ( (ret = select(socket_fd + 1, &recvset, 0, 0, &timeout)) == -1 )
	{	
		INFO("[INFO-RECV:]errno = %d\n", errno);
		if(errno==EINTR) 
		{	
			INFO("[INFO-RECV:]errno = EINTR\n");
			goto again;
		}
		return -1;
	}
	else if(ret == 0)
	{
		//[HaveData]: time out
		return 0;
	}
	//HAVE DATA
	return ret;
	
}

void copy_send_q(SEND_Q *const send_q, MYSQL_ROW myrow)
{
    	memset(send_q, 0, sizeof(SEND_Q));
    	send_q->sq_id = atoi(myrow[0]);
    	send_q->length_pi = atoi(myrow[34]);
    	send_q->length_mi = atoi(myrow[35]);
//    strlcpy(send_q->sq_service_code, myrow[1], sizeof(send_q->sq_service_code));
    	strncpy(send_q->sq_service_code, myrow[1], sizeof(send_q->sq_service_code));
    	send_q->sq_service_code[sizeof(send_q->sq_service_code) -1] ='\0';
	
    	send_q->sq_pri = atoi(myrow[2]);
    	strncpy(send_q->sq_message_format, myrow[3], sizeof(send_q->sq_message_format));
    	send_q->sq_message_format[sizeof(send_q->sq_message_format) -1] ='\0';
	
    	strncpy(send_q->sq_fee_type, myrow[4], sizeof(send_q->sq_fee_type));
    	send_q->sq_fee_type[sizeof(send_q->sq_fee_type) -1] ='\0';
    	strncpy(send_q->sq_fee_code, myrow[5], sizeof(send_q->sq_fee_code));
    	send_q->sq_fee_code[sizeof(send_q->sq_fee_code) -1] = '\0';

    	send_q->sq_sms_length = atoi(myrow[36]);
    	strncpy(send_q->sq_sms_content, myrow[7], sizeof(send_q->sq_sms_content));
	send_q->sq_sms_content[sizeof(send_q->sq_sms_content) -1] = '\0';
	
    	strncpy(send_q->sq_content_type, myrow[8], sizeof(send_q->sq_content_type));
	send_q->sq_content_type[sizeof(send_q->sq_content_type)-1] ='\0';
	
    	memcpy(send_q->sq_desc_pi, myrow[9], send_q->length_pi);
    	memcpy(send_q->sq_desc_mi, myrow[10], send_q->length_mi);
    	strncpy(send_q->sq_mobile, myrow[11], sizeof(send_q->sq_mobile));
	send_q->sq_mobile[sizeof(send_q->sq_mobile)-1] ='\0';
	
    	strncpy(send_q->sq_send, myrow[12], sizeof(send_q->sq_send));
	send_q->sq_send[sizeof(send_q->sq_send) -1] ='\0';
	
    	strncpy(send_q->sq_fee_mobile, myrow[13], sizeof(send_q->sq_fee_mobile));
	send_q->sq_fee_mobile[sizeof(send_q->sq_fee_mobile)-1] ='\0';
	
    	send_q->sq_msg_type = atoi(myrow[14]);
    	strncpy(send_q->sq_content_name, myrow[15], sizeof(send_q->sq_content_name));
	send_q->sq_content_name[sizeof(send_q->sq_content_name) -1] = '\0';

	strncpy(send_q->sq_content_id, myrow[16], sizeof(send_q->sq_content_id));
	send_q->sq_content_id[sizeof(send_q->sq_content_id) -1] = '\0';
	
    	strncpy(send_q->sq_provider, myrow[17], sizeof(send_q->sq_provider));
	send_q->sq_provider[sizeof(send_q->sq_provider) -1] = '\0';
	
    	strncpy(send_q->sq_province, myrow[18], sizeof(send_q->sq_province));
	send_q->sq_province[sizeof(send_q->sq_province) -1] = '\0';
	
    	strncpy(send_q->sq_sms_scheduletime, myrow[19], sizeof(send_q->sq_sms_scheduletime));
	send_q->sq_sms_scheduletime[sizeof(send_q->sq_sms_scheduletime)-1] = '\0';
	
    	strncpy(send_q->sq_send_time, myrow[20], sizeof(send_q->sq_send_time));
	send_q->sq_send_time[sizeof(send_q->sq_send_time) -1] = '\0';
	
    	strncpy(send_q->sq_submit_id, myrow[21], sizeof(send_q->sq_submit_id));
	send_q->sq_submit_id[sizeof(send_q->sq_submit_id)-1] = '\0';
	
    	strncpy(send_q->sq_submit_stat, myrow[22], sizeof(send_q->sq_submit_stat));
	send_q->sq_submit_stat[sizeof(send_q->sq_submit_stat ) -1] = '\0';
	
    	strncpy(send_q->sq_submit_time, myrow[23], sizeof(send_q->sq_submit_time));
	send_q->sq_submit_time[sizeof(send_q->sq_submit_time) -1] = '\0';
	
    	strncpy(send_q->sq_linkid, myrow[24], sizeof(send_q->sq_linkid));
	send_q->sq_linkid[sizeof(send_q->sq_linkid) -1] = '\0';
	
    	strncpy(send_q->sq_jf_code, myrow[25], sizeof(send_q->sq_jf_code));
	send_q->sq_jf_code[sizeof(send_q->sq_jf_code) -1] = '\0';
	
    	strncpy(send_q->sq_product, myrow[26], sizeof(send_q->sq_product));
	send_q->sq_product[sizeof(send_q->sq_product)-1] = '\0';
	
    	strncpy(send_q->sq_zone_province, myrow[27], sizeof(send_q->sq_zone_province));
	send_q->sq_zone_province[sizeof(send_q->sq_zone_province) -1] = '\0';
	
    	strncpy(send_q->sq_zone_city, myrow[28], sizeof(send_q->sq_zone_city));
	send_q->sq_zone_city[sizeof(send_q->sq_zone_city) -1] = '\0';
	
    	strncpy(send_q->sq_from, myrow[29], sizeof(send_q->sq_from));
	send_q->sq_from[sizeof(send_q->sq_from)-1] = '\0';
	
    	strncpy(send_q->sq_wamid, myrow[30], sizeof(send_q->sq_wamid));
	send_q->sq_wamid[sizeof(send_q->sq_wamid) -1] = '\0';
	
    	strncpy(send_q->sq_reg_cmd, myrow[31], sizeof(send_q->sq_reg_cmd));
	send_q->sq_reg_cmd[sizeof(send_q->sq_reg_cmd) -1] = '\0';
	
    	strncpy(send_q->sq_reg_gateway, myrow[32], sizeof(send_q->sq_reg_gateway));
	send_q->sq_reg_gateway[sizeof(send_q->sq_reg_gateway) -1] = '\0';
	
    	strncpy(send_q->sq_reg_from, myrow[33], sizeof(send_q->sq_reg_from));
	send_q->sq_reg_from[sizeof(send_q->sq_reg_from)-1] = '\0';
	
#if 1
    {
       INFO("[DEBUG]: sq_id:               [%s]\n[DEBUG]: sq_service_code:     [%s]\n\
[DEBUG]: sq_pri:           	   	[%s]\n[DEBUG]: sq_message_format:   [%s]\n\
[DEBUG]: sq_fee_type:         [%s]\n\
[DEBUG]: sq_fee_code:         [%s]\n[DEBUG]: sq_sms_length:       [%s]\n\
[DEBUG]: sq_sms_content:      	   	[%s]\n[DEBUG]: sq_content_type:     [%s]\n\
[DEBUG]: sq_desc_pi:          [%s]\n[DEBUG]: sq_desc_mi:          [%s]\n\
[DEBUG]: sq_mobile:           [%s]\n[DEBUG]: sq_send:             	   	[%s]\n\
[DEBUG]: sq_fee_mobile:       [%s]\n[DEBUG]: sq_msg_type:         [%s]\n\
[DEBUG]: sq_content_name:     [%s]\n[DEBUG]: sq_content_id:       [%s]\n\
[DEBUG]: sq_provider:         	   	[%s]\n[DEBUG]: sq_province:         [%s]\n\
[DEBUG]: sq_sms_scheduletime: [%s]\n[DEBUG]: sq_send_time:        [%s]\n\
[DEBUG]: sq_submit_id:        [%s]\n[DEBUG]: sq_submit_stat:      	   	[%s]\n\
[DEBUG]: sq_submit_time:      [%s]\n[DEBUG]: sq_linkid:           [%s]\n\
[DEBUG]: sq_jf_code:          [%s]\n[DEBUG]: sq_product:          [%s]\n\
[DEBUG]: sq_zone_province:    	   	[%s]\n[DEBUG]: sq_zone_city:        [%s]\n\
[DEBUG]: sq_from:             [%s]\n[DEBUG]: sq_wamid:            [%s]\n\
[DEBUG]: sq_reg_cmd:          [%s]\n[DEBUG]: sq_reg_gateway:      	   	[%s]\n\
[DEBUG]: sq_reg_from:         [%s]\n", myrow[0], myrow[1], myrow[2], myrow[3], 
	   	myrow[4], myrow[5], myrow[6], myrow[7], myrow[8], myrow[9], myrow[10], myrow[11], 
	   	myrow[12], myrow[13], myrow[14], myrow[15], myrow[16], myrow[17], myrow[18], 
	   	myrow[19], myrow[20], myrow[21], myrow[22], myrow[23], myrow[24], myrow[25], 
	   	myrow[26], myrow[27], myrow[28], myrow[29], myrow[30], myrow[31], myrow[32], 
	   	myrow[33]);

    }
    
#endif
}

void _InsertSendLog(MYSQL *fsql, const char *db, SEND_Q *const send, char *const stat) 
{
    char day[9];
    char content[256];
    char tempquery[1024];
	
    getday(day); 
    mysql_escape_string(content, send->sq_sms_content, strlen(send->sq_sms_content));
   
    if (send->sq_msg_type == 10) {
	
        sprintf(tempquery, "insert into %s.send_smc_%s values('%s','%s', now(), '%s','%s','%s', 1, '%s','%s','%s','%s','%s','%s','%s','%s','%s', '%s','%s', '%s')",
                db,
                day,
                send->sq_service_code,
                send->sq_mobile,
                //send->sq_date,
                send->sq_provider,
                send->sq_fee_code,
                send->sq_submit_time,
                //send->sq_num,
                stat,
                send->sq_jf_code,
                "0",          //send->sq_send,
                send->sq_product,
                send->sq_zone_province,
                send->sq_zone_city,
                send->sq_from,
                send->sq_reg_cmd,
                send->sq_reg_gateway,
                send->sq_reg_from,
                content,
                send->sq_reg_gateway);
		mysql_real_query(fsql,tempquery,strlen(tempquery));
    } else if ((send->sq_msg_type > 0) || (send->sq_msg_type < 10)) {
        sprintf(tempquery, "insert into %s.send_log_%s values('%s','%s','%s',NOW(),'%s','%s','%s','%s',%d,'%s','%s','%s','%s','%s','%s','%s','%s','%s','%s','%s','%s','%s','%s','%s','%s','%s','%s')",
                db,
                day,
                send->sq_service_code,
                content,
                send->sq_mobile,
                //send->sq_date,
                send->sq_send,
                send->sq_provider,
                send->sq_province,
                send->sq_fee_mobile,
                send->sq_msg_type,              // %d
                send->sq_content_name,
                send->sq_content_id,
                send->sq_send_time,
                send->sq_sms_scheduletime,
                send->sq_fee_type,
                send->sq_fee_code,
                stat,
                send->sq_linkid,
                send->sq_submit_time,
                send->sq_jf_code,
                send->sq_product,
                send->sq_zone_province,
                send->sq_zone_city,
                send->sq_from,
                send->sq_wamid,
                send->sq_reg_cmd,
                send->sq_reg_gateway,
                send->sq_reg_from);
		mysql_real_query(fsql,tempquery,strlen(tempquery));
    } else {
        INFO("[-ERR: unknown msg_type\n");
    }
}

/* 網(wǎng)關(guān)使用 */
void InsertSendLog(MYSQL *fsql, const char *db, SEND_Q *const send, int nFlag) 
{
    char stat[15];

    if (nFlag == 0) { //發(fā)送成功
        strcpy(stat, "success");
    } else if (nFlag == -3) {
        strcpy(stat, "unsend");
    } else if (nFlag == -1) {
        strcpy(stat, "fail");
    } else {
        snprintf(stat, sizeof(stat), "%s%d", "fail", nFlag);
    }
    _InsertSendLog(fsql, db, send, stat);
}

/* 狀態(tài)報告程序使用 */
void InsertSendLog2(MYSQL *fsql, const char *db, SEND_Q *const send, const char *code)
{
    char stat[15];

    if ((strcmp(code, "0") == 0) ||
            (strcmp(code, "000") == 0) ||
            (strcmp(code, "DELIVRD") == 0) ||
            (strcmp(code, "ACCEPTD") == 0)) {
        strcpy(stat, "success");
    } else if ((strcmp(code, "UNDELIV") == 0) || (strcmp(code, "undeliv") == 0)) {
        strcpy(stat, "undeliv");
    } else {
        sprintf(stat, "%s%s", "SMC_", code);
    }
    _InsertSendLog(fsql, db, send, stat);
}

void InsertSendReport(MYSQL *fsql, const char *db, SEND_Q *const send)
{
    char content[256];
    char tempquery[1024];

	
    send->sq_desc_pi[0] = '\0';
    send->sq_desc_mi[0] = '\0';
   
    mysql_escape_string(content, send->sq_sms_content, strlen(send->sq_sms_content)) ;
    sprintf(tempquery, "insert into %s.send_report values (NULL,'%s',%d,'%s','%s','%s',%d,'%s','%s','%s','%s','%s','%s','%s',%d,'%s','%s','%s','%s','%s','%s','%s','%s','%s','%s','%s','%s','%s','%s','%s','%s','%s','%s','%s')",
            db,
            //send->sq_id,
            send->sq_service_code,
            send->sq_pri,               // %d
            send->sq_message_format,
            send->sq_fee_type,
            send->sq_fee_code,
            send->sq_sms_length,        // %d
            content,
            send->sq_content_type,
            send->sq_desc_pi,
            send->sq_desc_mi,
            send->sq_mobile,
            send->sq_send,
            send->sq_fee_mobile,
            send->sq_msg_type,          // %d
            send->sq_content_name,
            send->sq_content_id,
            send->sq_provider,
            send->sq_province,
            send->sq_sms_scheduletime,
            send->sq_send_time,
            send->sq_submit_id,
            "SMC",                      //send->sq_submit_stat,
            send->sq_submit_time,
            send->sq_linkid,
            send->sq_jf_code,
            send->sq_product,
            send->sq_zone_province,
            send->sq_zone_city,
            send->sq_from,
            send->sq_wamid,
            send->sq_reg_cmd,
            send->sq_reg_gateway,
            send->sq_reg_from);
	
    mysql_real_query(fsql,tempquery, strlen(tempquery));
}

?? 快捷鍵說明

復(fù)制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
久久亚洲综合色一区二区三区| 国产精品久久久久影视| 国产盗摄一区二区| 性做久久久久久久免费看| 久久久激情视频| 欧美精品xxxxbbbb| av激情综合网| 国产在线精品不卡| 日韩国产精品大片| 亚洲自拍偷拍图区| 国产精品视频yy9299一区| 日韩免费观看高清完整版 | 亚洲主播在线观看| 国产天堂亚洲国产碰碰| 欧美一区二区大片| 精品视频一区三区九区| 99久久久无码国产精品| 国产成人亚洲精品狼色在线 | 高清视频一区二区| 激情另类小说区图片区视频区| 午夜精品一区二区三区电影天堂 | 色屁屁一区二区| 丁香桃色午夜亚洲一区二区三区| 青青草成人在线观看| 亚洲成a人v欧美综合天堂| 中文字幕亚洲精品在线观看 | 欧美va日韩va| 欧美一区二区国产| 欧美一区二区日韩一区二区| 欧美色图12p| 欧美午夜影院一区| 日本精品视频一区二区三区| 91在线免费视频观看| 波多野结衣91| 成人福利电影精品一区二区在线观看 | 欧美电影免费观看完整版| 欧美女孩性生活视频| 欧美日韩一区二区欧美激情| 欧美性大战久久久久久久| 91国偷自产一区二区开放时间| 99re6这里只有精品视频在线观看| 成人美女视频在线观看18| 粉嫩高潮美女一区二区三区| 东方欧美亚洲色图在线| 成人性生交大片免费 | 欧美挠脚心视频网站| 欧美三级在线视频| 欧美久久高跟鞋激| 日韩午夜在线观看| 亚洲精品在线免费播放| 久久新电视剧免费观看| 欧美极品aⅴ影院| 亚洲欧美在线aaa| 一区二区成人在线观看| 亚洲.国产.中文慕字在线| 日韩成人免费电影| 精品一区二区在线观看| 国产成人免费视频网站高清观看视频| 国产成人啪午夜精品网站男同| 懂色av一区二区三区蜜臀| 91麻豆.com| 欧美日韩1区2区| 精品国产亚洲一区二区三区在线观看| 久久你懂得1024| 亚洲精品乱码久久久久| 日本欧美在线观看| 国产精品亚洲成人| 日本高清不卡一区| 欧美成人bangbros| 国产精品久久久久久久蜜臀| 亚洲精品国产无天堂网2021| 日韩中文字幕一区二区三区| 精品中文av资源站在线观看| 不卡影院免费观看| 欧美日韩一区二区三区在线看| 日韩欧美的一区二区| 国产精品卡一卡二卡三| 亚洲1区2区3区视频| 国产经典欧美精品| 欧美亚洲综合在线| 久久精品人人做人人综合| 一区二区三区四区激情| 老汉av免费一区二区三区| 99在线精品观看| 日韩欧美成人激情| 亚洲天堂免费看| 久久精品国产亚洲a| 91浏览器在线视频| 久久久久久久综合| 亚洲国产精品嫩草影院| 国产成人啪免费观看软件 | 在线视频一区二区三区| 亚洲精品一区二区精华| 一区二区三区四区激情| 国产福利精品一区二区| 在线不卡中文字幕| 亚洲欧美综合在线精品| 韩国视频一区二区| 欧美色区777第一页| 欧美激情中文不卡| 蜜臀久久99精品久久久画质超高清 | voyeur盗摄精品| 欧美变态凌虐bdsm| 亚洲福中文字幕伊人影院| 成人性生交大合| 2022国产精品视频| 日韩av电影天堂| 日本高清无吗v一区| 国产精品女同互慰在线看 | 色综合咪咪久久| 国产欧美日韩卡一| 蜜芽一区二区三区| 欧美日韩和欧美的一区二区| 亚洲日本丝袜连裤袜办公室| 国产成人综合精品三级| 日韩视频一区在线观看| 午夜精品福利在线| 欧洲视频一区二区| 亚洲欧美日韩国产综合| 99在线视频精品| 国产精品久久福利| 成人毛片在线观看| 日本一区二区成人在线| 国产成人精品免费在线| 久久久久88色偷偷免费| 久久99国产精品免费| 欧美成人精品1314www| 日本中文字幕一区| 91精品国产一区二区三区蜜臀| 亚洲国产日日夜夜| 欧美日韩在线播放| 婷婷成人综合网| 欧美喷水一区二区| 日本欧美肥老太交大片| 91麻豆精品国产91久久久更新时间| 五月天精品一区二区三区| 3d动漫精品啪啪| 美女诱惑一区二区| 26uuu另类欧美| 国产精品自在在线| 国产精品系列在线| 99精品国产视频| 一区二区在线看| 欧美精品视频www在线观看| 午夜视频在线观看一区二区| 欧美精品久久久久久久久老牛影院| 丝袜美腿亚洲色图| 欧美岛国在线观看| 国产综合色视频| 国产精品你懂的在线欣赏| 一本色道久久综合亚洲精品按摩| 一区二区三区波多野结衣在线观看| 一本色道**综合亚洲精品蜜桃冫| 一区二区三区.www| 91精品午夜视频| 国模冰冰炮一区二区| 中文字幕成人在线观看| 91免费精品国自产拍在线不卡| 一区二区三区在线视频观看| 在线播放亚洲一区| 韩日精品视频一区| 最新日韩在线视频| 欧美精品乱码久久久久久| 久久国产成人午夜av影院| 亚洲国产精品av| 欧美日韩综合在线| 极品少妇一区二区| 亚洲视频在线观看三级| 欧美人妇做爰xxxⅹ性高电影 | 一二三区精品视频| 欧美一级片在线看| 成人午夜视频福利| 一区二区三区成人| 精品88久久久久88久久久| 91网站在线播放| 日本欧美在线观看| 亚洲欧洲精品天堂一级| 制服丝袜日韩国产| 成人免费视频国产在线观看| 亚洲成a人片在线观看中文| 久久久久久综合| 欧美日精品一区视频| 国产精品99久| 五月天国产精品| 中文无字幕一区二区三区| 91麻豆精品国产91久久久久久| 成人国产亚洲欧美成人综合网| 亚洲.国产.中文慕字在线| 欧美国产成人精品| 日韩一区二区三区四区| 99久久夜色精品国产网站| 久久99久久99小草精品免视看| 亚洲免费观看在线视频| 国产校园另类小说区| 91麻豆精品国产91久久久更新时间 | 中文字幕亚洲一区二区va在线| 欧美一区二区福利在线| 色综合久久久久综合体桃花网| 黄页网站大全一区二区| 午夜精品一区二区三区免费视频|