You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@trafficserver.apache.org by ig...@apache.org on 2013/12/05 22:01:00 UTC
git commit: TS-2408: fix double free of proxy.config.admin.user_id
Updated Branches:
refs/heads/4.1.x 87ef044cf -> d7144dfe3
TS-2408: fix double free of proxy.config.admin.user_id
Conflicts:
CHANGES
Project: http://git-wip-us.apache.org/repos/asf/trafficserver/repo
Commit: http://git-wip-us.apache.org/repos/asf/trafficserver/commit/d7144dfe
Tree: http://git-wip-us.apache.org/repos/asf/trafficserver/tree/d7144dfe
Diff: http://git-wip-us.apache.org/repos/asf/trafficserver/diff/d7144dfe
Branch: refs/heads/4.1.x
Commit: d7144dfe3e6ec25783838cf64351bab7cb672e69
Parents: 87ef044
Author: James Peach <jp...@apache.org>
Authored: Thu Nov 28 10:17:58 2013 -0800
Committer: Igor Galić <i....@brainsware.org>
Committed: Thu Dec 5 21:59:45 2013 +0100
----------------------------------------------------------------------
CHANGES | 2 ++
lib/ts/ink_resource.h | 2 +-
proxy/Main.cc | 4 +---
3 files changed, 4 insertions(+), 4 deletions(-)
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/trafficserver/blob/d7144dfe/CHANGES
----------------------------------------------------------------------
diff --git a/CHANGES b/CHANGES
index 71e089c..d8339ac 100644
--- a/CHANGES
+++ b/CHANGES
@@ -6,6 +6,8 @@ Changes with Apache Traffic Server 4.1.1
*) [TS-2384] Fix regression in key-lookup code between 4.0.x and 4.1.x
+ *) [TS-2408] Fix double free of proxy.config.admin.user_id.
+
*) [TS-2340] Fix TextLogObject log rolling.
Author: bettydramit <b1...@gmail.com>
http://git-wip-us.apache.org/repos/asf/trafficserver/blob/d7144dfe/lib/ts/ink_resource.h
----------------------------------------------------------------------
diff --git a/lib/ts/ink_resource.h b/lib/ts/ink_resource.h
index 0fdf2e2..ba4f17a 100644
--- a/lib/ts/ink_resource.h
+++ b/lib/ts/ink_resource.h
@@ -81,7 +81,7 @@ public:
/// Construct and initialized with memory for @a n instances of @a T.
explicit xptr(size_t n)
- : m_ptr(ats_malloc(sizeof(T) * n))
+ : m_ptr((T *)ats_malloc(sizeof(T) * n))
{ }
/// Destructor - free memory held by this instance.
http://git-wip-us.apache.org/repos/asf/trafficserver/blob/d7144dfe/proxy/Main.cc
----------------------------------------------------------------------
diff --git a/proxy/Main.cc b/proxy/Main.cc
index ed9141b..b98e1f2 100644
--- a/proxy/Main.cc
+++ b/proxy/Main.cc
@@ -1363,7 +1363,7 @@ main(int /* argc ATS_UNUSED */, char **argv)
if (!num_task_threads)
TS_ReadConfigInteger(num_task_threads, "proxy.config.task_threads");
- char *user = (char *)ats_malloc(MAX_LOGIN);
+ xptr<char> user(MAX_LOGIN + 1);
*user = '\0';
admin_user_p = ((REC_ERR_OKAY == TS_ReadConfigString(user, "proxy.config.admin.user_id", MAX_LOGIN)) &&
@@ -1380,7 +1380,6 @@ main(int /* argc ATS_UNUSED */, char **argv)
PreserveCapabilities();
change_uid_gid(user);
RestrictCapabilities();
- ats_free(user);
}
# endif
@@ -1679,7 +1678,6 @@ main(int /* argc ATS_UNUSED */, char **argv)
if (admin_user_p) {
change_uid_gid(user);
DebugCapabilities("server");
- ats_free(user);
}
# endif