• 设为首页
  • 点击收藏
  • 手机版
    手机扫一扫访问
    迪恩网络手机版
  • 关注官方公众号
    微信扫一扫关注
    迪恩网络公众号

C++ dissect_ndr_pointer函数代码示例

原作者: [db:作者] 来自: [db:来源] 收藏 邀请

本文整理汇总了C++中dissect_ndr_pointer函数的典型用法代码示例。如果您正苦于以下问题:C++ dissect_ndr_pointer函数的具体用法?C++ dissect_ndr_pointer怎么用?C++ dissect_ndr_pointer使用的例子?那么恭喜您, 这里精选的函数代码示例或许可以为您提供帮助。



在下文中一共展示了dissect_ndr_pointer函数的20个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于我们的系统推荐出更棒的C++代码示例。

示例1: rs_pgo_dissect_add_resp

static int
rs_pgo_dissect_add_resp (tvbuff_t * tvb, int offset,
                         packet_info * pinfo, proto_tree * tree,
                         dcerpc_info *di, guint8 * drep)
{
  gint         buff_remain;

  if (di->conformant_run)
    {
      return offset;
    }

/*
        [out]       rs_cache_data_t     *cache_info,
        [out]       error_status_t      *status
*/

 buff_remain = tvb_length_remaining(tvb, offset);

/* found several add_member responses that had 8 bytes of data. first was 4 0's and last was 3 zeros and a 1 */
if (buff_remain > 8) {
  offset =
    dissect_ndr_pointer(tvb, offset, pinfo, tree, di, drep,
                         dissect_rs_cache_data_t, NDR_POINTER_REF,
                         "cache_info: ", -1);
}
  offset =
    dissect_ndr_pointer(tvb, offset, pinfo, tree, di, drep,
                         dissect_error_status_t, NDR_POINTER_REF, "status: ",
                         -1);
  return offset;
}
开发者ID:dot-Sean,项目名称:wireshark-http2,代码行数:32,代码来源:packet-dcerpc-rs_pgo.c


示例2: dissect_browser_TYPE_2

/*
  IDL typedef [switch_type(long)] union {
  IDL   [case(100)] [unique] TYPE_3 *element_3;
  IDL   [case(101)] [unique] TYPE_4 *element_4;
  IDL } TYPE_2;
*/
static int
dissect_browser_TYPE_2(tvbuff_t *tvb, int offset,
                       packet_info *pinfo, proto_tree *tree,
                       dcerpc_info *di, guint8 *drep)
{
    guint32 level;

    /* this is really the union switch arm */
    offset = dissect_ndr_uint32(tvb, offset, pinfo, tree, di, drep,
                                hf_browser_unknown_long, &level);

    ALIGN_TO_4_BYTES;

    switch(level) {
    case 100:
        offset = dissect_ndr_pointer(tvb, offset, pinfo, tree, di, drep,
                                     dissect_browser_TYPE_3, NDR_POINTER_UNIQUE,
                                     "unknown TYPE_3", -1);
        break;
    case 101:
        offset = dissect_ndr_pointer(tvb, offset, pinfo, tree, di, drep,
                                     dissect_browser_TYPE_4, NDR_POINTER_UNIQUE,
                                     "unknown TYPE_4", -1);
        break;
    }

    return offset;
}
开发者ID:huzhiren,项目名称:wireshark,代码行数:34,代码来源:packet-dcerpc-browser.c


示例3: rs_pgo_dissect_delete_member_resp

static int
rs_pgo_dissect_delete_member_resp (tvbuff_t * tvb, int offset,
                                   packet_info * pinfo, proto_tree * tree,
                                   dcerpc_info *di, guint8 * drep)
{

  if (di->conformant_run)
    {
      return offset;
    }

/*
        [out]       rs_cache_data_t     *cache_info,
        [out]       error_status_t      *status

*/

  offset =
    dissect_ndr_pointer(tvb, offset, pinfo, tree, di, drep,
                         dissect_rs_cache_data_t, NDR_POINTER_REF,
                         "cache_info:", -1);
  offset =
    dissect_ndr_pointer(tvb, offset, pinfo, tree, di, drep,
                         dissect_error_status_t, NDR_POINTER_REF, "status:",
                         -1);

  return offset;

}
开发者ID:dot-Sean,项目名称:wireshark-http2,代码行数:29,代码来源:packet-dcerpc-rs_pgo.c


