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

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

?? db_server_cxxproc.cpp

?? MySQL數據庫開發源碼 值得一看哦
?? CPP
?? 第 1 頁 / 共 4 頁
字號:
__db_pagesize_proc(	long dbpcl_id,	u_int32_t pagesize,	__db_pagesize_reply *replyp)/* END __db_pagesize_proc */{	Db *dbp;	ct_entry *dbp_ctp;	int ret;	ACTIVATE_CTP(dbp_ctp, dbpcl_id, CT_DB);	dbp = (Db *)dbp_ctp->ct_anyp;	ret = dbp->set_pagesize(pagesize);	replyp->status = ret;	return;}/* BEGIN __db_pget_proc */extern "C" void__db_pget_proc(	long dbpcl_id,	long txnpcl_id,	u_int32_t skeydlen,	u_int32_t skeydoff,	u_int32_t skeyulen,	u_int32_t skeyflags,	void *skeydata,	u_int32_t skeysize,	u_int32_t pkeydlen,	u_int32_t pkeydoff,	u_int32_t pkeyulen,	u_int32_t pkeyflags,	void *pkeydata,	u_int32_t pkeysize,	u_int32_t datadlen,	u_int32_t datadoff,	u_int32_t dataulen,	u_int32_t dataflags,	void *datadata,	u_int32_t datasize,	u_int32_t flags,	__db_pget_reply *replyp,	int * freep)/* END __db_pget_proc */{	Db *dbp;	DbTxn *txnp;	ct_entry *dbp_ctp, *txnp_ctp;	int key_alloc, ret;	ACTIVATE_CTP(dbp_ctp, dbpcl_id, CT_DB);	dbp = (Db *)dbp_ctp->ct_anyp;	if (txnpcl_id != 0) {		ACTIVATE_CTP(txnp_ctp, txnpcl_id, CT_TXN);		txnp = (DbTxn *)txnp_ctp->ct_anyp;	} else		txnp = NULL;	*freep = 0;	/*	 * Ignore memory related flags on server.	 */	/* Set up key and data */	Dbt skey(skeydata, skeysize);	skey.set_dlen(skeydlen);	skey.set_ulen(skeyulen);	skey.set_doff(skeydoff);	skey.set_flags(DB_DBT_MALLOC | (skeyflags & DB_DBT_PARTIAL));	Dbt pkey(pkeydata, pkeysize);	pkey.set_dlen(pkeydlen);	pkey.set_ulen(pkeyulen);	pkey.set_doff(pkeydoff);	pkey.set_flags(DB_DBT_MALLOC | (pkeyflags & DB_DBT_PARTIAL));	Dbt data(datadata, datasize);	data.set_dlen(datadlen);	data.set_ulen(dataulen);	data.set_doff(datadoff);	data.set_flags(DB_DBT_MALLOC | (dataflags & DB_DBT_PARTIAL));	/* Got all our stuff, now do the get */	ret = dbp->pget(txnp, &skey, &pkey, &data, flags);	/*	 * Otherwise just status.	 */	if (ret == 0) {		/*		 * XXX		 * We need to xdr_free whatever we are returning, next time.		 * However, DB does not allocate a new key if one was given		 * and we'd be free'ing up space allocated in the request.		 * So, allocate a new key/data pointer if it is the same one		 * as in the request.		 */		*freep = 1;		/*		 * Key		 */		key_alloc = 0;		if (skey.get_data() == skeydata) {			ret = __os_umalloc(dbp->get_DB()->dbenv,			    skey.get_size(), &replyp->skeydata.skeydata_val);			if (ret != 0) {				__os_ufree(dbp->get_DB()->dbenv, skey.get_data());				__os_ufree(dbp->get_DB()->dbenv, pkey.get_data());				__os_ufree(dbp->get_DB()->dbenv, data.get_data());				goto err;			}			key_alloc = 1;			memcpy(replyp->skeydata.skeydata_val, skey.get_data(),			    skey.get_size());		} else			replyp->skeydata.skeydata_val = (char *)skey.get_data();		replyp->skeydata.skeydata_len = skey.get_size();		/*		 * Primary key		 */		if (pkey.get_data() == pkeydata) {			ret = __os_umalloc(dbp->get_DB()->dbenv,			     pkey.get_size(), &replyp->pkeydata.pkeydata_val);			if (ret != 0) {				__os_ufree(dbp->get_DB()->dbenv, skey.get_data());				__os_ufree(dbp->get_DB()->dbenv, pkey.get_data());				__os_ufree(dbp->get_DB()->dbenv, data.get_data());				if (key_alloc)					__os_ufree(dbp->get_DB()->dbenv,					    replyp->skeydata.skeydata_val);				goto err;			}			/*			 * We can set it to 2, because they cannot send the			 * pkey over without sending the skey over too.			 * So if they did send a pkey, they must have sent			 * the skey as well.			 */			key_alloc = 2;			memcpy(replyp->pkeydata.pkeydata_val, pkey.get_data(),			    pkey.get_size());		} else			replyp->pkeydata.pkeydata_val = (char *)pkey.get_data();		replyp->pkeydata.pkeydata_len = pkey.get_size();		/*		 * Data		 */		if (data.get_data() == datadata) {			ret = __os_umalloc(dbp->get_DB()->dbenv,			     data.get_size(), &replyp->datadata.datadata_val);			if (ret != 0) {				__os_ufree(dbp->get_DB()->dbenv, skey.get_data());				__os_ufree(dbp->get_DB()->dbenv, pkey.get_data());				__os_ufree(dbp->get_DB()->dbenv, data.get_data());				/*				 * If key_alloc is 1, just skey needs to be				 * freed, if key_alloc is 2, both skey and pkey				 * need to be freed.				 */				if (key_alloc--)					__os_ufree(dbp->get_DB()->dbenv,					    replyp->skeydata.skeydata_val);				if (key_alloc)					__os_ufree(dbp->get_DB()->dbenv,					    replyp->pkeydata.pkeydata_val);				goto err;			}			memcpy(replyp->datadata.datadata_val, data.get_data(),			    data.get_size());		} else			replyp->datadata.datadata_val = (char *)data.get_data();		replyp->datadata.datadata_len = data.get_size();	} else {err:		replyp->skeydata.skeydata_val = NULL;		replyp->skeydata.skeydata_len = 0;		replyp->pkeydata.pkeydata_val = NULL;		replyp->pkeydata.pkeydata_len = 0;		replyp->datadata.datadata_val = NULL;		replyp->datadata.datadata_len = 0;		*freep = 0;	}	replyp->status = ret;	return;}/* BEGIN __db_put_proc */extern "C" void__db_put_proc(	long dbpcl_id,	long txnpcl_id,	u_int32_t keydlen,	u_int32_t keydoff,	u_int32_t keyulen,	u_int32_t keyflags,	void *keydata,	u_int32_t keysize,	u_int32_t datadlen,	u_int32_t datadoff,	u_int32_t dataulen,	u_int32_t dataflags,	void *datadata,	u_int32_t datasize,	u_int32_t flags,	__db_put_reply *replyp,	int * freep)/* END __db_put_proc */{	Db *dbp;	DbTxn *txnp;	ct_entry *dbp_ctp, *txnp_ctp;	int ret;	ACTIVATE_CTP(dbp_ctp, dbpcl_id, CT_DB);	dbp = (Db *)dbp_ctp->ct_anyp;	if (txnpcl_id != 0) {		ACTIVATE_CTP(txnp_ctp, txnpcl_id, CT_TXN);		txnp = (DbTxn *)txnp_ctp->ct_anyp;	} else		txnp = NULL;	*freep = 0;	/* Set up key and data */	Dbt key(keydata, keysize);	key.set_dlen(keydlen);	key.set_ulen(keyulen);	key.set_doff(keydoff);	key.set_flags(DB_DBT_MALLOC | (keyflags & DB_DBT_PARTIAL));	Dbt data(datadata, datasize);	data.set_dlen(datadlen);	data.set_ulen(dataulen);	data.set_doff(datadoff);	data.set_flags(dataflags);	/* Got all our stuff, now do the put */	ret = dbp->put(txnp, &key, &data, flags);	/*	 * If the client did a DB_APPEND, set up key in reply.	 * Otherwise just status.	 */	if (ret == 0 && (flags == DB_APPEND)) {		/*		 * XXX		 * We need to xdr_free whatever we are returning, next time.		 * However, DB does not allocate a new key if one was given		 * and we'd be free'ing up space allocated in the request.		 * So, allocate a new key/data pointer if it is the same one		 * as in the request.		 */		*freep = 1;		/*		 * Key		 */		if (key.get_data() == keydata) {			ret = __os_umalloc(dbp->get_DB()->dbenv,			    key.get_size(), &replyp->keydata.keydata_val);			if (ret != 0) {				__os_ufree(dbp->get_DB()->dbenv, key.get_data());				goto err;			}			memcpy(replyp->keydata.keydata_val, key.get_data(), key.get_size());		} else			replyp->keydata.keydata_val = (char *)key.get_data();		replyp->keydata.keydata_len = key.get_size();	} else {err:		replyp->keydata.keydata_val = NULL;		replyp->keydata.keydata_len = 0;		*freep = 0;	}	replyp->status = ret;	return;}/* BEGIN __db_re_delim_proc */extern "C" void__db_re_delim_proc(	long dbpcl_id,	u_int32_t delim,	__db_re_delim_reply *replyp)/* END __db_re_delim_proc */{	Db *dbp;	ct_entry *dbp_ctp;	int ret;	ACTIVATE_CTP(dbp_ctp, dbpcl_id, CT_DB);	dbp = (Db *)dbp_ctp->ct_anyp;	ret = dbp->set_re_delim(delim);	replyp->status = ret;	return;}/* BEGIN __db_re_len_proc */extern "C" void__db_re_len_proc(	long dbpcl_id,	u_int32_t len,	__db_re_len_reply *replyp)/* END __db_re_len_proc */{	Db *dbp;	ct_entry *dbp_ctp;	int ret;	ACTIVATE_CTP(dbp_ctp, dbpcl_id, CT_DB);	dbp = (Db *)dbp_ctp->ct_anyp;	ret = dbp->set_re_len(len);	replyp->status = ret;	return;}/* BEGIN __db_re_pad_proc */extern "C" void__db_re_pad_proc(	long dbpcl_id,	u_int32_t pad,	__db_re_pad_reply *replyp)/* END __db_re_pad_proc */{	Db *dbp;	ct_entry *dbp_ctp;	int ret;	ACTIVATE_CTP(dbp_ctp, dbpcl_id, CT_DB);	dbp = (Db *)dbp_ctp->ct_anyp;	ret = dbp->set_re_pad(pad);	replyp->status = ret;	return;}/* BEGIN __db_remove_proc */extern "C" void__db_remove_proc(	long dbpcl_id,	char *name,	char *subdb,	u_int32_t flags,	__db_remove_reply *replyp)/* END __db_remove_proc */{	Db *dbp;	ct_entry *dbp_ctp;	int ret;	ACTIVATE_CTP(dbp_ctp, dbpcl_id, CT_DB);	dbp = (Db *)dbp_ctp->ct_anyp;	ret = dbp->remove(name, subdb, flags);	__dbdel_ctp(dbp_ctp);	replyp->status = ret;	return;}/* BEGIN __db_rename_proc */extern "C" void__db_rename_proc(	long dbpcl_id,	char *name,	char *subdb,	char *newname,	u_int32_t flags,	__db_rename_reply *replyp)/* END __db_rename_proc */{	Db *dbp;	ct_entry *dbp_ctp;	int ret;	ACTIVATE_CTP(dbp_ctp, dbpcl_id, CT_DB);	dbp = (Db *)dbp_ctp->ct_anyp;	ret = dbp->rename(name, subdb, newname, flags);	__dbdel_ctp(dbp_ctp);	replyp->status = ret;	return;}/* BEGIN __db_stat_proc */extern "C" void__db_stat_proc(	long dbpcl_id,	u_int32_t flags,	__db_stat_reply *replyp,	int * freep)/* END __db_stat_proc */{	Db *dbp;	DBTYPE type;	ct_entry *dbp_ctp;	u_int32_t *q, *p, *retsp;	int i, len, ret;	void *sp;	ACTIVATE_CTP(dbp_ctp, dbpcl_id, CT_DB);	dbp = (Db *)dbp_ctp->ct_anyp;	ret = dbp->stat(&sp, flags);	replyp->status = ret;	if (ret != 0)		return;	/*	 * We get here, we have success.  Allocate an array so that	 * we can use the list generator.  Generate the reply, free	 * up the space.	 */	/*	 * XXX This assumes that all elements of all stat structures	 * are u_int32_t fields.  They are, currently.	 */	(void)dbp->get_type(&type);	if (type == DB_HASH)		len = sizeof(DB_HASH_STAT);	else if (type == DB_QUEUE)		len = sizeof(DB_QUEUE_STAT);	else            /* BTREE or RECNO are same stats */		len = sizeof(DB_BTREE_STAT);	replyp->stats.stats_len = len / sizeof(u_int32_t);	if ((ret = __os_umalloc(dbp->get_DB()->dbenv,	    len * replyp->stats.stats_len, &retsp)) != 0)		goto out;	for (i = 0, q = retsp, p = (u_int32_t *)sp; i < len;	    i++, q++, p++)		*q = *p;	replyp->stats.stats_val = retsp;	__os_ufree(dbp->get_DB()->dbenv, sp);	if (ret == 0)		*freep = 1;out:	replyp->status = ret;	return;}/* BEGIN __db_sync_proc */extern "C" void__db_sync_proc(	long dbpcl_id,	u_int32_t flags,	__db_sync_reply *replyp)/* END __db_sync_proc */{	Db *dbp;	ct_entry *dbp_ctp;	int ret;	ACTIVATE_CTP(dbp_ctp, dbpcl_id, CT_DB);	dbp = (Db *)dbp_ctp->ct_anyp;	ret = dbp->sync(flags);	replyp->status = ret;	return;}/* BEGIN __db_truncate_proc */extern "C" void__db_truncate_proc(	long dbpcl_id,	long txnpcl_id,	u_int32_t flags,	__db_truncate_reply *replyp)/* END __db_truncate_proc */{	Db *dbp;	DbTxn *txnp;	ct_entry *dbp_ctp, *txnp_ctp;	u_int32_t count;	int ret;	ACTIVATE_CTP(dbp_ctp, dbpcl_id, CT_DB);	dbp = (Db *)dbp_ctp->ct_anyp;	if (txnpcl_id != 0) {		ACTIVATE_CTP(txnp_ctp, txnpcl_id, CT_TXN);		txnp = (DbTxn *)txnp_ctp->ct_anyp;	} else		txnp = NULL;	ret = dbp->truncate(txnp, &count, flags);	replyp->status = ret;	if (ret == 0)		replyp->count = count;	return;}/* BEGIN __db_cursor_proc */extern "C" void__db_cursor_proc(	long dbpcl_id,	long txnpcl_id,	u_int32_t flags,	__db_cursor_reply *replyp)/* END __db_cursor_proc */{	Db *dbp;	Dbc *dbc;	DbTxn *txnp;	ct_entry *dbc_ctp, *env_ctp, *dbp_ctp, *txnp_ctp;	int ret;	ACTIVATE_CTP(dbp_ctp, dbpcl_id, CT_DB);	dbp = (Db *)dbp_ctp->ct_anyp;	dbc_ctp = new_ct_ent(&replyp->status);	if (dbc_ctp == NULL)		return;	if (txnpcl_id != 0) {		ACTIVATE_CTP(txnp_ctp, txnpcl_id, CT_TXN);		txnp = (DbTxn *)txnp_ctp->ct_anyp;		dbc_ctp->ct_activep = txnp_ctp->ct_activep;	} else		txnp = NULL;	if ((ret = dbp->cursor(txnp, &dbc, flags)) == 0) {		dbc_ctp->ct_dbc = dbc;		dbc_ctp->ct_type = CT_CURSOR;		dbc_ctp->ct_parent = dbp_ctp;		env_ctp = dbp_ctp->ct_envparent;		dbc_ctp->ct_envparent = env_ctp;		__dbsrv_settimeout(dbc_ctp, env_ctp->ct_timeout);		__dbsrv_active(dbc_ctp);		replyp->dbcidcl_id = dbc_ctp->ct_id;	} else		__dbclear_ctp(dbc_ctp);	replyp->status = ret;	return;}/* BEGIN __db_join_proc */extern "C" void__db_join_proc(	long dbpcl_id,	u_int32_t *curs,	u_int32_t curslen,	u_int32_t flags,	__db_join_reply *replyp)/* END __db_join_proc */

