Updated Branches: refs/heads/3.2.x e70f5773c -> 0d9582b67
TS-1785 Fixes to make it build with gcc-4.8, but still needs TS-1787 as well Project: http://git-wip-us.apache.org/repos/asf/trafficserver/repo Commit: http://git-wip-us.apache.org/repos/asf/trafficserver/commit/0d9582b6 Tree: http://git-wip-us.apache.org/repos/asf/trafficserver/tree/0d9582b6 Diff: http://git-wip-us.apache.org/repos/asf/trafficserver/diff/0d9582b6 Branch: refs/heads/3.2.x Commit: 0d9582b679f4f8ec6533a897f84b1510fb6cbc94 Parents: e70f577 Author: Leif Hedstrom <[email protected]> Authored: Thu May 16 14:57:54 2013 -0600 Committer: Leif Hedstrom <[email protected]> Committed: Thu May 16 14:57:54 2013 -0600 ---------------------------------------------------------------------- CHANGES | 2 ++ STATUS | 8 -------- lib/tsconfig/TsErrataUtil.cc | 5 +++-- lib/wccp/WccpLocal.h | 10 ---------- lib/wccp/WccpStatic.cc | 6 ++++-- mgmt/api/INKMgmtAPI.cc | 4 ++-- mgmt/tools/ConfigAPI.cc | 27 ++------------------------- mgmt/tools/ConfigAPI.h | 4 ---- mgmt/tools/SysAPI.cc | 37 ------------------------------------- mgmt/tools/SysAPI.h | 4 ---- proxy/Main.cc | 3 ++- proxy/logging/LogAccess.cc | 5 +---- 12 files changed, 16 insertions(+), 99 deletions(-) ---------------------------------------------------------------------- http://git-wip-us.apache.org/repos/asf/trafficserver/blob/0d9582b6/CHANGES ---------------------------------------------------------------------- diff --git a/CHANGES b/CHANGES index a405c1b..0b28c7a 100644 --- a/CHANGES +++ b/CHANGES @@ -2,6 +2,8 @@ Changes with Apache Traffic Server 3.2.5 + *) [TS-1785] Fixes to make it build with gcc-4.8.x. + *) [TS-1903] Remove JEMALLOC_P use, it seems to have been deprecated. *) [TS-1902] Remove iconv as dependency. http://git-wip-us.apache.org/repos/asf/trafficserver/blob/0d9582b6/STATUS ---------------------------------------------------------------------- diff --git a/STATUS b/STATUS index 3bd3397..a59ff52 100644 --- a/STATUS +++ b/STATUS @@ -47,14 +47,6 @@ PATCHES ACCEPTED TO BACKPORT FROM TRUNK: Patch: 5566ac76d6c4e4f5154421f1ac1077487b02d332 +1: igalic, zwoop [I double checked with John too], jpeach - Fix gcc-4.8 build problems - Jira: https://issues.apache.org/jira/browse/TS-1785 - Patch: dccdd5a44, 2bee0a2f0, dccdd5a44, b4d4f4a9a, - deb8253a, 44fff1b91 - (Patches do not apply cleanly, there is a merge conflict resolving patch in - https://issues.apache.org/jira/secure/attachment/12572264/TS-1714.diff) - +1: zwoop, arno, jpeach - Fix SSL accept performance regression Jira: https://issues.apache.org/jira/browse/TS-1538 Patch: ccc4b37b91f25c2e985f195b77369ce20e2e8e81 http://git-wip-us.apache.org/repos/asf/trafficserver/blob/0d9582b6/lib/tsconfig/TsErrataUtil.cc ---------------------------------------------------------------------- diff --git a/lib/tsconfig/TsErrataUtil.cc b/lib/tsconfig/TsErrataUtil.cc index d1d387d..a234dcf 100644 --- a/lib/tsconfig/TsErrataUtil.cc +++ b/lib/tsconfig/TsErrataUtil.cc @@ -126,7 +126,8 @@ Errata log_errno(Errata::Code code, char const* text) { static size_t const SIZE = 1024; char buffer[SIZE]; - return logf(code, "%s [%d] %s", text, errno, strerror_r(errno, buffer, SIZE)); + NOWARN_UNUSED_RETURN(strerror_r(errno, buffer, SIZE)); + return logf(code, "%s [%d] %s", text, errno, buffer); } Errata @@ -140,7 +141,7 @@ vlogf_errno(Errata& errata, Errata::Id id, Errata::Code code, char const* format n = vsnprintf(t_buffer, T_SIZE, format, rest); if (0 <= n && n < T_SIZE) { // still have room. - strerror_r(e, e_buffer, E_SIZE); + NOWARN_UNUSED_RETURN(strerror_r(e, e_buffer, E_SIZE)); n += snprintf(t_buffer + n, T_SIZE - n, "[%d] %s", e, e_buffer); } errata.push(id, code, t_buffer); http://git-wip-us.apache.org/repos/asf/trafficserver/blob/0d9582b6/lib/wccp/WccpLocal.h ---------------------------------------------------------------------- diff --git a/lib/wccp/WccpLocal.h b/lib/wccp/WccpLocal.h index b8a83ea..e20ad4b 100644 --- a/lib/wccp/WccpLocal.h +++ b/lib/wccp/WccpLocal.h @@ -1565,12 +1565,6 @@ public: Bucket const& bucket( int idx ///< Index of target bucket. ) const; - /** Compare a set of buckets. - @return @c true if the buckets are the same, @c false otherwise. - */ - bool compare( - Bucket const buckets[N_BUCKETS] ///< Buckets to compare. - ) const; //@} /// Fill out the component from an @c Assignment. @@ -3456,10 +3450,6 @@ CompWithHeader<T>::checkHeader(MsgBuffer const& buffer, CompType ect) { inline AssignInfoComp::Bucket& AssignInfoComp::bucket(int idx) { return m_buckets[idx]; } inline AssignInfoComp::Bucket const& AssignInfoComp::bucket(int idx) const{ return m_buckets[idx]; } -inline bool AssignInfoComp::compare(Bucket const buckets[N_BUCKETS]) const { - return 0 == memcmp(buckets, m_buckets, sizeof(buckets)); -} - inline RouterViewComp::RouterViewComp() : m_cache_count(0) { memset(m_cache_ids, 0, sizeof(m_cache_ids)); http://git-wip-us.apache.org/repos/asf/trafficserver/blob/0d9582b6/lib/wccp/WccpStatic.cc ---------------------------------------------------------------------- diff --git a/lib/wccp/WccpStatic.cc b/lib/wccp/WccpStatic.cc index 3030601..83444b9 100644 --- a/lib/wccp/WccpStatic.cc +++ b/lib/wccp/WccpStatic.cc @@ -22,6 +22,7 @@ # include "WccpLocal.h" # include "WccpMeta.h" +# include "ink_error.h" # include <sys/ioctl.h> # include <sys/socket.h> # include <net/if.h> @@ -147,7 +148,8 @@ ts::Errata log_errno(ts::Errata::Code code, char const* text) { static size_t const SIZE = 1024; char buffer[SIZE]; - return logf(code, "%s [%d] %s", text, errno, strerror_r(errno, buffer, SIZE)); + NOWARN_UNUSED_RETURN(strerror_r(errno, buffer, SIZE)); + return logf(code, "%s [%d] %s", text, errno, buffer); } ts::Errata @@ -162,7 +164,7 @@ vlogf_errno(ts::Errata::Code code, char const* format, va_list& rest) { n = vsnprintf(t_buffer, T_SIZE, format, rest); if (0 <= n && n < T_SIZE) { // still have room. - strerror_r(e, e_buffer, E_SIZE); + NOWARN_UNUSED_RETURN(strerror_r(e, e_buffer, E_SIZE)); n += snprintf(t_buffer + n, T_SIZE - n, "[%d] %s", e, e_buffer); } err.push(ts::Errata::Id(0), code, t_buffer); http://git-wip-us.apache.org/repos/asf/trafficserver/blob/0d9582b6/mgmt/api/INKMgmtAPI.cc ---------------------------------------------------------------------- diff --git a/mgmt/api/INKMgmtAPI.cc b/mgmt/api/INKMgmtAPI.cc index d1f5fa0..432f952 100644 --- a/mgmt/api/INKMgmtAPI.cc +++ b/mgmt/api/INKMgmtAPI.cc @@ -2435,8 +2435,8 @@ closeAllFds() // to root if (getuid() != 0) { // if not super user, need to upgrade to root //printf("before upgrade:current uid%d, euid %d\n", getuid(), geteuid()); fflush(stdout); - seteuid(0); - setreuid(0, 0); + if(seteuid(0) != 0 || setreuid(0, 0) != 0) + perror("[closeAllFds] unable to restore root privilege."); //printf("after upgrade:current uid %d, euid %d\n", getuid(), geteuid()); fflush(stdout); } http://git-wip-us.apache.org/repos/asf/trafficserver/blob/0d9582b6/mgmt/tools/ConfigAPI.cc ---------------------------------------------------------------------- diff --git a/mgmt/tools/ConfigAPI.cc b/mgmt/tools/ConfigAPI.cc index 67e0bb9..1639d92 100644 --- a/mgmt/tools/ConfigAPI.cc +++ b/mgmt/tools/ConfigAPI.cc @@ -636,30 +636,6 @@ Config_SetNTP_Off(void) return Time_SetNTP_Off(); } -int -Config_User_Root(int *old_euid) -{ - return Sys_User_Root(old_euid); -} - -int -Config_User_Inktomi(int euid) -{ - return Sys_User_Inktomi(euid); -} - -int -Config_Grp_Root(int *old_egid) -{ - return Sys_Grp_Root(old_egid); -} - -int -Config_Grp_Inktomi(int egid) -{ - return Sys_Grp_Inktomi(egid); -} - #if defined(linux) int Config_DisableInterface(char *eth) @@ -831,7 +807,8 @@ Config_RestoreNetConfig(char *file) ats_free(TagValue); } - setreuid(old_euid, old_euid); //happens only for floppy config + if(setreuid(old_euid, old_euid) != 0) + perror("Config_RestoreNetConfig set old uid failed: "); //happens only for floppy config return 0; } http://git-wip-us.apache.org/repos/asf/trafficserver/blob/0d9582b6/mgmt/tools/ConfigAPI.h ---------------------------------------------------------------------- diff --git a/mgmt/tools/ConfigAPI.h b/mgmt/tools/ConfigAPI.h index 62da925..00303b1 100644 --- a/mgmt/tools/ConfigAPI.h +++ b/mgmt/tools/ConfigAPI.h @@ -85,9 +85,5 @@ extern int Config_GetXmlTagValue(char *XmlTagName, char **XmlTagValue, char *Xml extern int Config_SetSMTP_Server(char *server); extern int Config_GetSMTP_Server(char *server); extern int Config_FloppyNetRestore(); -extern int Config_User_Root(int *old_euid); -extern int Config_User_Inktomi(int euid); -extern int Config_Grp_Root(int *old_egid); -extern int Config_Grp_Inktomi(int egid); extern int Config_DisableInterface(char *eth); #endif // _CONFIG_API_H http://git-wip-us.apache.org/repos/asf/trafficserver/blob/0d9582b6/mgmt/tools/SysAPI.cc ---------------------------------------------------------------------- diff --git a/mgmt/tools/SysAPI.cc b/mgmt/tools/SysAPI.cc index 5dd9498..37f80b6 100644 --- a/mgmt/tools/SysAPI.cc +++ b/mgmt/tools/SysAPI.cc @@ -1184,43 +1184,6 @@ Net_DisableInterface(char *interface) #endif /* linux */ -int -Sys_User_Root(int *old_euid) -{ - - *old_euid = getuid(); - seteuid(0); - setreuid(0, 0); - - return 0; -} - -int -Sys_User_Inktomi(int euid) -{ -// bug 50394 - preserve saved uid as root, -// while changing effiective and real uid to input parameter value - setreuid(euid, 0); - seteuid(euid); - return 0; -} - -int -Sys_Grp_Root(int *old_egid) -{ - *old_egid = getegid(); - setregid(0, *old_egid); - return 0; -} - -int -Sys_Grp_Inktomi(int egid) -{ - setregid(egid, egid); - return 0; -} - - bool http://git-wip-us.apache.org/repos/asf/trafficserver/blob/0d9582b6/mgmt/tools/SysAPI.h ---------------------------------------------------------------------- diff --git a/mgmt/tools/SysAPI.h b/mgmt/tools/SysAPI.h index 3417518..aead11c 100644 --- a/mgmt/tools/SysAPI.h +++ b/mgmt/tools/SysAPI.h @@ -74,10 +74,6 @@ extern int Time_GetNTP_Status(char *status, size_t status_len); extern int Time_SetNTP_Off(void); extern int Net_GetSMTP_Server(char *server); extern int Net_SetSMTP_Server(char *server); -extern int Sys_User_Root(int *old_euid); -extern int Sys_User_Inktomi(int euid); -extern int Sys_Grp_Root(int *old_egid); -extern int Sys_Grp_Inktomi(int egid); extern int Net_DisableInterface(char *interface); #endif // _SYS_API_H http://git-wip-us.apache.org/repos/asf/trafficserver/blob/0d9582b6/proxy/Main.cc ---------------------------------------------------------------------- diff --git a/proxy/Main.cc b/proxy/Main.cc index 90337c9..c347da1 100644 --- a/proxy/Main.cc +++ b/proxy/Main.cc @@ -1310,7 +1310,8 @@ change_uid_gid(const char *user) char *buf = (char *)ats_malloc(buflen); - if (0 != geteuid() && 0 == getuid()) seteuid(0); // revert euid if possible. + if (0 != geteuid() && 0 == getuid()) + NOWARN_UNUSED_RETURN(seteuid(0)); // revert euid if possible. if (0 != geteuid()) { // Not root so can't change user ID. Logging isn't operational yet so // we have to write directly to stderr. Perhaps this should be fatal? http://git-wip-us.apache.org/repos/asf/trafficserver/blob/0d9582b6/proxy/logging/LogAccess.cc ---------------------------------------------------------------------- diff --git a/proxy/logging/LogAccess.cc b/proxy/logging/LogAccess.cc index 4a0b106..44c0cfa 100644 --- a/proxy/logging/LogAccess.cc +++ b/proxy/logging/LogAccess.cc @@ -658,10 +658,7 @@ LogAccess::marshal_record(char *record, char *buf) #define LOG_FLOAT RECD_FLOAT #define LOG_STRING RECD_STRING - typedef RecInt LogInt; - typedef RecCounter LogCounter; typedef RecFloat LogFloat; - typedef RecString LogString; RecDataT stype = RECD_NULL; bool found = false; @@ -676,7 +673,7 @@ LogAccess::marshal_record(char *record, char *buf) // conversion below, if this ever changes we should modify // accordingly // - ink_debug_assert(sizeof(int64_t) >= sizeof(LogInt) && sizeof(int64_t) >= sizeof(LogCounter)); + ink_debug_assert(sizeof(int64_t) >= sizeof(RecInt) && sizeof(int64_t) >= sizeof(RecCounter)); // so that a 64 bit integer will fit (including sign and eos) //
