On Wednesday 18 April 2007 01:36, Dave Shield wrote:
> OK - I'm beginning to see what might be going wrong.
>
> Note that Flags is 0x0, so according to RFC 2741, section 6.1:
>
>             The NETWORK_BYTE_ORDER bit applies to all multi-byte integer
>             values in the entire AgentX packet, including the remaining
>             header fields.  If set, then network byte order (most
>             significant byte first; "big endian") is used.  If not set,
>             then least significant byte first ("little endian") is used.
>
> this packet should be using "little endian" encoding.
>
>
> Then later in the dump, after
>
> Apr 17 15:44:07 zaphod snmpd[10347]: dumpv_recv:
>           OID SNMPv2-SMI::enterprises.424242.1.2.1.0
>
> comes
>
> Apr 17 15:44:07 zaphod snmpd[10347]: dumpx_recv:          00 00 00 00
> Apr 17 15:44:07 zaphod snmpd[10347]: dumpv_recv:          Integer:^I0
> (0x00) Apr 17 15:44:07 zaphod snmpd[10347]: dumpx_recv:          92 10 00
> 00 Apr 17 15:44:07 zaphod snmpd[10347]: dumpv_recv:
> Integer:^I4242 (0x1092)
>
> which is the value of this counter.
> The second four octets contain the desired value (4242),
> but remember that we're working in 'little endian' order, so
> these actually represent the upper 32-bits of a 64-bit value.
>    The full value is therefore  0x 00001092 00000000
> i.e. 18219251269632
>
> which is exactly the value being returned by the master agent:
>
> Apr 17 15:44:07 zaphod snmpd[10347]: dumph_send: PDU-RESPONSE
> Apr 17 15:44:07 zaphod snmpd[10347]: dumph_send: VarBind
> Apr 17 15:44:07 zaphod snmpd[10347]: dumph_send: Value
> Apr 17 15:44:07 zaphod snmpd[10347]: dumpx_send:      46 06 10 92 00 00
> Apr 17 15:44:07 zaphod snmpd[10347]: dumpv_send:      U64:   0
> 18219251269632
>
>
> So the problem lies with the subagent, in the encoding of the response.
> It's got the two halves of the counter64 value the wrong way round.
>
> I've looked at the code for encoding Counter64 values (in
> agentx/protocol.c) and at first glance it looks OK.
>
> Can you try setting the same '-Ddump' debugging flag for your AgentX
> subagent, and report what this displays when sending this response?
> (Don't bother zipping up the log - raw text should be fine.)

Here it is.

> Dave

Lothar
-- 
Lothar Werzinger Dipl.-Ing. Univ.
framework & platform architect
Tradescape Inc.
111 West St. John Street, Suite 200
San Jose, Ca 95113
web: http://www.tradescape.biz
dumpx_recv:20 00 00 00
dumpv_recv:  Integer:   32 (0x20)
dumph_recv: AgentX Header
dumph_recv:   Version
dumpx_recv:    01
dumpv_recv:      Version:       1
dumph_recv:   Command
dumpx_recv:    05
dumpv_recv:      Command:       5 (Get)
dumph_recv:   Flags
dumpx_recv:    00
dumpv_recv:      Flags: 0x0
dumph_recv:   Reserved Byte
dumpx_recv:    00
dumpv_recv:      Reserved:      0x0
dumph_recv:   Session ID
dumpx_recv:    06 00 00 00
dumpv_recv:      Integer:       6 (0x06)
dumph_recv:   Transaction ID
dumpx_recv:    01 00 00 00
dumpv_recv:      Integer:       1 (0x01)
dumph_recv:   Packet ID
dumpx_recv:    02 00 00 00
dumpv_recv:      Integer:       2 (0x02)
dumph_recv:   Payload Length
dumpx_recv:    20 00 00 00
dumpv_recv:      Integer:       32 (0x20)
dumph_recv:   PDU
dumph_recv:       Search Range
dumph_recv:         OID Header
dumpx_recv:          06 04 00 00
dumpv_recv:            # subids:        6 (0x06)
dumpv_recv:             prefix:         4 (0x04)
dumpv_recv:             inclusive:      0 (0x00)
dumph_recv:         OID Segments
dumpx_recv:          01 00 00 00
dumpv_recv:            Integer: 1 (0x01)
dumpx_recv:          32 79 06 00
dumpv_recv:            Integer: 424242 (0x67932)
dumpx_recv:          01 00 00 00
dumpv_recv:            Integer: 1 (0x01)
dumpx_recv:          02 00 00 00
dumpv_recv:            Integer: 2 (0x02)
dumpx_recv:          01 00 00 00
dumpv_recv:            Integer: 1 (0x01)
dumpx_recv:          00 00 00 00
dumpv_recv:            Integer: 0 (0x00)
dumpv_recv:         OID: iso.3.6.1.4.1.424242.1.2.1.0
dumph_recv:         OID Header
dumpx_recv:          00 00 00 00
dumpv_recv:            # subids:        0 (0x00)
dumpv_recv:             prefix:         0 (0x00)
dumpv_recv:             inclusive:      0 (0x00)
dumph_recv:         OID Segments
dumpv_recv:           OID: NULL (0.0)
dump_send_callback_transport: PDU: command = 160, errstat = 0, errindex = 0
dump_send_callback_transport:   var 2:iso.3.6.1.4.1.424242.1.2.1.0 = Variable 
has bad type
dump_recv_callback_transport: PDU: command = 160, errstat = 0, errindex = 0
dump_recv_callback_transport:   var 2:iso.3.6.1.4.1.424242.1.2.1.0 = Variable 
has bad type
balancemanager: section=balancemanager, context=, name=totalBalances
balancemanager: requested mode (160) in balancemanager_handle_totalBalances
TRACE - ENTER: uint64Handler
DEBUG - rc_section=balancemanager, rc_context=, rc_name=totalBalances
DEBUG - uint64Handler done
TRACE - EXIT:  uint64Handler
balancemanager: setting value=(0,4242) sizeof(counter)=16 as ASN_COUNTER64
balancemanager: leaving balancemanager_handle_totalBalances (SNMP_ERR_NOERROR)
dump_send_callback_transport: PDU: command = 162, errstat = 0, errindex = 0
dump_send_callback_transport:   var 2:iso.3.6.1.4.1.424242.1.2.1.0 = Counter64: 
4242
dump_recv_callback_transport: PDU: command = 162, errstat = 0, errindex = 0
dump_recv_callback_transport:   var 2:iso.3.6.1.4.1.424242.1.2.1.0 = Counter64: 
4242
dumph_send: AgentX Header
dumpx_send:  01 12 00 00
dumpv_send:    Version: 1
dumpv_send:     Command:        18 (Response)
dumpv_send:     Flags:  00
dumph_send:   Session ID
dumpx_send:    06 00 00 00
dumpv_send:      Integer:       6 (0x06)
dumph_send:   Transaction ID
dumpx_send:    01 00 00 00
dumpv_send:      Integer:       1 (0x01)
dumph_send:   Request ID
dumpx_send:    02 00 00 00
dumpv_send:      Integer:       2 (0x02)
dumph_send:   Dummy Length :-(
dumpx_send:    00 00 00 00
dumpv_send:      Integer:       0 (0x00)
dumph_send: AgentX Payload
dumpx_send:  00 00 00 00
dumpv_send:    Integer: 0 (0x00)
dumph_send:   Response
dumpx_send:    00 00 00 00
dumpv_send:      sysUpTime:     0
dumpx_send:  00 00
dumpv_send:    Short:   0 (0x00)
dumpx_send:  00 00
dumpv_send:    Short:   0 (0x00)
dumph_send:   Response errors
dumpx_send:    00 00 00 00
dumpv_send:      errstat:       0
dumpv_send:       errindex:     0
dumph_send:   Get* Variable List
dumph_send:     VarBind
dumph_send:       type
dumpx_send:        46 00
dumpv_send:          Short:     70 (0x46)
dumph_send:       name
dumpv_send:         OID: iso.3.6.1.4.1.424242.1.2.1.0
dumph_send:         OID Header
dumpx_send:          06 04 00 00
dumpv_send:            # subids:        6 (0x06)
dumpv_send:             prefix: 4 (0x04)
dumpv_send:             inclusive:      0 (0x00)
dumph_send:         OID Segments
dumpx_send:          01 00 00 00
dumpv_send:            Integer: 1 (0x01)
dumpx_send:          32 79 06 00
dumpv_send:            Integer: 424242 (0x67932)
dumpx_send:          01 00 00 00
dumpv_send:            Integer: 1 (0x01)
dumpx_send:          02 00 00 00
dumpv_send:            Integer: 2 (0x02)
dumpx_send:          01 00 00 00
dumpv_send:            Integer: 1 (0x01)
dumpx_send:          00 00 00 00
dumpv_send:            Integer: 0 (0x00)
dumph_send:       value
dumph_send:         Build Counter64 (low, high)
dumpx_send:          92 10 00 00
dumpv_send:            Integer: 4242 (0x1092)
dumpx_send:          00 00 00 00
dumpv_send:            Integer: 0 (0x00)
dumpx_send:  30 00 00 00
dumpv_send:    Integer: 48 (0x30)
dumph_send:   AgentX Header
dumpx_send:    01 0D 00 00
dumpv_send:      Version:       1
dumpv_send:       Command:      13 (Ping)
dumpv_send:       Flags:        00
dumph_send:     Session ID
dumpx_send:      06 00 00 00
dumpv_send:        Integer:     6 (0x06)
dumph_send:     Transaction ID
dumpx_send:      00 00 00 00
dumpv_send:        Integer:     0 (0x00)
dumph_send:     Request ID
dumpx_send:      4E 11 B5 67
dumpv_send:        Integer:     1739919694 (0x67B5114E)
dumph_send:     Dummy Length :-(
dumpx_send:      00 00 00 00
dumpv_send:        Integer:     0 (0x00)
dumph_send:   AgentX Payload
dumpx_send:  00 00 00 00
dumpv_send:    Integer: 0 (0x00)
dumpx_recv:  08 00 00 00
dumpv_recv:    Integer: 8 (0x08)
dumph_recv:   AgentX Header
dumph_recv:     Version
dumpx_recv:      01
dumpv_recv:        Version:     1
dumph_recv:     Command
dumpx_recv:      12
dumpv_recv:        Command:     18 (Response)
dumph_recv:     Flags
dumpx_recv:      00
dumpv_recv:        Flags:       0x0
dumph_recv:     Reserved Byte
dumpx_recv:      00
dumpv_recv:        Reserved:    0x0
dumph_recv:     Session ID
dumpx_recv:      06 00 00 00
dumpv_recv:        Integer:     6 (0x06)
dumph_recv:     Transaction ID
dumpx_recv:      00 00 00 00
dumpv_recv:        Integer:     0 (0x00)
dumph_recv:     Packet ID
dumpx_recv:      4E 11 B5 67
dumpv_recv:        Integer:     1739919694 (0x67B5114E)
dumph_recv:     Payload Length
dumpx_recv:      08 00 00 00
dumpv_recv:        Integer:     8 (0x08)
dumph_recv:     PDU
dumpx_recv:        82 A7 01 00
dumpv_recv:          Integer:   108418 (0x1A782)
dumpx_recv:        00 00
dumpv_recv:          Short:     0 (0x00)
dumpx_recv:        00 00
dumpv_recv:          Short:     0 (0x00)
dumph_recv:         VarBindList
-------------------------------------------------------------------------
This SF.net email is sponsored by DB2 Express
Download DB2 Express C - the FREE version of DB2 express and take
control of your XML. No limits. Just data. Click to get it now.
http://sourceforge.net/powerbar/db2/
_______________________________________________
Net-snmp-users mailing list
[email protected]
Please see the following page to unsubscribe or change other options:
https://lists.sourceforge.net/lists/listinfo/net-snmp-users

Reply via email to