You are viewing a plain text version of this content. The canonical link for it is here.
Posted to issues@trafficserver.apache.org by "Hiroaki Nakamura (JIRA)" <ji...@apache.org> on 2015/12/31 20:33:39 UTC
[jira] [Updated] (TS-4106) Cache Inspector fails to split multiline
URLs
[ https://issues.apache.org/jira/browse/TS-4106?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]
Hiroaki Nakamura updated TS-4106:
---------------------------------
Attachment: cache_inspector_multiline_urls_split.patch
> Cache Inspector fails to split multiline URLs
> ---------------------------------------------
>
> Key: TS-4106
> URL: https://issues.apache.org/jira/browse/TS-4106
> Project: Traffic Server
> Issue Type: Bug
> Components: Web UI
> Reporter: Hiroaki Nakamura
> Attachments: cache_inspector_multiline_urls_split.patch
>
>
> The error is in the length parameter at
> https://github.com/apache/trafficserver/blob/413dd51d5dc17bf388805071efdb8f882014b847/iocore/cache/CachePages.cc#L129
> Because of this error, ink_strlcpy copies strings from the current poisition to the end of multiline URLs, not to the end of line.
> The patch below fixes this bug:
> {code:title=cache_inspector_multiline_urls_split.patch}
> --- iocore/cache/CachePages.cc.orig 2015-12-31 21:54:56.881997421 +0900
> +++ iocore/cache/CachePages.cc 2015-12-31 21:55:53.574506731 +0900
> @@ -126,7 +126,7 @@
> q = strstr(p, "%0D%0A" /* \r\n */); // we used this in the JS to separate urls
> if (!q)
> q = t;
> - ink_strlcpy(show_cache_urlstrs[s], p, sizeof(show_cache_urlstrs[s]));
> + ink_strlcpy(show_cache_urlstrs[s], p, q ? q - p + 1: sizeof(show_cache_urlstrs[s]));
> p = q + 6; // +6 ==> strlen(%0D%0A)
> }
> }
> {code}
--
This message was sent by Atlassian JIRA
(v6.3.4#6332)