?? 快捷鍵說明

復制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
91视频在线观看| 99国产一区二区三精品乱码| 欧美国产精品一区| 欧美亚洲丝袜传媒另类| 国内一区二区在线| 亚洲国产成人av网| 亚洲国产成人自拍| 欧美v亚洲v综合ⅴ国产v| 一本久道久久综合中文字幕 | 欧美精品一二三| 粉嫩蜜臀av国产精品网站| 男女男精品视频网| 亚洲精品综合在线| 中文字幕av一区二区三区| 91精品久久久久久蜜臀| 色综合久久久久综合体| 成人午夜激情影院| 国内外精品视频| 久久精品国产**网站演员| 一区二区三区不卡视频在线观看| 国产视频在线观看一区二区三区| 欧美一区二区三区在| 欧美在线一区二区| 色综合天天综合在线视频| 成人免费视频网站在线观看| 国模套图日韩精品一区二区 | 成人免费一区二区三区在线观看| 欧美不卡视频一区| 91精品国产色综合久久不卡蜜臀| 欧美体内she精视频| 97成人超碰视| 99国产精品久久久久久久久久久 | 国产精品天美传媒沈樵| 26uuu亚洲| 久久青草国产手机看片福利盒子| 日韩欧美一区二区视频| 欧美一级片在线| 91麻豆精品国产91久久久使用方法 | 日本在线不卡视频| 五月天网站亚洲| 午夜电影网一区| 亚洲成av人片在www色猫咪| 亚洲一区在线播放| 亚洲午夜电影在线| 亚洲超碰精品一区二区| 性欧美疯狂xxxxbbbb| 视频一区在线视频| 青青草91视频| 久久av老司机精品网站导航| 久久国产成人午夜av影院| 激情综合网激情| 国产精品伊人色| 国产不卡视频在线播放| 国产成人免费视频| 99这里都是精品| 91国偷自产一区二区开放时间| 色综合久久99| 91精品国产综合久久婷婷香蕉| 日韩视频一区二区三区在线播放| 精品日韩一区二区三区免费视频| 久久日一线二线三线suv| 欧美极品aⅴ影院| 日韩伦理免费电影| 亚洲不卡av一区二区三区| 日本成人在线电影网| 国产一区二区看久久| 成人精品视频一区二区三区| 欧洲中文字幕精品| 日韩精品在线一区| 国产精品萝li| 午夜激情一区二区| 极品销魂美女一区二区三区| caoporen国产精品视频| 欧美日韩精品欧美日韩精品一| 日韩精品一区二区三区在线观看| 国产欧美一区二区三区网站 | 亚洲男人天堂一区| 亚洲成人先锋电影| 激情六月婷婷久久| 成人av资源在线| 在线播放欧美女士性生活| 久久免费视频色| 亚洲一区二区在线免费看| 久草在线在线精品观看| 99在线视频精品| 日韩欧美一二三四区| 亚洲欧美在线视频观看| 免费高清在线视频一区·| 成人av影视在线观看| 4438x亚洲最大成人网| 国产精品久久久久影院色老大| 五月婷婷久久丁香| thepron国产精品| 欧美另类高清zo欧美| 国产精品色一区二区三区| 亚洲va欧美va人人爽| jvid福利写真一区二区三区| 欧美一区二区人人喊爽| 一区免费观看视频| 狠狠色综合色综合网络| 欧美日韩国产小视频在线观看| 国产欧美日韩在线观看| 琪琪久久久久日韩精品| 91视频国产观看| 久久精品亚洲麻豆av一区二区| 亚洲国产日韩一级| 97久久精品人人爽人人爽蜜臀| 精品捆绑美女sm三区| 婷婷久久综合九色国产成人 | 亚洲第一福利视频在线| 成人天堂资源www在线| 日韩精品中午字幕| 视频一区国产视频| 91久久免费观看| 中文字幕一区二区三区四区 | 91精品国产入口| 一区二区三区中文字幕精品精品| 国产99久久久国产精品潘金 | 欧美性大战久久久| 最新国产精品久久精品| 国产成人亚洲精品青草天美| 欧美不卡一二三| 美女一区二区久久| 538prom精品视频线放| 亚洲一区av在线| 欧美在线看片a免费观看| 亚洲欧洲国产专区| 播五月开心婷婷综合| 国产精品―色哟哟| 成人小视频在线| 国产精品久久午夜夜伦鲁鲁| 国产99久久久国产精品潘金网站| 久久久一区二区| 国产精品 日产精品 欧美精品| 精品国产91亚洲一区二区三区婷婷| 人人爽香蕉精品| 日韩一级免费一区| 麻豆国产欧美日韩综合精品二区| 日韩三级视频在线看| 奇米四色…亚洲| 精品国产精品一区二区夜夜嗨| 狠狠色丁香久久婷婷综合丁香| 精品剧情v国产在线观看在线| 九九视频精品免费| 久久久久九九视频| 成人美女视频在线观看| 一区视频在线播放| 在线日韩一区二区| 天天操天天综合网| 日韩免费在线观看| 国产一区二区久久| 国产精品视频免费看| 一本到高清视频免费精品| 一区二区不卡在线播放 | 久久久亚洲精华液精华液精华液| 国产一区二区视频在线| 久久久久国产免费免费| 成人黄色免费短视频| 樱花草国产18久久久久| 欧美精品三级在线观看| 精品在线免费视频| 国产精品午夜在线观看| 色女孩综合影院| 免费视频一区二区| 欧美极品少妇xxxxⅹ高跟鞋 | 久久精品这里都是精品| heyzo一本久久综合| 一区二区三区四区在线免费观看| 欧美喷水一区二区| 国产一区二区三区香蕉| 中文字幕亚洲欧美在线不卡| 欧美日韩三级视频| 国产在线乱码一区二区三区| 亚洲同性gay激情无套| 这里只有精品视频在线观看| 丁香天五香天堂综合| 艳妇臀荡乳欲伦亚洲一区| 欧美成人免费网站| 91亚洲男人天堂| 另类小说图片综合网| 日韩美女啊v在线免费观看| 91精品午夜视频| 99这里只有久久精品视频| 热久久国产精品| 亚洲女爱视频在线| 欧美www视频| 欧美综合一区二区| 国产一二三精品| 亚洲r级在线视频| 亚洲国产精华液网站w| 7777精品伊人久久久大香线蕉经典版下载| 国内成+人亚洲+欧美+综合在线| 亚洲综合色网站| 日本一二三四高清不卡| 欧美日韩国产成人在线91| 国产成人精品亚洲777人妖 | 成人午夜激情视频| 日韩成人午夜电影| 亚洲色大成网站www久久九九| 久久综合久久综合久久|