mainInitialize流程图1
2016-02-17 17:32:08 9 举报
squid 初始化
作者其他创作
大纲/内容
init标志是否第一次
fqdncacheAddEntryFromHosts加入fqdn_table哈希表
是否有域名
comm_open_listener建立dns查询fd
实际就是检查DnsSocketA和DnsSocketB
redirectInit
mainInitialize
idnsAddMDNSNameservers添加mdns信息
是否配置DNS地址
是
fd是否创建成功
httpHeaderInitModule
根据os设置文件描述符数量限制
disk_init()
结束
comm_local_port获取fd本地端口号
idnsAddNameserver
函数结束
否
SetSelect添加dns查询事件
externalAclInit
idnsRead()dns查询事件的回调函数
fqdncacheRegisterWithCacheManager注册
squid_signal注册信号回调函数
ipcacheRegisterWithCacheManager注册
dns查询Fd是否建立
memDataInit fqdn内存池初始化
mainInitialize初始化的东西很多,这是流程第一部分
fqdncache_init创建fqdn_table哈希表,key值为IP
idnsParseNameservers
这两个初始化函数的作用和调用都差不多,头部标签的bit设置
idnsRegisterWithCacheManager注册
httpReplyInitModule
parseEtcHosts解析/etc/hosts
errorInitialize
idnsParseResolvConf解析/etc/resolv.conf
dnsInit
hash_create创建idns_lookup_hash哈希表
ipcacheAddEntryFromHosts加入ip_table哈希表
memDataInit dns_query内存池初始化
0 条评论
回复 删除
下一页