示例4: epm_dissect_ept_lookup_rqst

static int
epm_dissect_ept_lookup_rqst (tvbuff_t *tvb, int offset,
                             packet_info *pinfo, proto_tree *tree,
                             dcerpc_info *di, guint8 *drep)
{
    offset = dissect_ndr_uint32(tvb, offset, pinfo, tree, di, drep,
                                 hf_epm_inquiry_type, NULL);

    offset = dissect_ndr_pointer(tvb, offset, pinfo, tree, di, drep,
                             epm_dissect_pointer_UUID, NDR_POINTER_PTR,
                             "Object:", hf_epm_object);

    offset = dissect_ndr_pointer(tvb, offset, pinfo, tree, di, drep,
                             epm_dissect_pointer_IF_ID, NDR_POINTER_PTR,
                             "Interface:", hf_epm_if_id);

    offset = dissect_ndr_uint32(tvb, offset, pinfo, tree, di, drep,
                                 hf_epm_ver_opt, NULL);

    offset = dissect_ndr_ctx_hnd (tvb, offset, pinfo, tree, di, drep,
                                  hf_epm_hnd, NULL);

    offset = dissect_ndr_uint32(tvb, offset, pinfo, tree, di, drep,
                                 hf_epm_max_ents, NULL);
    return offset;
}
开发者ID:Ekleog,项目名称:wireshark,代码行数:26,代码来源:packet-dcerpc-epm.c


示例5: rs_pgo_dissect_key_transfer_resp

static int
rs_pgo_dissect_key_transfer_resp (tvbuff_t * tvb, int offset,
				  packet_info * pinfo, proto_tree * tree,
				  guint8 * drep)
{
  dcerpc_info *di;

  di = (dcerpc_info *)pinfo->private_data;
  if (di->conformant_run)
    {
      return offset;
    }

/*
        [in, out]   rs_pgo_query_key_t  *key,
        [out]       rs_cache_data_t     *cache_info,
        [out]       error_status_t      *status
*/

  offset =
    dissect_ndr_pointer (tvb, offset, pinfo, tree, drep,
			 dissect_rs_pgo_query_key_t, NDR_POINTER_REF, "key:",
			 -1);
  offset =
    dissect_ndr_pointer (tvb, offset, pinfo, tree, drep,
			 dissect_rs_cache_data_t, NDR_POINTER_REF,
			 "cache_info:", -1);
  offset =
    dissect_ndr_pointer (tvb, offset, pinfo, tree, drep,
			 dissect_error_status_t, NDR_POINTER_REF, "status:",
			 -1);

  return offset;
}
开发者ID:LucaBongiorni,项目名称:LTE_monitor_c2xx,代码行数:34,代码来源:packet-dcerpc-rs_pgo.c


示例6: rs_pgo_dissect_get_resp

static int
rs_pgo_dissect_get_resp (tvbuff_t * tvb, int offset,
                         packet_info * pinfo, proto_tree * tree,
                         dcerpc_info *di, guint8 * drep)
{
  if (di->conformant_run)
    {
      return offset;
    }

/*
        [in, out]   sec_rgy_cursor_t        *item_cursor,
        [out]       rs_cache_data_t         *cache_info,
        [out]       rs_pgo_query_result_t   *result
*/

  offset =
    dissect_ndr_pointer(tvb, offset, pinfo, tree, di, drep,
                         dissect_sec_rgy_cursor_t, NDR_POINTER_REF,
                         "item_cursor:", -1);
  offset =
    dissect_ndr_pointer(tvb, offset, pinfo, tree, di, drep,
                         dissect_rs_cache_data_t, NDR_POINTER_REF,
                         "cache_info:", -1);
  offset =
    dissect_ndr_pointer(tvb, offset, pinfo, tree, di, drep,
                         dissect_rs_pgo_query_result_t, NDR_POINTER_REF,
                         "result:", -1);

  return offset;

}
开发者ID:dot-Sean,项目名称:wireshark-http2,代码行数:32,代码来源:packet-dcerpc-rs_pgo.c


示例7: rs_pgo_dissect_key_transfer_rqst

