> Update of cvs.devel.squid-cache.org:/cvsroot/squid/squid3/src > > Modified Files: > Tag: squid3-ipv6 > snmp_agent.cc > Log Message: > Added IPv6 MIB values > <snip>
> ! { > ! // IPv6 address doesn't have its own ASN.1 type (like IPv4 does) > ! // See: rfc2465.txt, rfc4001.txt > ! struct in6_addr iaddr6; > ! laddr.GetInAddr(iaddr6); > ! Answer = snmp_var_new(Var->name, Var->name_length); > ! Answer->type = ASN_OCTET_STR; > ! Answer->val_len = sizeof(struct in6_addr);// Use a symbolic constant. > ! Answer->val.string = (u_char *) malloc(sizeof(struct in6_addr)); > ! memcpy(Answer->val.string,&iaddr6,sizeof(struct in6_addr)); No need to memcpy twice. " struct in6_addr *iaddr6=(struct in6_addr*)Answer->val.string; laddr.GetInAddr(*iaddr6); " will do the job as nicely, with less memory, AND initialize the buffer properly as needed. Thanks SO much for taking this on. Amos