Re: [Agentx] Empty context in rfc2742
Magnus Fromreide <magfr@lysator.liu.se> Tue, 01 September 2009 22:40 UTC
Return-Path: <magfr@lysator.liu.se>
X-Original-To: agentx@core3.amsl.com
Delivered-To: agentx@core3.amsl.com
Received: from localhost (localhost [127.0.0.1]) by core3.amsl.com (Postfix) with ESMTP id 43BFA28C68B for <agentx@core3.amsl.com>; Tue, 1 Sep 2009 15:40:26 -0700 (PDT)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -1.047
X-Spam-Level:
X-Spam-Status: No, score=-1.047 tagged_above=-999 required=5 tests=[AWL=0.002, BAYES_00=-2.599, HELO_EQ_SE=0.35, J_CHICKENPOX_15=0.6, J_CHICKENPOX_17=0.6]
Received: from mail.ietf.org ([64.170.98.32]) by localhost (core3.amsl.com [127.0.0.1]) (amavisd-new, port 10024) with ESMTP id NWErSx-OudNk for <agentx@core3.amsl.com>; Tue, 1 Sep 2009 15:40:25 -0700 (PDT)
Received: from mail.lysator.liu.se (mail.lysator.liu.se [130.236.254.3]) by core3.amsl.com (Postfix) with ESMTP id 2518C3A6C55 for <agentx@ietf.org>; Tue, 1 Sep 2009 15:40:25 -0700 (PDT)
Received: from mail.lysator.liu.se (localhost [127.0.0.1]) by mail.lysator.liu.se (Postfix) with ESMTP id 3D65340003; Wed, 2 Sep 2009 00:39:56 +0200 (CEST)
Received: by mail.lysator.liu.se (Postfix, from userid 1674) id 3105F40011; Wed, 2 Sep 2009 00:39:56 +0200 (CEST)
Received: from [83.252.226.253] (c83-252-226-253.bredband.comhem.se [83.252.226.253]) (using TLSv1 with cipher DHE-RSA-AES256-SHA (256/256 bits)) (No client certificate requested) by mail.lysator.liu.se (Postfix) with ESMTP id D1DDE40003; Wed, 2 Sep 2009 00:39:55 +0200 (CEST)
From: Magnus Fromreide <magfr@lysator.liu.se>
To: Randy Presuhn <randy_presuhn@mindspring.com>
In-Reply-To: <007801ca2a6e$2bc23f00$6801a8c0@oemcomputer>
References: <1251623843.6043.6.camel@sara.home> <8a0268750908301048i2b4a477dod97e582238098bbe@mail.gmail.com> <1251668476.3736.14.camel@sara.home> <8a0268750908301523o390d9ff1kc951bfb24d49c9e1@mail.gmail.com> <1251750777.5149.52.camel@sara.home> <007801ca2a6e$2bc23f00$6801a8c0@oemcomputer>
Content-Type: text/plain
Date: Wed, 02 Sep 2009 00:40:31 +0200
Message-Id: <1251844831.3745.13.camel@sara.home>
Mime-Version: 1.0
X-Mailer: Evolution 2.26.3
Content-Transfer-Encoding: 7bit
X-Virus-Scanned: ClamAV using ClamSMTP
Cc: agentx@ietf.org
Subject: Re: [Agentx] Empty context in rfc2742
X-BeenThere: agentx@ietf.org
X-Mailman-Version: 2.1.9
Precedence: list
List-Id: SNMP Agent Extensibility <agentx.ietf.org>
List-Unsubscribe: <https://www.ietf.org/mailman/listinfo/agentx>, <mailto:agentx-request@ietf.org?subject=unsubscribe>
List-Archive: <http://www.ietf.org/mail-archive/web/agentx>
List-Post: <mailto:agentx@ietf.org>
List-Help: <mailto:agentx-request@ietf.org?subject=help>
List-Subscribe: <https://www.ietf.org/mailman/listinfo/agentx>, <mailto:agentx-request@ietf.org?subject=subscribe>
X-List-Received-Date: Tue, 01 Sep 2009 22:40:26 -0000
On Mon, 2009-08-31 at 12:06 -0700, Randy Presuhn wrote: > Hi - > > > From: "Magnus Fromreide" <magfr@lysator.liu.se> > > To: "Mark Ellison" <ellison@ieee.org> > > Cc: <agentx@ietf.org> > > Sent: Monday, August 31, 2009 1:32 PM > > Subject: Re: [Agentx] Empty context in rfc2742 > ... > > While this is true it is also true that the agent is free to map the > > AgentX-contexts to SNMP-contexts however it wish so I think this impose > > no limits on the values of AgentX-contexts. > > This would be an incredibly bad idea. Perhaps section 6.1.1 of RFC 2741 > could be more explicit, but to my knowledge no one has ever come to a > different conclusion in deciding how to implement this. Oh well, my mind must be twisted. I would probably have treated the default context as the default value for all contexts and then each distinct context would override it but I haven't given the consequences of that much thought. Now I am aware of the intended way. > Furthermore, 6.1.1 of RFC 2741 says: > If the NON_DEFAULT_CONTEXT bit in the AgentX header field h.flags is > clear, then there is no context field in the PDU, and the operation > refers to the default context. (This does not mean there is a zero- > length Octet String, it means there is no Octet String present.) If > the NON_DEFAULT_CONTEXT bit is set, then a context field immediately > follows the AgentX header, and the operation refers to that specific > context. The context is represented as an Octet String. There are > no constraints on its length or contents. > > What does this mean? It means that there happen to be two ways > to encode the default context. > (1) set the NON_DEFAULT_CONTEXT bit to 0, and omit the > context field which would otherwise immediately follow. > (2) set the NON_DEFAULT_CONTEXT bit to 1, and follow it > with the properly encoded zero-length string. > > Obviously, (2) is not encouraged, since (1) provides a more efficient > encoding and we all know how parsimonious AgentX encodings are. :-) Well, from the discussion I think it is obvious that I think that could be stated clearer. Thanks for your patience. > > > > EXAMPLE: > > > > Assume that two AgentX registrations are made to a master agent that > > implements rfc 2741 and rfc 2742. > > > > 1: { r.flags = 0, <no r.context>, ... } > > 2: { r.flags = NON_DEFAULT_CONTEXT, r.context = "", ... } > > > > Now as I read 2742 the value of the agentxRegContext column for > > registration #1 is "" > > > > The question is what the value of the agentxRegContext column for > > registration #2 should be? > > Exactly the same. These are two attempts to register for the same > context. > > I seem to recall a long-ago discussion about whether the latter should > be treated as a protocol error. I don't recall the outcome of that discussion. > As an implementor, my inclination would be to accept it, but never generate it. I would prefer to generate an error in order to make for a less forgiving protocol so that errors are caught earlier and the protocol is kept smaller but I know that is against the "be lenient in what you accept" motto. /MF
- [Agentx] Empty context in rfc2742 Magnus Fromreide
- Re: [Agentx] Empty context in rfc2742 Mark Ellison
- Re: [Agentx] Empty context in rfc2742 Magnus Fromreide
- Re: [Agentx] Empty context in rfc2742 Mark Ellison
- Re: [Agentx] Empty context in rfc2742 Magnus Fromreide
- Re: [Agentx] Empty context in rfc2742 Mark Ellison
- Re: [Agentx] Empty context in rfc2742 Randy Presuhn
- Re: [Agentx] Empty context in rfc2742 Magnus Fromreide