You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@zookeeper.apache.org by "Yubing Yin (Updated) (JIRA)" <ji...@apache.org> on 2012/04/01 10:24:22 UTC
[jira] [Updated] (ZOOKEEPER-1439) c sdk: core in log_env for lack
of checking the output argument *pwp* of getpwuid_r
[ https://issues.apache.org/jira/browse/ZOOKEEPER-1439?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]
Yubing Yin updated ZOOKEEPER-1439:
----------------------------------
Attachment: ZOOKEEPER-1439.patch
check pwp to ensure passwd entry is found, after getpwuid_r, fix core in log_env.
> c sdk: core in log_env for lack of checking the output argument *pwp* of getpwuid_r
> -----------------------------------------------------------------------------------
>
> Key: ZOOKEEPER-1439
> URL: https://issues.apache.org/jira/browse/ZOOKEEPER-1439
> Project: ZooKeeper
> Issue Type: Bug
> Components: c client
> Affects Versions: 3.4.3, 3.3.5
> Environment: linux
> Reporter: Yubing Yin
> Labels: zookeeper
> Attachments: ZOOKEEPER-1439.patch
>
> Original Estimate: 1h
> Remaining Estimate: 1h
>
> Man of getpwuid_r "return a pointer to a passwd structure, or NULL if the matching entry is not found or an error occurs",
> "The getpwnam_r() and getpwuid_r() functions return zero on success.", it means entry may not be found when getpwuid_r success.
> In log_env of zookeeper.c in c sdk:
> {{if (!getpwuid_r(uid, &pw, buf, sizeof(buf), &pwp)) {}}
> {{LOG_INFO(("Client environment:user.home=%s", pw.pw_dir));}}
> {{}}}
> pwp is not checked to ensure entry is found, pw.pw_dir is not initialized in this case, core happens in LOG_INFO.
--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators: https://issues.apache.org/jira/secure/ContactAdministrators!default.jspa
For more information on JIRA, see: http://www.atlassian.com/software/jira