On Sat, Oct 28, 2023 at 09:45:25AM +0200, Martijn van Duren wrote: > RFC 2741 section 5.2 states that searchrange.end is non-inclusive. > appl_varbind_valid() and appl_response() currently tests inclusive. > The appl_varbind_valid() case is for backends that support > searchrange.end (like agentx) and the appl_response() case for > those who do not and need a fixup (basically everything else). > > OK?
ok tb > > martijn > > diff --git a/application.c b/application.c > index 33143d6..b3a2603 100644 > --- a/application.c > +++ b/application.c > @@ -1100,7 +1100,7 @@ appl_response(struct appl_backend *backend, int32_t > requestid, > */ > eomv |= !backend->ab_range && next && > ober_oid_cmp(&(vb->av_oid), > - &(origvb->avi_varbind.av_oid_end)) > 0; > + &(origvb->avi_varbind.av_oid_end)) >= 0; > /* RFC 3584 section 4.2.2.1 */ > if (ureq->aru_pduversion == SNMP_V1 && > vb->av_value != NULL && > @@ -1283,7 +1283,7 @@ appl_varbind_valid(struct appl_varbind *varbind, > } > } > if (range && ober_oid_cmp(&(varbind->av_oid), > - &(request->avi_varbind.av_oid_end)) > 0) { > + &(request->avi_varbind.av_oid_end)) >= 0) { > *errstr = "end oid not honoured"; > return 0; > } >