@@ -48,7 +48,6 @@ func computeCacheKey(pluginsState *PluginsState, msg *dns.Msg) ([32]byte, error)
4848// ---
4949
5050type PluginCache struct {
51- cachedResponses * CachedResponses
5251}
5352
5453func (plugin * PluginCache ) Name () string {
@@ -72,18 +71,16 @@ func (plugin *PluginCache) Reload() error {
7271}
7372
7473func (plugin * PluginCache ) Eval (pluginsState * PluginsState , msg * dns.Msg ) error {
75- plugin .cachedResponses = & cachedResponses
76-
7774 cacheKey , err := computeCacheKey (pluginsState , msg )
7875 if err != nil {
7976 return nil
8077 }
81- plugin . cachedResponses .RLock ()
82- defer plugin . cachedResponses .RUnlock ()
83- if plugin . cachedResponses .cache == nil {
78+ cachedResponses .RLock ()
79+ defer cachedResponses .RUnlock ()
80+ if cachedResponses .cache == nil {
8481 return nil
8582 }
86- cachedAny , ok := plugin . cachedResponses .cache .Get (cacheKey )
83+ cachedAny , ok := cachedResponses .cache .Get (cacheKey )
8784 if ! ok {
8885 return nil
8986 }
@@ -108,7 +105,6 @@ func (plugin *PluginCache) Eval(pluginsState *PluginsState, msg *dns.Msg) error
108105// ---
109106
110107type PluginCacheResponse struct {
111- cachedResponses * CachedResponses
112108}
113109
114110func (plugin * PluginCacheResponse ) Name () string {
@@ -132,7 +128,6 @@ func (plugin *PluginCacheResponse) Reload() error {
132128}
133129
134130func (plugin * PluginCacheResponse ) Eval (pluginsState * PluginsState , msg * dns.Msg ) error {
135- plugin .cachedResponses = & cachedResponses
136131 if msg .Rcode != dns .RcodeSuccess && msg .Rcode != dns .RcodeNameError && msg .Rcode != dns .RcodeNotAuth {
137132 return nil
138133 }
@@ -148,16 +143,16 @@ func (plugin *PluginCacheResponse) Eval(pluginsState *PluginsState, msg *dns.Msg
148143 expiration : time .Now ().Add (ttl ),
149144 msg : * msg ,
150145 }
151- plugin . cachedResponses .Lock ()
152- if plugin . cachedResponses .cache == nil {
153- plugin . cachedResponses .cache , err = lru .NewARC (pluginsState .cacheSize )
146+ cachedResponses .Lock ()
147+ if cachedResponses .cache == nil {
148+ cachedResponses .cache , err = lru .NewARC (pluginsState .cacheSize )
154149 if err != nil {
155- plugin . cachedResponses .Unlock ()
150+ cachedResponses .Unlock ()
156151 return err
157152 }
158153 }
159- plugin . cachedResponses .cache .Add (cacheKey , cachedResponse )
160- plugin . cachedResponses .Unlock ()
154+ cachedResponses .cache .Add (cacheKey , cachedResponse )
155+ cachedResponses .Unlock ()
161156 updateTTL (msg , cachedResponse .expiration )
162157
163158 return nil
0 commit comments