You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@zookeeper.apache.org by "Shevek (JIRA)" <ji...@apache.org> on 2013/03/28 22:01:20 UTC
[jira] [Created] (ZOOKEEPER-1677) Misuse of INET_ADDRSTRLEN
Shevek created ZOOKEEPER-1677:
---------------------------------
Summary: Misuse of INET_ADDRSTRLEN
Key: ZOOKEEPER-1677
URL: https://issues.apache.org/jira/browse/ZOOKEEPER-1677
Project: ZooKeeper
Issue Type: Bug
Affects Versions: 3.5.0
Reporter: Shevek
ZOOKEEPER-1355. Add zk.updateServerList(newServerList) (Alex Shraer, Marshall McMullen via fpj)
git-svn-id: https://svn.apache.org/repos/asf/zookeeper/trunk@1410731 13f79535-47bb-0310-9956-ffa450edef68
+int addrvec_contains(const addrvec_t *avec, const struct sockaddr_storage *addr)
+{
+ if (!avec || !addr)
+ {
+ return 0;
+ }
+
+ int i = 0;
+ for (i = 0; i < avec->count; i++)
+ {
+ if(memcmp(&avec->data[i], addr, INET_ADDRSTRLEN) == 0)
+ return 1;
+ }
+
+ return 0;
+}
Pretty sure that should be sizeof(sockaddr_storage). INET_ADDRSTRLEN is the size of the character buffer which needs to be allocated for the return value of inet_ntop, which seems to be totally wrong.
--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators
For more information on JIRA, see: http://www.atlassian.com/software/jira