static int
rs_pgo_dissect_key_transfer_rqst (tvbuff_t * tvb, int offset,
                                  packet_info * pinfo, proto_tree * tree,
                                  dcerpc_info *di, guint8 * drep)
{

  if (di->conformant_run)
    {
      return offset;
    }

/*
        [in]        sec_rgy_domain_t    name_domain,
        [in]        rs_pgo_query_t      requested_result_type,
        [in, out]   rs_pgo_query_key_t  *key,
*/

  offset += 4;
  offset = dissect_sec_rgy_domain_t (tvb, offset, pinfo, tree, di, drep);
  offset = dissect_rs_pgo_query_t (tvb, offset, pinfo, tree, di, drep);
  offset =
    dissect_ndr_pointer(tvb, offset, pinfo, tree, di, drep,
                         dissect_rs_pgo_query_key_t, NDR_POINTER_REF, "key:",
                         -1);

  return offset;
}
开发者ID:dot-Sean,项目名称:wireshark-http2,代码行数:27,代码来源:packet-dcerpc-rs_pgo.c


示例8: rs_pgo_dissect_replace_rqst

static int
rs_pgo_dissect_replace_rqst (tvbuff_t * tvb, int offset,
			     packet_info * pinfo, proto_tree * tree,
			     guint8 * drep)
{
  dcerpc_info *di;

  di = (dcerpc_info *)pinfo->private_data;
  if (di->conformant_run)
    {
      return offset;
    }

/*
        [in]        sec_rgy_domain_t    name_domain,
        [in]        sec_rgy_name_t      pgo_name,
        [in]        sec_rgy_pgo_item_t  *pgo_item,
*/
  offset = dissect_sec_rgy_domain_t (tvb, offset, pinfo, tree, drep);
  offset = dissect_sec_rgy_name_t (tvb, offset, pinfo, tree, drep);
  offset =
    dissect_ndr_pointer (tvb, offset, pinfo, tree, drep,
			 dissect_sec_rgy_pgo_item_t, NDR_POINTER_REF,
			 "pgo_item:", -1);

  return offset;
}
开发者ID:LucaBongiorni,项目名称:LTE_monitor_c2xx,代码行数:27,代码来源:packet-dcerpc-rs_pgo.c


示例9: rs_pgo_dissect_get_members_rqst

static int
rs_pgo_dissect_get_members_rqst (tvbuff_t * tvb, int offset,
                                 packet_info * pinfo, proto_tree * tree,
                                 dcerpc_info *di, guint8 * drep)
{

  guint32 max_members;

  if (di->conformant_run)
    {
      return offset;
    }

/*
        [in]        sec_rgy_domain_t        name_domain,
        [in]        sec_rgy_name_t          go_name,
        [in, out]   sec_rgy_cursor_t        *member_cursor,
        [in]        signed32                max_members,
*/

  offset = dissect_sec_rgy_domain_t (tvb, offset, pinfo, tree, di, drep);
  offset += 4;
  offset = dissect_sec_rgy_name_t (tvb, offset, pinfo, tree, di, drep);
  offset =
    dissect_ndr_pointer(tvb, offset, pinfo, tree, di, drep,
                         dissect_sec_rgy_cursor_t, NDR_POINTER_REF,
                         "member_cursor:", -1);
  offset =
    dissect_ndr_uint32(tvb, offset, pinfo, tree, di, drep, hf_rs_var1,
                        &max_members);

  col_append_fstr (pinfo->cinfo, COL_INFO, " :max_members:%u", max_members);

  return offset;
}
开发者ID:dot-Sean,项目名称:wireshark-http2,代码行数:35,代码来源:packet-dcerpc-rs_pgo.c


示例10: svcctl_dissect_EnumServicesStatus_rqst

static int
svcctl_dissect_EnumServicesStatus_rqst(tvbuff_t *tvb, int offset,
		packet_info *pinfo, proto_tree *tree, guint8 *drep)
{
	/* policy handle */
	offset = dissect_nt_policy_hnd(tvb, offset, pinfo, tree, drep,
			hf_svcctl_hnd, NULL, NULL, FALSE, FALSE);

	/* service type */
	offset = svcctl_dissect_dwServiceType_flags(tvb, offset, pinfo, tree, drep, SVC_ENUM_SERVICES_STATUS_W);

	/* service state */
	offset = dissect_ndr_uint32 (tvb, offset, pinfo, tree, drep,
			hf_svcctl_service_state, NULL);

	/* size */
	offset = dissect_ndr_uint32 (tvb, offset, pinfo, tree, drep,
			hf_svcctl_size, NULL);

	/* resume handle */
	offset = dissect_ndr_pointer(tvb, offset, pinfo, tree, drep,
			svcctl_dissect_pointer_long, NDR_POINTER_UNIQUE,
			"Resume Handle", hf_svcctl_resume);

	return offset;
}
开发者ID:Biamp-Systems,项目名称:wireshark,代码行数:26,代码来源:packet-dcerpc-svcctl.c


