--------------------- PatchSet 6151 Date: 2007/11/20 12:14:22 Author: rmartinez Branch: squid3-ipv6 Tag: (none) Log: Cleaner and readable code. (TODO in oid2addr) Members: src/snmp_core.cc:1.10.8.24->1.10.8.25 Index: squid3/src/snmp_core.cc =================================================================== RCS file: /cvsroot/squid-sf//squid3/src/snmp_core.cc,v retrieving revision 1.10.8.24 retrieving revision 1.10.8.25 diff -u -r1.10.8.24 -r1.10.8.25 --- squid3/src/snmp_core.cc 19 Nov 2007 22:34:28 -0000 1.10.8.24 +++ squid3/src/snmp_core.cc 20 Nov 2007 12:14:22 -0000 1.10.8.25 @@ -1,6 +1,6 @@ /* - * $Id: snmp_core.cc,v 1.10.8.24 2007/11/19 22:34:28 amosjeffries Exp $ + * $Id: snmp_core.cc,v 1.10.8.25 2007/11/20 12:14:22 rmartinez Exp $ * * DEBUG: section 49 SNMP support * AUTHOR: Glenn Chisholm @@ -1152,34 +1152,19 @@ void addr2oid(IPAddress &addr, oid * Dest) { - u_int i ; - u_char *cp = NULL; - struct in_addr iaddr; + struct in_addr *iaddr = (struct in_addr*)&(Dest[1]); #if USE_IPV6 - struct in6_addr i6addr; - oid code = addr.IsIPv4()? INETADDRESSTYPE_IPV4 : INETADDRESSTYPE_IPV6 ; - u_int size = (code == INETADDRESSTYPE_IPV4) ? sizeof(struct in_addr):sizeof(struct in6_addr); -#else - oid code = INETADDRESSTYPE_IPV4 ; - u_int size = sizeof(struct in_addr) ; -#endif /* USE_IPV6 */ - Dest[0] = code ; - if ( code == INETADDRESSTYPE_IPV4 ) { - addr.GetInAddr(iaddr); - cp = (u_char *) &(iaddr.s_addr); - } + struct in6_addr *i6addr = (struct in6_addr*)&(Dest[1]); + if(addr.IsIPv4()) { +#endif + Dest[0] = INETADDRESSTYPE_IPV4; + addr.GetInAddr(*iaddr); #if USE_IPV6 - else - { - addr.GetInAddr(i6addr); - cp = (u_char *) &i6addr; - } + } else { + Dest[0] = INETADDRESSTYPE_IPV6; + addr.GetInAddr(*i6addr); + } #endif - for ( i=0 ; i < size ; i++) - { - // OID's are in network order - Dest[1+i] = *cp++; - } } /*