You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@tomcat.apache.org by rj...@apache.org on 2008/01/03 11:44:22 UTC
svn commit: r608429 - in /tomcat/connectors/trunk/jk:
native/common/jk_ajp12_worker.c native/common/jk_map.c
native/common/jk_status.c native/common/jk_util.c
xdocs/miscellaneous/changelog.xml
Author: rjung
Date: Thu Jan 3 02:44:21 2008
New Revision: 608429
URL: http://svn.apache.org/viewvc?rev=608429&view=rev
Log:
Use thread safe strtok_r on more platforms, especially AIX.
Detect multi threaded context using define _MT_CODE_PTHREAD
instead of _REENTRANT, which is not used on all platforms.
Modified:
tomcat/connectors/trunk/jk/native/common/jk_ajp12_worker.c
tomcat/connectors/trunk/jk/native/common/jk_map.c
tomcat/connectors/trunk/jk/native/common/jk_status.c
tomcat/connectors/trunk/jk/native/common/jk_util.c
tomcat/connectors/trunk/jk/xdocs/miscellaneous/changelog.xml
Modified: tomcat/connectors/trunk/jk/native/common/jk_ajp12_worker.c
URL: http://svn.apache.org/viewvc/tomcat/connectors/trunk/jk/native/common/jk_ajp12_worker.c?rev=608429&r1=608428&r2=608429&view=diff
==============================================================================
--- tomcat/connectors/trunk/jk/native/common/jk_ajp12_worker.c (original)
+++ tomcat/connectors/trunk/jk/native/common/jk_ajp12_worker.c Thu Jan 3 02:44:21 2008
@@ -540,7 +540,7 @@
char *line = NULL;
char *name = NULL;
char *value = NULL;
-#ifdef _REENTRANT
+#ifdef _MT_CODE_PTHREAD
char *lasts;
#endif
@@ -588,7 +588,7 @@
jk_log(l, JK_LOG_DEBUG, "ajpv12_handle_response, read %s=%s", name,
value);
if (0 == strcmp("Status", name)) {
-#ifdef _REENTRANT
+#ifdef _MT_CODE_PTHREAD
char *numeric = strtok_r(value, " \t", &lasts);
#else
char *numeric = strtok(value, " \t");
@@ -600,7 +600,7 @@
"ajpv12_handle_response, invalid status code");
return JK_FALSE;
}
-#ifdef _REENTRANT
+#ifdef _MT_CODE_PTHREAD
reason = jk_pool_strdup(s->pool, strtok_r(NULL, " \t", &lasts));
#else
reason = jk_pool_strdup(s->pool, strtok(NULL, " \t"));
Modified: tomcat/connectors/trunk/jk/native/common/jk_map.c
URL: http://svn.apache.org/viewvc/tomcat/connectors/trunk/jk/native/common/jk_map.c?rev=608429&r1=608428&r2=608429&view=diff
==============================================================================
--- tomcat/connectors/trunk/jk/native/common/jk_map.c (original)
+++ tomcat/connectors/trunk/jk/native/common/jk_map.c Thu Jan 3 02:44:21 2008
@@ -249,7 +249,7 @@
const char *l = jk_map_get_string(m, name, def);
char **ar = NULL;
-#ifdef _REENTRANT
+#ifdef _MT_CODE_PTHREAD
char *lasts;
#endif
@@ -269,7 +269,7 @@
* GS, in addition to VG's patch, we now need to
* strtok also by a "*"
*/
-#ifdef _REENTRANT
+#ifdef _MT_CODE_PTHREAD
for (p = strtok_r(v, " \t,", &lasts);
p; p = strtok_r(NULL, " \t,", &lasts))
#else
@@ -305,7 +305,7 @@
{
const char *l = jk_map_get_string(m, name, def);
-#ifdef _REENTRANT
+#ifdef _MT_CODE_PTHREAD
char *lasts;
#endif
@@ -326,7 +326,7 @@
* GS, in addition to VG's patch, we now need to
* strtok also by a "*"
*/
-#ifdef _REENTRANT
+#ifdef _MT_CODE_PTHREAD
for (p = strtok_r(v, " \t,", &lasts);
p; p = strtok_r(NULL, " \t,", &lasts))
#else
Modified: tomcat/connectors/trunk/jk/native/common/jk_status.c
URL: http://svn.apache.org/viewvc/tomcat/connectors/trunk/jk/native/common/jk_status.c?rev=608429&r1=608428&r2=608429&view=diff
==============================================================================
--- tomcat/connectors/trunk/jk/native/common/jk_status.c (original)
+++ tomcat/connectors/trunk/jk/native/common/jk_status.c Thu Jan 3 02:44:21 2008
@@ -929,7 +929,7 @@
{
jk_map_t *m;
status_worker_t *w = p->worker;
-#ifdef _REENTRANT
+#ifdef _MT_CODE_PTHREAD_MT_CODE_PTHREAD
char *lasts;
#endif
char *param;
@@ -978,7 +978,7 @@
return JK_FALSE;
}
-#ifdef _REENTRANT
+#ifdef _MT_CODE_PTHREAD_MT_CODE_PTHREAD
for (param = strtok_r(query, "&", &lasts);
param; param = strtok_r(NULL, "&", &lasts)) {
#else
Modified: tomcat/connectors/trunk/jk/native/common/jk_util.c
URL: http://svn.apache.org/viewvc/tomcat/connectors/trunk/jk/native/common/jk_util.c?rev=608429&r1=608428&r2=608429&view=diff
==============================================================================
--- tomcat/connectors/trunk/jk/native/common/jk_util.c (original)
+++ tomcat/connectors/trunk/jk/native/common/jk_util.c Thu Jan 3 02:44:21 2008
@@ -1756,7 +1756,7 @@
char **jk_parse_sysprops(jk_pool_t *p, const char *sysprops)
{
char **rc = NULL;
-#ifdef _REENTRANT
+#ifdef _MT_CODE_PTHREAD
char *lasts;
#endif
@@ -1774,7 +1774,7 @@
rc = jk_pool_alloc(p, (num_of_prps + 1) * sizeof(char *));
if (rc) {
unsigned i = 0;
-#ifdef _REENTRANT
+#ifdef _MT_CODE_PTHREAD
char *tmp = strtok_r(prps, "*", &lasts);
#else
char *tmp = strtok(prps, "*");
@@ -1782,7 +1782,7 @@
while (tmp && i < num_of_prps) {
rc[i] = tmp;
-#ifdef _REENTRANT
+#ifdef _MT_CODE_PTHREAD
tmp = strtok_r(NULL, "*", &lasts);
#else
tmp = strtok(NULL, "*");
Modified: tomcat/connectors/trunk/jk/xdocs/miscellaneous/changelog.xml
URL: http://svn.apache.org/viewvc/tomcat/connectors/trunk/jk/xdocs/miscellaneous/changelog.xml?rev=608429&r1=608428&r2=608429&view=diff
==============================================================================
--- tomcat/connectors/trunk/jk/xdocs/miscellaneous/changelog.xml (original)
+++ tomcat/connectors/trunk/jk/xdocs/miscellaneous/changelog.xml Thu Jan 3 02:44:21 2008
@@ -43,6 +43,9 @@
<br />
<subsection name="Native">
<changelog>
+ <fix>
+ Use thread safe strtok_r on more platforms, especially AIX. (rjung)
+ </fix>
<update>
Status: Improve XSS hardening. (rjung)
</update>
---------------------------------------------------------------------
To unsubscribe, e-mail: dev-unsubscribe@tomcat.apache.org
For additional commands, e-mail: dev-help@tomcat.apache.org