示例11: rs_pgo_dissect_add_rqst

static int
rs_pgo_dissect_add_rqst (tvbuff_t * tvb, int offset,
                         packet_info * pinfo, proto_tree * tree,
                         dcerpc_info *di, guint8 * drep)
{
  if (di->conformant_run)
    {
      return offset;
    }

/*
        [in]        sec_rgy_domain_t    name_domain,
        [in]        sec_rgy_name_t      pgo_name,
        [in]        sec_rgy_pgo_item_t  *pgo_item,
*/

  offset = dissect_sec_rgy_domain_t (tvb, offset, pinfo, tree, di, drep);
  offset += 4;
  offset = dissect_sec_rgy_name_t (tvb, offset, pinfo, tree, di, drep);
  offset =
    dissect_ndr_pointer(tvb, offset, pinfo, tree, di, drep,
                         dissect_sec_rgy_pgo_item_t, NDR_POINTER_REF,
                         "sec_rgy_pgo_item_t: ", -1);

  return offset;
}
开发者ID:dot-Sean,项目名称:wireshark-http2,代码行数:26,代码来源:packet-dcerpc-rs_pgo.c


示例12: messenger_dissect_send_message_rqst

/*
 * IDL  [in][string][ref] char *server;
 * IDL  [in][string][ref] char *client;
 * IDL  [in][string][ref] char *message;
 */
static int
messenger_dissect_send_message_rqst(tvbuff_t *tvb, int offset, packet_info *pinfo,
			    proto_tree *tree, guint8 *drep)
{
        offset = dissect_ndr_pointer(tvb, offset, pinfo, tree, drep,
			dissect_ndr_char_cvstring, NDR_POINTER_REF,
			"Server", hf_messenger_server);
        offset = dissect_ndr_pointer(tvb, offset, pinfo, tree, drep,
			dissect_ndr_char_cvstring, NDR_POINTER_REF,
			"Client", hf_messenger_client);
        offset = dissect_ndr_pointer(tvb, offset, pinfo, tree, drep,
			dissect_ndr_char_cvstring, NDR_POINTER_REF,
			"Message", hf_messenger_message);


	return offset;
}
开发者ID:AndresVelasco,项目名称:wireshark,代码行数:22,代码来源:packet-dcerpc-messenger.c


示例13: rs_pgo_dissect_get_rqst

static int
rs_pgo_dissect_get_rqst (tvbuff_t * tvb, int offset,
			 packet_info * pinfo, proto_tree * tree,
			 guint8 * drep)
{
  dcerpc_info *di;
  guint32 allow_aliases;

  di = (dcerpc_info *)pinfo->private_data;
  if (di->conformant_run)
    {
      return offset;
    }

/*
        [in]        sec_rgy_domain_t        name_domain,
        [in]        rs_pgo_query_key_t      *key,
        [in]        boolean32               allow_aliases,
        [in, out]   sec_rgy_cursor_t        *item_cursor,
*/

  offset = dissect_sec_rgy_domain_t (tvb, offset, pinfo, tree, drep);
  offset =
    dissect_ndr_pointer (tvb, offset, pinfo, tree, drep,
			 dissect_rs_pgo_query_key_t, NDR_POINTER_REF, "key:",
			 -1);
  offset =
    dissect_ndr_uint32 (tvb, offset, pinfo, tree, drep, hf_rs_var1,
			&allow_aliases);

  if (check_col (pinfo->cinfo, COL_INFO))
    col_append_fstr (pinfo->cinfo, COL_INFO, " :allow_aliases:%u",
		     allow_aliases);


  offset += 4;			/* XXX */

  offset =
    dissect_ndr_pointer (tvb, offset, pinfo, tree, drep,
			 dissect_sec_rgy_cursor_t, NDR_POINTER_REF,
			 "item_cursor:", -1);
  return offset;

}
开发者ID:LucaBongiorni,项目名称:LTE_monitor_c2xx,代码行数:44,代码来源:packet-dcerpc-rs_pgo.c


