On Mon, 2013-11-25 at 19:04 +0800, zhuyj wrote:
> On 11/25/2013 02:34 AM, Magnus Fromreide wrote:
> > On Fri, 2013-11-22 at 14:27 +0800, zhuyj wrote:
> > >
> > > 4.patch -p1 < V5-7-patches-snmpTargetParam_support_zero_OID.patch
> > snmpTargetAddrEntry.c:
> > Chunk #2 is unnecessary - setting members to 0 before freeing the
> > object they are members of.
> >
> > snmpTargetAddrEntry.h:
> > Putting the variable in the hole after nameLen will leave the size of
> > targetAddrTable_struct unchanged while the suggested location will
> > expand the size of it by 4 (or 8 on 64-bit) bytes.
> >
> > snmpTargetParamsEntry.c:
> > Chunk #2 is unnecessary - setting a member to 0 before freeing the
> > object it is a member of.
> > Chunk #9? (get_paramEntry) - it would be more efficient and correct
> > to check that nameLen == ptr->paramNameLen before memcmp'ing
> > name and paramName, in particular if nameLen < paramNameLen.
> >
> > target.c:
> > Certificate lookup under DTLS uses only the part of the name up to the
> > first '\0'.
> Hi, MF
>
> I agree with other advices from you. But I do not understand this:
> target.c:
> Certificate lookup under DTLS uses only the part of the name up to the
> first '\0'.
>
> Would you like to explain this in details? Thanks a lot.
Sure.
target/target.c:205
cert = netsnmp_cert_find(NS_CERT_IDENTITY, NS_CERTKEY_TARGET_PARAM,
targaddrs->params);
Now, assume that targaddrs->params contains embedded NUL characters.
>
> > > patch -p1 < V5-7-patches-fix-param-length.patch
> > > patch -p1 < V5-7-patches-conf-support.patch
> > Why the memset's before read_config_save_octet_string?
> An example is as below.
>
> If variable tmp is used as the line1, there are 6 'x' in this variable
> tmp.
> we will copy 4 'y' to tmp, now the variable tmp is as below line2 if
> we do not
> memset tmp. It is not what we expect.
>
> line1: tmp: xxxxxx
> line2: using: yyyyxx
You can't use NUL as a end of string marker since NUL is a perfectly
valid character. When handing strings to printf you get around that with
printf("%.*s", tmp, 4);
For other methods one usually have to add a method that takes a string
width.
/MF
------------------------------------------------------------------------------
Shape the Mobile Experience: Free Subscription
Software experts and developers: Be at the forefront of tech innovation.
Intel(R) Software Adrenaline delivers strategic insight and game-changing
conversations that shape the rapidly evolving mobile landscape. Sign up now.
http://pubads.g.doubleclick.net/gampad/clk?id=63431311&iu=/4140/ostg.clktrk
_______________________________________________
Net-snmp-coders mailing list
[email protected]
https://lists.sourceforge.net/lists/listinfo/net-snmp-coders