Hello Everyone, Can anyone guide me here ?
Thanks, Ashok On Fri, May 13, 2022 at 3:51 PM ashok athukuri <[email protected]> wrote: > Hello George, > > > Thanks for the quick response, Yes I am using libunbound version 1.12 > > Yes I am setting config for a separate context > > but SERVE_EXPIRED_REPLY_TTL is a global variable and the same is used in > different places example dns.c tomsg() function > I feel because of this global variable this part of the code is creating > problems for different cache conf. > I tested with multiple caches and its holding only 1 configuration (I doubt > it because of code services/cache/dns.c#594) > > > SERVE_EXPIRED_REPLY is assigned in build/util/config_file.c#2056 > (config_apply)2056 > > SERVE_EXPIRED_REPLY_TTL = (time_t)config->serve_expired_reply_ttl; > > > below code tomsg() is depending on SERVE_EXPIRED_REPLY_TTL to make this works > these variables should be set in the context before actually calling tomsg() > function. > > Else these values may remain un changed and apply for all caches. > > As you can see in the below code services/cache/dns.c#594 > 589 msg = gen_dns_msg(region, q, r->rrset_count); > > 590 if(!msg) return NULL; > > 591 msg->rep->flags = r->flags; > > 592 msg->rep->qdcount = r->qdcount; > > 593 msg->rep->ttl = is_expired > > 594 ?SERVE_EXPIRED_REPLY_TTL > > 595 :r->ttl - now; > > 596 if(r->prefetch_ttl > now) > > 597 msg->rep->prefetch_ttl = r->prefetch_ttl - now; > > 598 else > > 599 msg->rep->prefetch_ttl = PREFETCH_TTL_CALC(msg->rep->ttl); > > 600 msg->rep->serve_expired_ttl = msg->rep->ttl + SERVE_EXPIRED_TTL; > > > Thanks, > > Ashok > > > > On Fri, May 13, 2022 at 3:07 PM George Thessalonikefs via Unbound-users < > [email protected]> wrote: > >> Hi Ashok, >> >> The Unbound daemon runs as one cache resolver. >> Are you perhaps using libunound and creating your own contexts? >> In that case yes the options are per context. >> You can have different options per context though, if you use the >> 'ub_ctx_set_option' function. >> Since the options you mention are configurable and not hard coded, the >> aforementioned function works on them. >> >> Best regards, >> -- George >> >> On 13/05/2022 07:25, ashok athukuri via Unbound-users wrote: >> > Hello All, >> > >> > I am a newbie for unbound, please apologize if my question is wrong or >> > my understanding is wrong. >> > >> > I see below variables make unbound to use a single configuration for >> all >> > cache resolvers. >> > As these variables are global and don't bind with any unbound context >> or >> > configuration for each cache >> > >> > I wonder how to solve this problem? as I need different cache conf for >> > different cache resolvers. >> > >> > 64 < >> https://indexing2.f5net.com/source/xref/tmos-dns-bugs/ports/unbound/build/util/data/msgreply.c#64>/** >> If we serve expired entries and prefetch them */ >> > 65 < >> https://indexing2.f5net.com/source/xref/tmos-dns-bugs/ports/unbound/build/util/data/msgreply.c#65>THREAD >> <https://indexing2.f5net.com/source/s?defs=THREAD&project=tmos-dns-bugs> >> *int* SERVE_EXPIRED < >> https://indexing2.f5net.com/source/s?refs=SERVE_EXPIRED&project=tmos-dns-bugs> >> = 0; >> > 66 < >> https://indexing2.f5net.com/source/xref/tmos-dns-bugs/ports/unbound/build/util/data/msgreply.c#66>/** >> Time to serve records after expiration */ >> > 67 < >> https://indexing2.f5net.com/source/xref/tmos-dns-bugs/ports/unbound/build/util/data/msgreply.c#67>THREAD >> <https://indexing2.f5net.com/source/s?defs=THREAD&project=tmos-dns-bugs> >> time_t < >> https://indexing2.f5net.com/source/s?defs=time_t&project=tmos-dns-bugs> >> SERVE_EXPIRED_TTL < >> https://indexing2.f5net.com/source/s?refs=SERVE_EXPIRED_TTL&project=tmos-dns-bugs> >> = 0; >> > 68 < >> https://indexing2.f5net.com/source/xref/tmos-dns-bugs/ports/unbound/build/util/data/msgreply.c#68>/** >> TTL to use for expired records */ >> > 69 < >> https://indexing2.f5net.com/source/xref/tmos-dns-bugs/ports/unbound/build/util/data/msgreply.c#69>THREAD >> <https://indexing2.f5net.com/source/s?defs=THREAD&project=tmos-dns-bugs> >> time_t < >> https://indexing2.f5net.com/source/s?defs=time_t&project=tmos-dns-bugs> >> SERVE_EXPIRED_REPLY_TTL < >> https://indexing2.f5net.com/source/s?refs=SERVE_EXPIRED_REPLY_TTL&project=tmos-dns-bugs> >> =30; >> > >> > >> > Thanks, >> > >> > Ashok >> > >> >