示例14: dissect_browser_browserr_server_enum_reply

static int
dissect_browser_browserr_server_enum_reply(tvbuff_t *tvb, int offset,
        packet_info *pinfo, proto_tree *tree,
        dcerpc_info *di, guint8 *drep)
{
    offset = dissect_ndr_pointer(tvb, offset, pinfo, tree, di, drep,
                                 dissect_browser_TYPE_1, NDR_POINTER_REF,
                                 "unknown TYPE_1", -1);

    offset = dissect_ndr_uint32(tvb, offset, pinfo, tree, di, drep,
                                hf_browser_unknown_long, NULL);

    offset = dissect_ndr_pointer(tvb, offset, pinfo, tree, di, drep,
                                 dissect_browser_long_pointer, NDR_POINTER_UNIQUE,
                                 "unknown long", hf_browser_unknown_long);

    offset = dissect_ndr_uint32(tvb, offset, pinfo, tree, di, drep,
                                hf_browser_rc, NULL);

    return offset;
}
开发者ID:huzhiren,项目名称:wireshark,代码行数:21,代码来源:packet-dcerpc-browser.c


示例15: epm_dissect_ept_entry_t

static int
epm_dissect_ept_entry_t(tvbuff_t *tvb, int offset,
                             packet_info *pinfo, proto_tree *parent_tree,
                             guint8 *drep)
{
    proto_item *item=NULL;
    proto_tree *tree=NULL;
    int old_offset=offset;
    guint32 len;
    dcerpc_info *di;
    const char *str;

    di=pinfo->private_data;
    if(di->conformant_run){
        return offset;
    }

    if(parent_tree){
        item = proto_tree_add_text(parent_tree, tvb, offset, -1, "Entry:");
        tree = proto_item_add_subtree(item, ett_epm_entry);
    }

    offset = dissect_ndr_uuid_t (tvb, offset, pinfo, tree, drep,
                                 hf_epm_object, NULL);

    offset = dissect_ndr_pointer(tvb, offset, pinfo, tree, drep,
                             epm_dissect_tower, NDR_POINTER_PTR,
                             "Tower pointer:", -1);

    offset = dissect_ndr_uint32 (tvb, offset, pinfo, tree, drep,
                                 hf_epm_ann_offset, NULL);
    offset = dissect_ndr_uint32 (tvb, offset, pinfo, tree, drep,
                                 hf_epm_ann_len, &len);
    str=tvb_get_ephemeral_string(tvb, offset, len);
    proto_tree_add_item(tree, hf_epm_annotation, tvb, offset, len, ENC_ASCII|ENC_NA);
    offset += len;

    if(str&&str[0]){
        if(parent_tree) {
            proto_item_append_text(item, " Service:%s ", str);
            proto_item_append_text(tree->parent, " Service:%s ", str);
        }
        if (check_col(pinfo->cinfo, COL_INFO)) {
            col_append_fstr(pinfo->cinfo, COL_INFO, ", Service:%s", str);
        }
    }

    proto_item_set_len(item, offset-old_offset);
    return offset;
}
开发者ID:asriadi,项目名称:wireshark,代码行数:50,代码来源:packet-dcerpc-epm.c


示例16: dissect_browser_netr_browser_statistics_get_reply

static int
dissect_browser_netr_browser_statistics_get_reply(tvbuff_t *tvb, int offset,
			packet_info *pinfo, proto_tree *tree,
			guint8 *drep)
{
	offset = dissect_ndr_pointer(tvb, offset, pinfo, tree, drep,
			dissect_browser_TYPE_7, NDR_POINTER_REF,
			"unknown TYPE_7", -1);

	offset = dissect_ndr_uint32(tvb, offset, pinfo, tree, drep,
		hf_browser_rc, NULL);

	return offset;
}
开发者ID:AkhilaAG,项目名称:gluster-wireshark-1.4,代码行数:14,代码来源:packet-dcerpc-browser.c


示例17: dissect_browser_TYPE_3

