亚洲av成人无遮挡网站在线观看,少妇性bbb搡bbb爽爽爽,亚洲av日韩精品久久久久久,兔费看少妇性l交大片免费,无码少妇一区二区三区
Chinaunix
標(biāo)題:
求結(jié)構(gòu)體struct sock *sk 中的 sk_dst_cache變量初始化位置?
[打印本頁(yè)]
作者:
SCDXMOE
時(shí)間:
2014-07-29 14:00
標(biāo)題:
求結(jié)構(gòu)體struct sock *sk 中的 sk_dst_cache變量初始化位置?
我想請(qǐng)問(wèn)一下
:
結(jié)構(gòu)體struct sock *sk 中的 sk_dst_cache變量在什么地方初始化的?
我跟蹤了connect的過(guò)程:
connect()->sys_connect()->sock->ops->connect(() -> tcp_v4_connect() -> ip_route_connect() -> tcp_connect() -> tcp_connect_init
在函數(shù)tcp_connect_init中 有了對(duì)sk->sk_dst_cache 的調(diào)用,但是一直找不到他開始定義的地方,
謝謝
作者:
Agimsn
時(shí)間:
2014-08-05 10:46
本帖最后由 Agimsn 于 2014-08-12 21:35 編輯
看錯(cuò)題目了,沒(méi)用處
作者:
mrpre
時(shí)間:
2014-08-07 21:30
tcp_v4_connect是發(fā)syn包,發(fā)包前理應(yīng)查路由。我覺得是查路由ip_route_connect 帶上的。
作者:
mrpre
時(shí)間:
2014-08-07 21:33
暫時(shí)沒(méi)找到。理論上成員sk_dst_cache指向路由查詢結(jié)果rtable的成員u.dst,從而套接字完全緩存路由查詢的結(jié)果。
明天繼續(xù),先睡覺
作者:
Tinnal
時(shí)間:
2014-08-07 22:00
回復(fù)
4#
mrpre
這么早睡覺。唉。我剛從公司回來(lái)。
作者:
humjb_1983
時(shí)間:
2014-08-07 22:29
Tinnal 發(fā)表于 2014-08-07 22:00
回復(fù) 4# mrpre
這么早睡覺。唉。我剛從公司回來(lái)。
工作也太辛苦了~~,保重身體。
作者:
mrpre
時(shí)間:
2014-08-08 09:15
不知道你說(shuō)的是初始化是指 賦值 還是 清0。
賦值:tcp_v4_connect中執(zhí)行ip_route_connect,帶出rt
tmp = ip_route_connect(&rt, nexthop, inet->saddr,
RT_CONN_FLAGS(sk), sk->sk_bound_dev_if,
IPPROTO_TCP,
inet->sport, usin->sin_port, sk, 1);
依舊在tcp_v4_connect中,執(zhí)行sk_setup_caps(sk, &rt->u.dst);
sk_setup_caps調(diào)用__sk_dst_set(sk, dst);
__sk_dst_set(struct sock *sk, struct dst_entry *dst)
{
struct dst_entry *old_dst;
old_dst = sk->sk_dst_cache;
sk->sk_dst_cache = dst;
dst_release(old_dst);
}
賦值完成了。
清0:
inet_create->sk_alloc->sk_prot_alloc中 memset(sk, 0, prot->obj_size);
整個(gè)tcp_sk結(jié)構(gòu)體都清0了。
作者:
SCDXMOE
時(shí)間:
2014-08-11 09:50
回復(fù)
7#
mrpre
謝謝
歡迎光臨 Chinaunix (http://72891.cn/)
Powered by Discuz! X3.2