You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@trafficserver.apache.org by zw...@apache.org on 2017/11/29 22:27:03 UTC
[trafficserver] branch master updated: header_rewrite - Delete
cookies if they are empty in rm-cookie operation.
This is an automated email from the ASF dual-hosted git repository.
zwoop pushed a commit to branch master
in repository https://gitbox.apache.org/repos/asf/trafficserver.git
The following commit(s) were added to refs/heads/master by this push:
new b203b71 header_rewrite - Delete cookies if they are empty in rm-cookie operation.
b203b71 is described below
commit b203b71bc4fdb1edfb39f237c2d0bba2ad2c1848
Author: Steven Feltner <sf...@godaddy.com>
AuthorDate: Wed Nov 29 11:42:05 2017 -0700
header_rewrite - Delete cookies if they are empty in rm-cookie operation.
---
plugins/header_rewrite/operators.cc | 13 +++++++++----
1 file changed, 9 insertions(+), 4 deletions(-)
diff --git a/plugins/header_rewrite/operators.cc b/plugins/header_rewrite/operators.cc
index 160c652..417a0fb 100644
--- a/plugins/header_rewrite/operators.cc
+++ b/plugins/header_rewrite/operators.cc
@@ -692,10 +692,15 @@ OperatorRMCookie::exec(const Resources &res) const
int cookies_len = 0;
const char *cookies = TSMimeHdrFieldValueStringGet(res.bufp, res.hdr_loc, field_loc, -1, &cookies_len);
std::string updated_cookie;
- if (CookieHelper::cookieModifyHelper(cookies, cookies_len, updated_cookie, CookieHelper::COOKIE_OP_DEL, _cookie) &&
- TS_SUCCESS ==
- TSMimeHdrFieldValueStringSet(res.bufp, res.hdr_loc, field_loc, -1, updated_cookie.c_str(), updated_cookie.size())) {
- TSDebug(PLUGIN_NAME, "OperatorRMCookie::exec, updated_cookie = [%s]", updated_cookie.c_str());
+ if (CookieHelper::cookieModifyHelper(cookies, cookies_len, updated_cookie, CookieHelper::COOKIE_OP_DEL, _cookie)) {
+ if (updated_cookie.empty()) {
+ if (TS_SUCCESS == TSMimeHdrFieldDestroy(res.bufp, res.hdr_loc, field_loc)) {
+ TSDebug(PLUGIN_NAME, "OperatorRMCookie::exec, empty cookie deleted");
+ }
+ } else if (TS_SUCCESS == TSMimeHdrFieldValueStringSet(res.bufp, res.hdr_loc, field_loc, -1, updated_cookie.c_str(),
+ updated_cookie.size())) {
+ TSDebug(PLUGIN_NAME, "OperatorRMCookie::exec, updated_cookie = [%s]", updated_cookie.c_str());
+ }
}
TSHandleMLocRelease(res.bufp, res.hdr_loc, field_loc);
}
--
To stop receiving notification emails like this one, please contact
['"commits@trafficserver.apache.org" <co...@trafficserver.apache.org>'].