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;
>                       }
> 

Reply via email to