static int
dissect_browser_TYPE_3(tvbuff_t *tvb, int offset,
                       packet_info *pinfo, proto_tree *tree,
                       dcerpc_info *di, guint8 *drep)
{
    offset = dissect_ndr_uint32(tvb, offset, pinfo, tree, di, drep,
                                hf_browser_unknown_long, NULL);

    offset = dissect_ndr_pointer(tvb, offset, pinfo, tree, di, drep,
                                 dissect_browser_TYPE_3_data, NDR_POINTER_UNIQUE,
                                 "unknown TYPE_3", -1);

    return offset;
}
开发者ID:huzhiren,项目名称:wireshark,代码行数:14,代码来源:packet-dcerpc-browser.c


示例18: dissect_browser_browserr_query_emulated_domains_reply

static int
dissect_browser_browserr_query_emulated_domains_reply(tvbuff_t *tvb, int offset,
			packet_info *pinfo, proto_tree *tree,
			guint8 *drep)
{
	offset = dissect_ndr_pointer(tvb, offset, pinfo, tree, drep,
			dissect_browser_TYPE_12, NDR_POINTER_REF,
			"unknown TYPE_12", -1);

	offset = dissect_ndr_uint32(tvb, offset, pinfo, tree, drep,
		hf_browser_rc, NULL);

	return offset;
}
开发者ID:AkhilaAG,项目名称:gluster-wireshark-1.4,代码行数:14,代码来源:packet-dcerpc-browser.c


示例19: BrowserrQueryEmulatedDomains

/*
  IDL long BrowserrQueryEmulatedDomains(
  IDL       [in] [unique] [string] wchar_t *element_84,
  IDL       [in,out] [ref] TYPE_12 *element_85
  );
*/
static int
dissect_browser_browserr_query_emulated_domains_rqst(tvbuff_t *tvb, int offset,
			packet_info *pinfo, proto_tree *tree,
			guint8 *drep)
{
	offset = dissect_ndr_str_pointer_item(tvb, offset, pinfo, tree, drep,
			NDR_POINTER_UNIQUE, "unknown string", 
			hf_browser_unknown_string, 0);

	offset = dissect_ndr_pointer(tvb, offset, pinfo, tree, drep,
			dissect_browser_TYPE_12, NDR_POINTER_REF,
			"unknown TYPE_12", -1);

	return offset;
}
开发者ID:AkhilaAG,项目名称:gluster-wireshark-1.4,代码行数:21,代码来源:packet-dcerpc-browser.c


示例20: dissect_tapi_client_request_rqst

static int
dissect_tapi_client_request_rqst(tvbuff_t *tvb, int offset,
			packet_info *pinfo, proto_tree *tree,
			dcerpc_info *di, guint8 *drep)
{
	offset = dissect_ndr_ctx_hnd(tvb, offset, pinfo, tree, di, drep,
			hf_tapi_hnd, NULL);

	offset = dissect_ndr_pointer(tvb, offset, pinfo, tree, di, drep,
			dissect_tapi_TYPE_1, NDR_POINTER_REF,
			"unknown array", -1);

	offset = dissect_ndr_uint32(tvb, offset, pinfo, tree, di, drep,
		hf_tapi_unknown_long, NULL);

	return offset;
}
开发者ID:DHODoS,项目名称:wireshark,代码行数:17,代码来源:packet-dcerpc-tapi.c



注:本文中的dissect_ndr_pointer函数示例由纯净天空整理自Github/MSDocs等源码及文档管理平台,相关代码片段筛选自各路编程大神贡献的开源项目,源码版权归原作者所有,传播和使用请参考对应项目的License;未经允许,请勿转载。


鲜花

握手

雷人

路过

鸡蛋
该文章已有0人参与评论

请发表评论

全部评论

专题导读
上一篇:
C++ dissect_ndr_uint32函数代码示例发布时间:2022-05-30
下一篇:
C++ dispose函数代码示例发布时间:2022-05-30
热门推荐
阅读排行榜

扫描微信二维码

查看手机版网站

随时了解更新最新资讯

139-2527-9053

在线客服(服务时间 9:00~18:00)

在线QQ客服
地址:深圳市南山区西丽大学城创智工业园
电邮:jeky_zhao#qq.com
移动电话:139-2527-9053

Powered by 互联科技 X3.4© 2001-2213 极客世界.|Sitemap