[Bug 56143] New: Allow "service.bat install" to be used in an non-UAC cmd.exe session

2014-02-16 Thread bugzilla
https://issues.apache.org/bugzilla/show_bug.cgi?id=56143

Bug ID: 56143
   Summary: Allow "service.bat install" to be used in an non-UAC
cmd.exe session
   Product: Tomcat 7
   Version: 7.0.50
  Hardware: PC
Status: NEW
  Severity: enhancement
  Priority: P2
 Component: Integration
  Assignee: dev@tomcat.apache.org
  Reporter: knst.koli...@gmail.com

If you use a Microsoft Windows OS that has UAC and use service.bat script to
install Tomcat as a service, you have to first launch command console (cmd.exe)
in elevated privileges mode ("Run as administrator") and then call "service.bat
install" from there.

This requirement is mentioned in Tomcat documentation:
http://tomcat.apache.org/tomcat-7.0-doc/windows-service-howto.html#Installing_services

[quote]
NOTE: On Windows Vista or any other operating system with User Account Control
(UAC) you must either disable UAC or right-click on cmd.exe and select "Run as
administrator" in order to run this script. If UAC is enabled being logged on
with an Administrator account is not sufficient. 
[/quote]



If you forget to launch cmd.exe in that mode and just run "service.bat
install",  with the current Tomcat versions (6.0.39, 7.0.50, 8.0.3) you will be
prompted 3 times by UAC [3], but the service will be installed incorrectly.

With r1565781 / r1567742 (7.0.52) this was improved and you will be prompted by
UAC only once, but still the service will be installed incorrectly.


The cause for this behaviour is that install command in service.bat script uses
environment variables (such as PR_CLASSPATH) to pass parameters to service
installer (prunsrv).[1] Apparently, when a child application is launched with
elevated privileges it does not inherit environment variables from its parent.
[2]

The consequence is that a number of crucial settings in the installed service
will be blank. For example, its classpath and its log path will be blank.

As a result, an attempt to launch such service will fail shortly and silently,
as Tomcat bootstrap classes are not found and logging is not configured either.

(There will be some logs in %SystemRoot%\system32\LogFiles\Apache  though).


A workaround is to fix such configuration by using service configuration
application (tomcat7w.exe) to configure missing options.


I hope that this can be solved by changing service.bat so that all necessary
options are passed as command-line arguments instead of variables.

For reference:
[1] Apache Commons Daemon documentation
http://commons.apache.org/proper/commons-daemon/procrun.html

[2] "Re: r1567742" thread on dev mailing list
http://tomcat.markmail.org/thread/tjmwxc5vb5ut4zuq

[3] Bug 56079
https://issues.apache.org/bugzilla/show_bug.cgi?id=56079#c6

-- 
You are receiving this mail because:
You are the assignee for the bug.

-
To unsubscribe, e-mail: dev-unsubscr...@tomcat.apache.org
For additional commands, e-mail: dev-h...@tomcat.apache.org



svn commit: r1568768 - in /tomcat/trunk/bin: catalina.bat configtest.bat digest.bat service.bat shutdown.bat startup.bat tool-wrapper.bat version.bat

2014-02-16 Thread kkolinko
Author: kkolinko
Date: Sun Feb 16 14:45:47 2014
New Revision: 1568768

URL: http://svn.apache.org/r1568768
Log:
Simplify Windows *.bat files: remove %OS% checks, as current java does not run 
on ancient non-NT operating systems.

Modified:
tomcat/trunk/bin/catalina.bat
tomcat/trunk/bin/configtest.bat
tomcat/trunk/bin/digest.bat
tomcat/trunk/bin/service.bat
tomcat/trunk/bin/shutdown.bat
tomcat/trunk/bin/startup.bat
tomcat/trunk/bin/tool-wrapper.bat
tomcat/trunk/bin/version.bat

Modified: tomcat/trunk/bin/catalina.bat
URL: 
http://svn.apache.org/viewvc/tomcat/trunk/bin/catalina.bat?rev=1568768&r1=1568767&r2=1568768&view=diff
==
--- tomcat/trunk/bin/catalina.bat (original)
+++ tomcat/trunk/bin/catalina.bat Sun Feb 16 14:45:47 2014
@@ -14,7 +14,6 @@ rem WITHOUT WARRANTIES OR CONDITIONS OF 
 rem See the License for the specific language governing permissions and
 rem limitations under the License.
 
-if "%OS%" == "Windows_NT" setlocal
 rem ---
 rem Start/Stop Script for the CATALINA Server
 rem
@@ -92,6 +91,8 @@ rem   Example (all one l
 rem   set TITLE=Tomcat.Cluster#1.Server#1 [%DATE% %TIME%]
 rem ---
 
+setlocal
+
 rem Suppress Terminate batch job on CTRL+C
 if not ""%1"" == ""run"" goto mainEntry
 if "%TEMP%" == "" goto mainEntry
@@ -277,13 +278,8 @@ goto execCmd
 
 :doStart
 shift
-if not "%OS%" == "Windows_NT" goto noTitle
 if "%TITLE%" == "" set TITLE=Tomcat
 set _EXECJAVA=start "%TITLE%" %_RUNJAVA%
-goto gotTitle
-:noTitle
-set _EXECJAVA=start %_RUNJAVA%
-:gotTitle
 if not ""%1"" == ""-security"" goto execCmd
 shift
 echo Using Security Manager

Modified: tomcat/trunk/bin/configtest.bat
URL: 
http://svn.apache.org/viewvc/tomcat/trunk/bin/configtest.bat?rev=1568768&r1=1568767&r2=1568768&view=diff
==
--- tomcat/trunk/bin/configtest.bat (original)
+++ tomcat/trunk/bin/configtest.bat Sun Feb 16 14:45:47 2014
@@ -14,11 +14,12 @@ rem WITHOUT WARRANTIES OR CONDITIONS OF 
 rem See the License for the specific language governing permissions and
 rem limitations under the License.
 
-if "%OS%" == "Windows_NT" setlocal
 rem ---
 rem Configuration test script for the CATALINA Server
 rem ---
 
+setlocal
+
 rem Guess CATALINA_HOME if not defined
 set "CURRENT_DIR=%cd%"
 if not "%CATALINA_HOME%" == "" goto gotHome

Modified: tomcat/trunk/bin/digest.bat
URL: 
http://svn.apache.org/viewvc/tomcat/trunk/bin/digest.bat?rev=1568768&r1=1568767&r2=1568768&view=diff
==
--- tomcat/trunk/bin/digest.bat (original)
+++ tomcat/trunk/bin/digest.bat Sun Feb 16 14:45:47 2014
@@ -14,11 +14,12 @@ rem WITHOUT WARRANTIES OR CONDITIONS OF 
 rem See the License for the specific language governing permissions and
 rem limitations under the License.
 
-if "%OS%" == "Windows_NT" setlocal
 rem ---
 rem Script to digest password using the algorithm specified
 rem ---
 
+setlocal
+
 rem Guess CATALINA_HOME if not defined
 set "CURRENT_DIR=%cd%"
 if not "%CATALINA_HOME%" == "" goto gotHome

Modified: tomcat/trunk/bin/service.bat
URL: 
http://svn.apache.org/viewvc/tomcat/trunk/bin/service.bat?rev=1568768&r1=1568767&r2=1568768&view=diff
==
--- tomcat/trunk/bin/service.bat (original)
+++ tomcat/trunk/bin/service.bat Sun Feb 16 14:45:47 2014
@@ -14,7 +14,6 @@ rem WITHOUT WARRANTIES OR CONDITIONS OF 
 rem See the License for the specific language governing permissions and
 rem limitations under the License.
 
-if "%OS%" == "Windows_NT" setlocal
 rem ---
 rem NT Service Install/Uninstall script
 rem
@@ -27,6 +26,8 @@ rem name(optional) If the second
 remto be new service name
 rem ---
 
+setlocal
+
 set "SELF=%~dp0%service.bat"
 rem Guess CATALINA_HOME if not defined
 set "CURRENT_DIR=%cd%"

Modified: tomcat/trunk/bin/shutdown.bat
URL: 
http://svn.apache.org/viewvc/tomcat/trunk/bin/shutdown.bat?rev=1568768&r1=1568767&r2=1568768&view=diff
==
--- tomcat/trunk/bin/shutdown.bat (original)
+++ tomcat/trunk/bin/shutdown.bat Sun Feb 16 14:45:47 2014
@@ -14,11 +14,12 @@ rem WITHOUT WARRANTIES OR CONDITIONS OF 
 rem See the Licen

svn commit: r1568779 - /tomcat/trunk/bin/service.bat

2014-02-16 Thread kkolinko
Author: kkolinko
Date: Sun Feb 16 15:24:56 2014
New Revision: 1568779

URL: http://svn.apache.org/r1568779
Log:
https://issues.apache.org/bugzilla/show_bug.cgi?id=56143
Allow service.bat to be launched from a non-UAC console,
by using arguments instead of env variables to pass options to prunsrv.

+ Fix regression in r1567742 that values for --StdOutput, --StdError were lost.
+ Pass --LogPath option to service removal command, to avoid using default 
value for this option

Modified:
tomcat/trunk/bin/service.bat

Modified: tomcat/trunk/bin/service.bat
URL: 
http://svn.apache.org/viewvc/tomcat/trunk/bin/service.bat?rev=1568779&r1=1568778&r2=1568779&view=diff
==
--- tomcat/trunk/bin/service.bat (original)
+++ tomcat/trunk/bin/service.bat Sun Feb 16 15:24:56 2014
@@ -75,7 +75,7 @@ set "EXECUTABLE=%CATALINA_HOME%\bin\tomc
 
 rem Set default Service name
 set SERVICE_NAME=Tomcat@VERSION_MAJOR@
-set PR_DISPLAYNAME=Apache Tomcat @VERSION_MAJOR@
+set DISPLAYNAME=Apache Tomcat @VERSION_MAJOR@
 
 if "x%1x" == "xx" goto displayUsage
 set SERVICE_CMD=%1
@@ -85,7 +85,7 @@ if "x%1x" == "xx" goto checkServiceCmd
 if "x%1x" == "x/userx" goto runAsUser
 if "x%1x" == "x--userx" goto runAsUser
 set SERVICE_NAME=%1
-set PR_DISPLAYNAME=Apache Tomcat %1
+set DISPLAYNAME=Apache Tomcat %1
 shift
 if "x%1x" == "xx" goto checkServiceCmd
 goto checkUser
@@ -108,7 +108,11 @@ goto end
 
 :doRemove
 rem Remove the service
-"%EXECUTABLE%" //DS//%SERVICE_NAME%
+echo Removing the service '%SERVICE_NAME%' ...
+echo Using CATALINA_BASE:"%CATALINA_BASE%"
+
+"%EXECUTABLE%" //DS//%SERVICE_NAME% ^
+--LogPath "%CATALINA_BASE%\logs"
 if not errorlevel 1 goto removed
 echo Failed removing '%SERVICE_NAME%' service
 goto end
@@ -124,45 +128,38 @@ echo Using CATALINA_BASE:"%CATALINA_
 echo Using JAVA_HOME:"%JAVA_HOME%"
 echo Using JRE_HOME: "%JRE_HOME%"
 
-rem Use the environment variables as an example
-rem Each command line option is prefixed with PR_
-
-set PR_DESCRIPTION=Apache Tomcat @VERSION@ Server - http://tomcat.apache.org/
-set "PR_INSTALL=%EXECUTABLE%"
-set "PR_LOGPATH=%CATALINA_BASE%\logs"
-set 
"PR_CLASSPATH=%CATALINA_HOME%\bin\bootstrap.jar;%CATALINA_BASE%\bin\tomcat-juli.jar;%CATALINA_HOME%\bin\tomcat-juli.jar"
 rem Set the server jvm from JAVA_HOME
-set "PR_JVM=%JRE_HOME%\bin\server\jvm.dll"
-if exist "%PR_JVM%" goto foundJvm
+set "JVM=%JRE_HOME%\bin\server\jvm.dll"
+if exist "%JVM%" goto foundJvm
 rem Set the client jvm from JAVA_HOME
-set "PR_JVM=%JRE_HOME%\bin\client\jvm.dll"
-if exist "%PR_JVM%" goto foundJvm
-set PR_JVM=auto
-set PR_STDOUTPUT=auto
-set PR_STDERROR=auto
+set "JVM=%JRE_HOME%\bin\client\jvm.dll"
+if exist "%JVM%" goto foundJvm
+set JVM=auto
 :foundJvm
-echo Using JVM:  "%PR_JVM%"
+echo Using JVM:  "%JVM%"
+
 "%EXECUTABLE%" //IS//%SERVICE_NAME% ^
+--Description "Apache Tomcat @VERSION@ Server - http://tomcat.apache.org/"; 
^
+--DisplayName "%DISPLAYNAME%" ^
+--Install "%EXECUTABLE%" ^
+--LogPath "%CATALINA_BASE%\logs" ^
+--StdOutput auto ^
+--StdError auto ^
+--Classpath 
"%CATALINA_HOME%\bin\bootstrap.jar;%CATALINA_BASE%\bin\tomcat-juli.jar;%CATALINA_HOME%\bin\tomcat-juli.jar"
 ^
+--Jvm "%JVM%" ^
+--StartMode jvm ^
+--StopMode jvm ^
 --StartClass org.apache.catalina.startup.Bootstrap ^
 --StopClass org.apache.catalina.startup.Bootstrap ^
 --StartParams start ^
 --StopParams stop ^
 --JvmOptions 
"-Dcatalina.base=%CATALINA_BASE%;-Dcatalina.home=%CATALINA_HOME%;-Djava.endorsed.dirs=%CATALINA_HOME%\endorsed;-Djava.io.tmpdir=%CATALINA_BASE%\temp;-Djava.util.logging.manager=org.apache.juli.ClassLoaderLogManager;-Djava.util.logging.config.file=%CATALINA_BASE%\conf\logging.properties"
 ^
---StartMode jvm ^
---StopMode jvm ^
 --JvmMs 128 ^
 --JvmMx 256
 if not errorlevel 1 goto installed
 echo Failed installing '%SERVICE_NAME%' service
 goto end
 :installed
-rem Clear the environment variables. They are not needed any more.
-set PR_DISPLAYNAME=
-set PR_DESCRIPTION=
-set PR_INSTALL=
-set PR_LOGPATH=
-set PR_CLASSPATH=
-set PR_JVM=
 echo The service '%SERVICE_NAME%' has been installed.
 
 :end



-
To unsubscribe, e-mail: dev-unsubscr...@tomcat.apache.org
For additional commands, e-mail: dev-h...@tomcat.apache.org



svn commit: r1568780 - /tomcat/trunk/bin/service.bat

2014-02-16 Thread kkolinko
Author: kkolinko
Date: Sun Feb 16 15:34:06 2014
New Revision: 1568780

URL: http://svn.apache.org/r1568780
Log:
Avoid using the same path for "tomcat-juli.jar" twice  when CATALINA_HOME and 
CATALINA_BASE are the same.

Modified:
tomcat/trunk/bin/service.bat

Modified: tomcat/trunk/bin/service.bat
URL: 
http://svn.apache.org/viewvc/tomcat/trunk/bin/service.bat?rev=1568780&r1=1568779&r2=1568780&view=diff
==
--- tomcat/trunk/bin/service.bat (original)
+++ tomcat/trunk/bin/service.bat Sun Feb 16 15:34:06 2014
@@ -138,6 +138,9 @@ set JVM=auto
 :foundJvm
 echo Using JVM:  "%JVM%"
 
+set 
"CLASSPATH=%CATALINA_HOME%\bin\bootstrap.jar;%CATALINA_BASE%\bin\tomcat-juli.jar"
+if not "%CATALINA_HOME%" == "%CATALINA_BASE%" set 
"CLASSPATH=%CLASSPATH%;%CATALINA_HOME%\bin\tomcat-juli.jar"
+
 "%EXECUTABLE%" //IS//%SERVICE_NAME% ^
 --Description "Apache Tomcat @VERSION@ Server - http://tomcat.apache.org/"; 
^
 --DisplayName "%DISPLAYNAME%" ^
@@ -145,7 +148,7 @@ echo Using JVM:  "%JVM%"
 --LogPath "%CATALINA_BASE%\logs" ^
 --StdOutput auto ^
 --StdError auto ^
---Classpath 
"%CATALINA_HOME%\bin\bootstrap.jar;%CATALINA_BASE%\bin\tomcat-juli.jar;%CATALINA_HOME%\bin\tomcat-juli.jar"
 ^
+--Classpath "%CLASSPATH%" ^
 --Jvm "%JVM%" ^
 --StartMode jvm ^
 --StopMode jvm ^



-
To unsubscribe, e-mail: dev-unsubscr...@tomcat.apache.org
For additional commands, e-mail: dev-h...@tomcat.apache.org



Re: [VOTE] Release Apache Tomcat 7.0.52

2014-02-16 Thread Mark Thomas
On 14/02/2014 17:34, Konstantin Kolinko wrote:



> 1. org.apache.catalina.startup.TestHostConfigAutomaticDeployment
> fails consistently with all connectors when running with JDK 6u45.
> It runs successfully with 7u51.
> The failures:
> 
> [[[
> Testsuite: org.apache.catalina.startup.TestHostConfigAutomaticDeployment
> Tests run: 137, Failures: 3, Errors: 0, Skipped: 0, Time elapsed: 49,956 sec
> 
> Testcase: testModifyXmlExtwarUpdateExtwar took 0,251 sec
> FAILED
> expected:<[stopstart]> but was:<[]>
> junit.framework.AssertionFailedError: expected:<[stopstart]> but was:<[]>
> at 
> org.apache.catalina.startup.TestHostConfigAutomaticDeployment.doTestModify(TestHostConfigAutomaticDeployment.java:1220)
> at 
> org.apache.catalina.startup.TestHostConfigAutomaticDeployment.doTestModify(TestHostConfigAutomaticDeployment.java:1079)
> at 
> org.apache.catalina.startup.TestHostConfigAutomaticDeployment.testModifyXmlExtwarUpdateExtwar(TestHostConfigAutomaticDeployment.java:1004)
> 
> Testcase: testModifyWarUpdateWar took 0,196 sec
> FAILED
> expected not same
> junit.framework.AssertionFailedError: expected not same
> at 
> org.apache.catalina.startup.TestHostConfigAutomaticDeployment.doTestModify(TestHostConfigAutomaticDeployment.java:1222)
> at 
> org.apache.catalina.startup.TestHostConfigAutomaticDeployment.doTestModify(TestHostConfigAutomaticDeployment.java:1079)
> at 
> org.apache.catalina.startup.TestHostConfigAutomaticDeployment.testModifyWarUpdateWar(TestHostConfigAutomaticDeployment.java:966)
> 
> Testcase: testModifyXmlWarUpdateWar took 0,195 sec
> FAILED
> expected:<[stopstart]> but was:<[]>
> junit.framework.AssertionFailedError: expected:<[stopstart]> but was:<[]>
> at 
> org.apache.catalina.startup.TestHostConfigAutomaticDeployment.doTestModify(TestHostConfigAutomaticDeployment.java:1220)
> at 
> org.apache.catalina.startup.TestHostConfigAutomaticDeployment.doTestModify(TestHostConfigAutomaticDeployment.java:1079)
> at 
> org.apache.catalina.startup.TestHostConfigAutomaticDeployment.testModifyXmlWarUpdateWar(TestHostConfigAutomaticDeployment.java:1046)
> ]]]

This looks to be caused by a JVM bug (which is fixed in 1.7.x). The file
is unnecessarily locked in some cases which prevents the last modified
time being changed. The best description I found of the issue was on
StackOverflow [1]. I'm not sure if it is exactly what we are seeing but
it looks to be pretty close.

I'll add a check to see if the time has been changed and explicitly fail
with a note about this problem if it doesn't.

Mark


[1]
http://stackoverflow.com/questions/1144635/setting-the-last-modified-time-of-a-directory-opened-for-readdirectorychangesw

-
To unsubscribe, e-mail: dev-unsubscr...@tomcat.apache.org
For additional commands, e-mail: dev-h...@tomcat.apache.org



svn commit: r1568786 - in /tomcat/trunk/webapps/docs: changelog.xml windows-service-howto.xml

2014-02-16 Thread kkolinko
Author: kkolinko
Date: Sun Feb 16 16:09:49 2014
New Revision: 1568786

URL: http://svn.apache.org/r1568786
Log:
Fixing https://issues.apache.org/bugzilla/show_bug.cgi?id=56143
Update documentation and changelog.

Modified:
tomcat/trunk/webapps/docs/changelog.xml
tomcat/trunk/webapps/docs/windows-service-howto.xml

Modified: tomcat/trunk/webapps/docs/changelog.xml
URL: 
http://svn.apache.org/viewvc/tomcat/trunk/webapps/docs/changelog.xml?rev=1568786&r1=1568785&r2=1568786&view=diff
==
--- tomcat/trunk/webapps/docs/changelog.xml (original)
+++ tomcat/trunk/webapps/docs/changelog.xml Sun Feb 16 16:09:49 2014
@@ -73,20 +73,29 @@
   
 
   
-Use a single call to tomcat8.exe to install the Windows
-service from service.bat rather than three calls. This is
-preparatory work for fixing 56079 as each time
-tomcat8.exe is called, a UAC dialog is displayed if UAC is
-enabled. (markt)
-  
-  
 56115: Expose the httpusecaches property of
 Ant's get task as some users may need to change the
 default. Based on a suggestion by Anthony. (markt)
   
+  
+56143: Improve service.bat so that it can be
+launched from a non-UAC console. This includes using a single call to
+tomcat8.exe to install the Windows service rather than
+three calls, and using command line arguments instead of environment
+variables to pass the settings. (markt/kkolinko)
+  
   
-Update Commons DBCP 2 to snapshot 173 dated 11 Feb 2014. (markt)
+Update Commons DBCP 2 to snapshot 182 dated 14 Feb 2014. (markt)
   
+  
+Simplify Windows *.bat files: remove %OS% checks, as current java does
+not run on ancient non-NT operating systems. (kkolinko)
+  
+  
+Pass explicit value for log directory path when uninstalling Windows
+service with "service.bat remove", avoiding default value
+for that option. (kkolinko)
+  
 
   
 

Modified: tomcat/trunk/webapps/docs/windows-service-howto.xml
URL: 
http://svn.apache.org/viewvc/tomcat/trunk/webapps/docs/windows-service-howto.xml?rev=1568786&r1=1568785&r2=1568786&view=diff
==
--- tomcat/trunk/webapps/docs/windows-service-howto.xml (original)
+++ tomcat/trunk/webapps/docs/windows-service-howto.xml Sun Feb 16 16:09:49 2014
@@ -308,18 +308,16 @@ script. If necessary, you can use the 
 
-NOTE: On Windows Vista or any other operating system with User
-Account Control (UAC) enabled you must
-
-right-click on cmd.exe and
-select "Run as administrator" in order to run this script. On Windows 8 (or 
later) or
+NOTE: On Windows Vista or any later operating system with User
+Account Control (UAC) enabled you will be asked for additional priviledges
+when 'Tomcat.exe' is launched by the script.
+If you want to pass additional options to service installer as
+PR_* environment variables, you have to either configure them
+globally in OS, or launch the program that sets them with elevated priviledges
+(e.g. right-click on cmd.exe and select "Run as administrator"; on Windows 8 
(or later) or
 Windows Server 2012 (or later), you can open an elevated command prompt
 for the current directory from the explorer
-by clicking on the "File" menu bar.
-If UAC is enabled,
-neither being logged on with an Administrator account nor using the
-/user switch is sufficient.
+by clicking on the "File" menu bar). See issue 56143 for details.
 
 
 Install the service named 'Tomcat'



-
To unsubscribe, e-mail: dev-unsubscr...@tomcat.apache.org
For additional commands, e-mail: dev-h...@tomcat.apache.org



svn commit: r1568787 - /tomcat/tc7.0.x/trunk/test/org/apache/catalina/startup/TestHostConfigAutomaticDeployment.java

2014-02-16 Thread markt
Author: markt
Date: Sun Feb 16 16:11:33 2014
New Revision: 1568787

URL: http://svn.apache.org/r1568787
Log:
Clearer error message if we see test failures on Windows due to JVM bug.
Fix some IDE warnings.

Modified:

tomcat/tc7.0.x/trunk/test/org/apache/catalina/startup/TestHostConfigAutomaticDeployment.java

Modified: 
tomcat/tc7.0.x/trunk/test/org/apache/catalina/startup/TestHostConfigAutomaticDeployment.java
URL: 
http://svn.apache.org/viewvc/tomcat/tc7.0.x/trunk/test/org/apache/catalina/startup/TestHostConfigAutomaticDeployment.java?rev=1568787&r1=1568786&r2=1568787&view=diff
==
--- 
tomcat/tc7.0.x/trunk/test/org/apache/catalina/startup/TestHostConfigAutomaticDeployment.java
 (original)
+++ 
tomcat/tc7.0.x/trunk/test/org/apache/catalina/startup/TestHostConfigAutomaticDeployment.java
 Sun Feb 16 16:11:33 2014
@@ -920,6 +920,7 @@ public class TestHostConfigAutomaticDepl
 }
 if (!resultWar && !resultDir) {
 if (resultXml) {
+Assert.assertNotNull(ctxt);
 Assert.assertEquals(LifecycleState.FAILED, ctxt.getState());
 } else {
 Assert.assertNull(ctxt);
@@ -1136,14 +1137,22 @@ public class TestHostConfigAutomaticDepl
 if (ext == null) {
 Assert.fail();
 } else {
-ext.setLastModified(System.currentTimeMillis() + 5000);
+if (!ext.setLastModified(System.currentTimeMillis() + 
5000)){
+Assert.fail("Failed to set last modified time for " +
+"external WAR file. This is expected (due to " 
+
+"a JVM bug) with Java 6 on Windows.");
+}
 }
 break;
 case WAR:
 if (war == null) {
 Assert.fail();
 } else {
-war.setLastModified(System.currentTimeMillis() + 5000);
+if (!war.setLastModified(System.currentTimeMillis() + 
5000)) {
+Assert.fail("Failed to set last modified time for WAR 
" +
+"file. This is expected (due to a JVM bug) " +
+"with Java 6 on Windows.");
+}
 }
 break;
 case DIR:
@@ -1194,6 +1203,7 @@ public class TestHostConfigAutomaticDepl
 }
 if (!resultWar && !resultDir) {
 if (resultXml) {
+Assert.assertNotNull(newContext);
 if (!startExternalWar && !startExternalDir) {
 Assert.assertEquals(LifecycleState.FAILED,
 newContext.getState());
@@ -1514,6 +1524,7 @@ public class TestHostConfigAutomaticDepl
 }
 if (!resultWar && !resultDir) {
 if (resultXml) {
+Assert.assertNotNull(newContext);
 if (!startExternalWar && !startExternalDir) {
 Assert.assertEquals(LifecycleState.FAILED,
 newContext.getState());



-
To unsubscribe, e-mail: dev-unsubscr...@tomcat.apache.org
For additional commands, e-mail: dev-h...@tomcat.apache.org



[Bug 56143] Allow "service.bat install" to be used in an non-UAC cmd.exe session

2014-02-16 Thread bugzilla
https://issues.apache.org/bugzilla/show_bug.cgi?id=56143

Konstantin Kolinko  changed:

   What|Removed |Added

 OS||All

--- Comment #1 from Konstantin Kolinko  ---
Fixed in Tomcat 8 by r1568779, docs updated by r1568786. Will be in 8.0.4.

-- 
You are receiving this mail because:
You are the assignee for the bug.

-
To unsubscribe, e-mail: dev-unsubscr...@tomcat.apache.org
For additional commands, e-mail: dev-h...@tomcat.apache.org



svn commit: r1568803 - in /tomcat/trunk: java/org/apache/tomcat/websocket/WsRemoteEndpointImplBase.java webapps/docs/changelog.xml

2014-02-16 Thread markt
Author: markt
Date: Sun Feb 16 18:27:16 2014
New Revision: 1568803

URL: http://svn.apache.org/r1568803
Log:
Avoid possible deadlock when one thread tries to close a connection while 
another thread tries to write to it.

Modified:
tomcat/trunk/java/org/apache/tomcat/websocket/WsRemoteEndpointImplBase.java
tomcat/trunk/webapps/docs/changelog.xml

Modified: 
tomcat/trunk/java/org/apache/tomcat/websocket/WsRemoteEndpointImplBase.java
URL: 
http://svn.apache.org/viewvc/tomcat/trunk/java/org/apache/tomcat/websocket/WsRemoteEndpointImplBase.java?rev=1568803&r1=1568802&r2=1568803&view=diff
==
--- tomcat/trunk/java/org/apache/tomcat/websocket/WsRemoteEndpointImplBase.java 
(original)
+++ tomcat/trunk/java/org/apache/tomcat/websocket/WsRemoteEndpointImplBase.java 
Sun Feb 16 18:27:16 2014
@@ -249,6 +249,7 @@ public abstract class WsRemoteEndpointIm
 
 MessagePart mp = new MessagePart(opCode, payload, last, handler, this);
 
+boolean doWrite = false;
 synchronized (messagePartLock) {
 if (Constants.OPCODE_CLOSE == mp.getOpCode()) {
 try {
@@ -260,30 +261,38 @@ public abstract class WsRemoteEndpointIm
 }
 if (messagePartInProgress) {
 // When a control message is sent while another message is 
being
-// the control message is queued. Chances are the subsequent
-// data message part will end up queued while the control
-// message is sent. The logic in this class (state machine,
-// EndMessageHanlder, TextMessageSendHandler) ensures that 
there
-// will only ever be one data message part in the queue. There
-// could be multiple control messages in the queue.
+// sent, the control message is queued. Chances are the
+// subsequent data message part will end up queued while the
+// control message is sent. The logic in this class (state
+// machine, EndMessageHandler, TextMessageSendHandler) ensures
+// that there will only ever be one data message part in the
+// queue. There could be multiple control messages in the 
queue.
 
 // Add it to the queue
 messagePartQueue.add(mp);
 } else {
 messagePartInProgress = true;
-writeMessagePart(mp);
+doWrite = true;
 }
 }
+if (doWrite) {
+// Actual write has to be outside sync block to avoid possible
+// deadlock between messagePartLock and writeLock in
+// o.a.coyote.http11.upgrade.AbstractServletOutputStream
+writeMessagePart(mp);
+}
 }
 
 
 void endMessage(SendHandler handler, SendResult result) {
+boolean doWrite = false;
+MessagePart mpNext = null;
 synchronized (messagePartLock) {
 
 fragmented = nextFragmented;
 text = nextText;
 
-MessagePart mpNext = messagePartQueue.poll();
+mpNext = messagePartQueue.poll();
 if (mpNext == null) {
 messagePartInProgress = false;
 } else if (!closed){
@@ -291,9 +300,15 @@ public abstract class WsRemoteEndpointIm
 // sending a fragmented message closing the endpoint. If this
 // happens, clearly there is no point trying to send the rest 
of
 // the message.
-writeMessagePart(mpNext);
+doWrite = true;
 }
 }
+if (doWrite) {
+// Actual write has to be outside sync block to avoid possible
+// deadlock between messagePartLock and writeLock in
+// o.a.coyote.http11.upgrade.AbstractServletOutputStream
+writeMessagePart(mpNext);
+}
 
 wsSession.updateLastActive();
 

Modified: tomcat/trunk/webapps/docs/changelog.xml
URL: 
http://svn.apache.org/viewvc/tomcat/trunk/webapps/docs/changelog.xml?rev=1568803&r1=1568802&r2=1568803&view=diff
==
--- tomcat/trunk/webapps/docs/changelog.xml (original)
+++ tomcat/trunk/webapps/docs/changelog.xml Sun Feb 16 18:27:16 2014
@@ -70,6 +70,14 @@
   
 
   
+  
+
+  
+Avoid a possible deadlock when one thread is shutting down a connection
+while another thread is trying to write to it. (markt)
+  
+
+  
   
 
   



-
To unsubscribe, e-mail: dev-unsubscr...@tomcat.apache.org
For additional commands, e-mail: dev-h...@tomcat.apache.org



svn commit: r1568804 - in /tomcat/tc7.0.x/trunk: ./ java/org/apache/tomcat/websocket/WsRemoteEndpointImplBase.java webapps/docs/changelog.xml

2014-02-16 Thread markt
Author: markt
Date: Sun Feb 16 18:30:16 2014
New Revision: 1568804

URL: http://svn.apache.org/r1568804
Log:
Avoid possible deadlock when one thread tries to close a connection while 
another thread tries to write to it.

Modified:
tomcat/tc7.0.x/trunk/   (props changed)

tomcat/tc7.0.x/trunk/java/org/apache/tomcat/websocket/WsRemoteEndpointImplBase.java
tomcat/tc7.0.x/trunk/webapps/docs/changelog.xml

Propchange: tomcat/tc7.0.x/trunk/
--
  Merged /tomcat/trunk:r1568803

Modified: 
tomcat/tc7.0.x/trunk/java/org/apache/tomcat/websocket/WsRemoteEndpointImplBase.java
URL: 
http://svn.apache.org/viewvc/tomcat/tc7.0.x/trunk/java/org/apache/tomcat/websocket/WsRemoteEndpointImplBase.java?rev=1568804&r1=1568803&r2=1568804&view=diff
==
--- 
tomcat/tc7.0.x/trunk/java/org/apache/tomcat/websocket/WsRemoteEndpointImplBase.java
 (original)
+++ 
tomcat/tc7.0.x/trunk/java/org/apache/tomcat/websocket/WsRemoteEndpointImplBase.java
 Sun Feb 16 18:30:16 2014
@@ -254,6 +254,7 @@ public abstract class WsRemoteEndpointIm
 
 MessagePart mp = new MessagePart(opCode, payload, last, handler, this);
 
+boolean doWrite = false;
 synchronized (messagePartLock) {
 if (Constants.OPCODE_CLOSE == mp.getOpCode()) {
 try {
@@ -265,30 +266,38 @@ public abstract class WsRemoteEndpointIm
 }
 if (messagePartInProgress) {
 // When a control message is sent while another message is 
being
-// the control message is queued. Chances are the subsequent
-// data message part will end up queued while the control
-// message is sent. The logic in this class (state machine,
-// EndMessageHanlder, TextMessageSendHandler) ensures that 
there
-// will only ever be one data message part in the queue. There
-// could be multiple control messages in the queue.
+// sent, the control message is queued. Chances are the
+// subsequent data message part will end up queued while the
+// control message is sent. The logic in this class (state
+// machine, EndMessageHandler, TextMessageSendHandler) ensures
+// that there will only ever be one data message part in the
+// queue. There could be multiple control messages in the 
queue.
 
 // Add it to the queue
 messagePartQueue.add(mp);
 } else {
 messagePartInProgress = true;
-writeMessagePart(mp);
+doWrite = true;
 }
 }
+if (doWrite) {
+// Actual write has to be outside sync block to avoid possible
+// deadlock between messagePartLock and writeLock in
+// o.a.coyote.http11.upgrade.AbstractServletOutputStream
+writeMessagePart(mp);
+}
 }
 
 
 void endMessage(SendHandler handler, SendResult result) {
+boolean doWrite = false;
+MessagePart mpNext = null;
 synchronized (messagePartLock) {
 
 fragmented = nextFragmented;
 text = nextText;
 
-MessagePart mpNext = messagePartQueue.poll();
+mpNext = messagePartQueue.poll();
 if (mpNext == null) {
 messagePartInProgress = false;
 } else if (!closed){
@@ -296,9 +305,15 @@ public abstract class WsRemoteEndpointIm
 // sending a fragmented message closing the endpoint. If this
 // happens, clearly there is no point trying to send the rest 
of
 // the message.
-writeMessagePart(mpNext);
+doWrite = true;
 }
 }
+if (doWrite) {
+// Actual write has to be outside sync block to avoid possible
+// deadlock between messagePartLock and writeLock in
+// o.a.coyote.http11.upgrade.AbstractServletOutputStream
+writeMessagePart(mpNext);
+}
 
 wsSession.updateLastActive();
 

Modified: tomcat/tc7.0.x/trunk/webapps/docs/changelog.xml
URL: 
http://svn.apache.org/viewvc/tomcat/tc7.0.x/trunk/webapps/docs/changelog.xml?rev=1568804&r1=1568803&r2=1568804&view=diff
==
--- tomcat/tc7.0.x/trunk/webapps/docs/changelog.xml (original)
+++ tomcat/tc7.0.x/trunk/webapps/docs/changelog.xml Sun Feb 16 18:30:16 2014
@@ -55,6 +55,16 @@
   They eventually become mixed with the numbered issues. (I.e., numbered
   issues to not "pop up" wrt. others).
 -->
+
+  
+
+  
+Avoid a possible deadlock when one thread is shutting down a connection
+while another thread is trying to write to it. (markt)
+  
+
+  
+
 
   
  

Re: [VOTE] Release Apache Tomcat 7.0.52

2014-02-16 Thread Mark Thomas
On 14/02/2014 17:34, Konstantin Kolinko wrote:

> 3) With NIO connector there were no "failed" tests, but the test hung twice.

It was the same deadlock in both cases. This should be fixed in trunk
and 7.0.x.

Mark

-
To unsubscribe, e-mail: dev-unsubscr...@tomcat.apache.org
For additional commands, e-mail: dev-h...@tomcat.apache.org



svn commit: r1568828 - in /tomcat/trunk: bin/service.bat res/tomcat.nsi webapps/docs/changelog.xml

2014-02-16 Thread kkolinko
Author: kkolinko
Date: Sun Feb 16 21:05:04 2014
New Revision: 1568828

URL: http://svn.apache.org/r1568828
Log:
Align Commons Daemon options between service.bat and exe installer

service.bat changes:
--DisplayName
--StartPath, --StopPath (They should be unnecessary in --StartMode jvm, but exe 
installed sets them and they are visible and settable in configuration dialog)
--JvmOptions: Just reordered, non significant
--Classpath change mentioned in changelog was in r1568780

exe installer changes:
--JvmMs, --JvmMx

--LogPath fix from r1568779 was applied to exe installer as well.

Modified:
tomcat/trunk/bin/service.bat
tomcat/trunk/res/tomcat.nsi
tomcat/trunk/webapps/docs/changelog.xml

Modified: tomcat/trunk/bin/service.bat
URL: 
http://svn.apache.org/viewvc/tomcat/trunk/bin/service.bat?rev=1568828&r1=1568827&r2=1568828&view=diff
==
--- tomcat/trunk/bin/service.bat (original)
+++ tomcat/trunk/bin/service.bat Sun Feb 16 21:05:04 2014
@@ -75,7 +75,7 @@ set "EXECUTABLE=%CATALINA_HOME%\bin\tomc
 
 rem Set default Service name
 set SERVICE_NAME=Tomcat@VERSION_MAJOR@
-set DISPLAYNAME=Apache Tomcat @VERSION_MAJOR@
+set DISPLAYNAME=Apache Tomcat @VERSION_MAJOR@ %SERVICE_NAME%
 
 if "x%1x" == "xx" goto displayUsage
 set SERVICE_CMD=%1
@@ -85,7 +85,7 @@ if "x%1x" == "xx" goto checkServiceCmd
 if "x%1x" == "x/userx" goto runAsUser
 if "x%1x" == "x--userx" goto runAsUser
 set SERVICE_NAME=%1
-set DISPLAYNAME=Apache Tomcat %1
+set DISPLAYNAME=Apache Tomcat @VERSION_MAJOR@ %1
 shift
 if "x%1x" == "xx" goto checkServiceCmd
 goto checkUser
@@ -152,11 +152,13 @@ if not "%CATALINA_HOME%" == "%CATALINA_B
 --Jvm "%JVM%" ^
 --StartMode jvm ^
 --StopMode jvm ^
+--StartPath "%CATALINA_HOME%" ^
+--StopPath "%CATALINA_HOME%" ^
 --StartClass org.apache.catalina.startup.Bootstrap ^
 --StopClass org.apache.catalina.startup.Bootstrap ^
 --StartParams start ^
 --StopParams stop ^
---JvmOptions 
"-Dcatalina.base=%CATALINA_BASE%;-Dcatalina.home=%CATALINA_HOME%;-Djava.endorsed.dirs=%CATALINA_HOME%\endorsed;-Djava.io.tmpdir=%CATALINA_BASE%\temp;-Djava.util.logging.manager=org.apache.juli.ClassLoaderLogManager;-Djava.util.logging.config.file=%CATALINA_BASE%\conf\logging.properties"
 ^
+--JvmOptions 
"-Dcatalina.home=%CATALINA_HOME%;-Dcatalina.base=%CATALINA_BASE%;-Djava.endorsed.dirs=%CATALINA_HOME%\endorsed;-Djava.io.tmpdir=%CATALINA_BASE%\temp;-Djava.util.logging.manager=org.apache.juli.ClassLoaderLogManager;-Djava.util.logging.config.file=%CATALINA_BASE%\conf\logging.properties"
 ^
 --JvmMs 128 ^
 --JvmMx 256
 if not errorlevel 1 goto installed

Modified: tomcat/trunk/res/tomcat.nsi
URL: 
http://svn.apache.org/viewvc/tomcat/trunk/res/tomcat.nsi?rev=1568828&r1=1568827&r2=1568828&view=diff
==
--- tomcat/trunk/res/tomcat.nsi (original)
+++ tomcat/trunk/res/tomcat.nsi Sun Feb 16 21:05:04 2014
@@ -318,7 +318,7 @@ Section -post
 FileWrite $ServiceInstallLog "$\r$\n"
 FileWrite $ServiceInstallLog '"$INSTDIR\bin\$TomcatServiceFileName" 
//US//$TomcatServiceName --JvmOptions 
"-Dcatalina.home=$INSTDIR#-Dcatalina.base=$INSTDIR#-Djava.endorsed.dirs=$INSTDIR\endorsed#-Djava.io.tmpdir=$INSTDIR\temp#-Djava.util.logging.manager=org.apache.juli.ClassLoaderLogManager#-Djava.util.logging.config.file=$INSTDIR\conf\logging.properties"'
 FileWrite $ServiceInstallLog "$\r$\n"
-FileWrite $ServiceInstallLog '"$INSTDIR\bin\$TomcatServiceFileName" 
//US//$TomcatServiceName --StdOutput auto --StdError auto'
+FileWrite $ServiceInstallLog '"$INSTDIR\bin\$TomcatServiceFileName" 
//US//$TomcatServiceName --StdOutput auto --StdError auto --JvmMs 128 --JvmMx 
256'
 FileWrite $ServiceInstallLog "$\r$\n"
 FileClose $ServiceInstallLog
   ${EndIf}
@@ -326,7 +326,7 @@ Section -post
   DetailPrint "Configuring $TomcatServiceName service"
   nsExec::ExecToLog '"$INSTDIR\bin\$TomcatServiceFileName" 
//US//$TomcatServiceName --Classpath 
"$INSTDIR\bin\bootstrap.jar;$INSTDIR\bin\tomcat-juli.jar" --StartClass 
org.apache.catalina.startup.Bootstrap --StopClass 
org.apache.catalina.startup.Bootstrap --StartParams start --StopParams stop  
--StartMode jvm --StopMode jvm'
   nsExec::ExecToLog '"$INSTDIR\bin\$TomcatServiceFileName" 
//US//$TomcatServiceName --JvmOptions 
"-Dcatalina.home=$INSTDIR#-Dcatalina.base=$INSTDIR#-Djava.endorsed.dirs=$INSTDIR\endorsed#-Djava.io.tmpdir=$INSTDIR\temp#-Djava.util.logging.manager=org.apache.juli.ClassLoaderLogManager#-Djava.util.logging.config.file=$INSTDIR\conf\logging.properties"'
-  nsExec::ExecToLog '"$INSTDIR\bin\$TomcatServiceFileName" 
//US//$TomcatServiceName --StdOutput auto --StdError auto'
+  nsExec::ExecToLog '"$INSTDIR\bin\$TomcatServiceFileName" 
//US//$TomcatServiceName --StdOutput auto --StdError auto  --JvmMs 128 --JvmMx 
256'
 
   ${If} $TomcatShortcutAllUsers == "1"
 WriteRegStr HKLM "

svn commit: r1568844 - /tomcat/tc6.0.x/trunk/STATUS.txt

2014-02-16 Thread kkolinko
Author: kkolinko
Date: Sun Feb 16 22:04:33 2014
New Revision: 1568844

URL: http://svn.apache.org/r1568844
Log:
Proposal

Modified:
tomcat/tc6.0.x/trunk/STATUS.txt

Modified: tomcat/tc6.0.x/trunk/STATUS.txt
URL: 
http://svn.apache.org/viewvc/tomcat/tc6.0.x/trunk/STATUS.txt?rev=1568844&r1=1568843&r2=1568844&view=diff
==
--- tomcat/tc6.0.x/trunk/STATUS.txt (original)
+++ tomcat/tc6.0.x/trunk/STATUS.txt Sun Feb 16 22:04:33 2014
@@ -34,6 +34,12 @@ PATCHES PROPOSED TO BACKPORT:
   +1: markt, kkolinko
   -1:
 
+* Make the xmlBlockExternal option in Catalina and Jasper to be true by 
default.
+  
https://people.apache.org/~kkolinko/patches/2014-02-17_tc6_xmlBlockExternalTrue.patch
+  (backport of r1564747)
+  +1: kkolinko
+  -1:
+
 
 PATCHES/ISSUES THAT ARE STALLED:
 



-
To unsubscribe, e-mail: dev-unsubscr...@tomcat.apache.org
For additional commands, e-mail: dev-h...@tomcat.apache.org



svn commit: r1568846 - in /tomcat/tc7.0.x/trunk: ./ bin/catalina.bat bin/configtest.bat bin/digest.bat bin/service.bat bin/shutdown.bat bin/startup.bat bin/tool-wrapper.bat bin/version.bat webapps/doc

2014-02-16 Thread kkolinko
Author: kkolinko
Date: Sun Feb 16 22:16:07 2014
New Revision: 1568846

URL: http://svn.apache.org/r1568846
Log:
Merged r1568768 from tomcat/trunk:
Simplify Windows *.bat files: remove %OS% checks, as current java does not run 
on ancient non-NT operating systems.

Modified:
tomcat/tc7.0.x/trunk/   (props changed)
tomcat/tc7.0.x/trunk/bin/catalina.bat
tomcat/tc7.0.x/trunk/bin/configtest.bat
tomcat/tc7.0.x/trunk/bin/digest.bat
tomcat/tc7.0.x/trunk/bin/service.bat
tomcat/tc7.0.x/trunk/bin/shutdown.bat
tomcat/tc7.0.x/trunk/bin/startup.bat
tomcat/tc7.0.x/trunk/bin/tool-wrapper.bat
tomcat/tc7.0.x/trunk/bin/version.bat
tomcat/tc7.0.x/trunk/webapps/docs/changelog.xml

Propchange: tomcat/tc7.0.x/trunk/
--
  Merged /tomcat/trunk:r1568768

Modified: tomcat/tc7.0.x/trunk/bin/catalina.bat
URL: 
http://svn.apache.org/viewvc/tomcat/tc7.0.x/trunk/bin/catalina.bat?rev=1568846&r1=1568845&r2=1568846&view=diff
==
--- tomcat/tc7.0.x/trunk/bin/catalina.bat (original)
+++ tomcat/tc7.0.x/trunk/bin/catalina.bat Sun Feb 16 22:16:07 2014
@@ -14,7 +14,6 @@ rem WITHOUT WARRANTIES OR CONDITIONS OF 
 rem See the License for the specific language governing permissions and
 rem limitations under the License.
 
-if "%OS%" == "Windows_NT" setlocal
 rem ---
 rem Start/Stop Script for the CATALINA Server
 rem
@@ -92,6 +91,8 @@ rem   Example (all one l
 rem   set TITLE=Tomcat.Cluster#1.Server#1 [%DATE% %TIME%]
 rem ---
 
+setlocal
+
 rem Suppress Terminate batch job on CTRL+C
 if not ""%1"" == ""run"" goto mainEntry
 if "%TEMP%" == "" goto mainEntry
@@ -260,13 +261,8 @@ goto execCmd
 
 :doStart
 shift
-if not "%OS%" == "Windows_NT" goto noTitle
 if "%TITLE%" == "" set TITLE=Tomcat
 set _EXECJAVA=start "%TITLE%" %_RUNJAVA%
-goto gotTitle
-:noTitle
-set _EXECJAVA=start %_RUNJAVA%
-:gotTitle
 if not ""%1"" == ""-security"" goto execCmd
 shift
 echo Using Security Manager

Modified: tomcat/tc7.0.x/trunk/bin/configtest.bat
URL: 
http://svn.apache.org/viewvc/tomcat/tc7.0.x/trunk/bin/configtest.bat?rev=1568846&r1=1568845&r2=1568846&view=diff
==
--- tomcat/tc7.0.x/trunk/bin/configtest.bat (original)
+++ tomcat/tc7.0.x/trunk/bin/configtest.bat Sun Feb 16 22:16:07 2014
@@ -14,11 +14,12 @@ rem WITHOUT WARRANTIES OR CONDITIONS OF 
 rem See the License for the specific language governing permissions and
 rem limitations under the License.
 
-if "%OS%" == "Windows_NT" setlocal
 rem ---
 rem Configuration test script for the CATALINA Server
 rem ---
 
+setlocal
+
 rem Guess CATALINA_HOME if not defined
 set "CURRENT_DIR=%cd%"
 if not "%CATALINA_HOME%" == "" goto gotHome

Modified: tomcat/tc7.0.x/trunk/bin/digest.bat
URL: 
http://svn.apache.org/viewvc/tomcat/tc7.0.x/trunk/bin/digest.bat?rev=1568846&r1=1568845&r2=1568846&view=diff
==
--- tomcat/tc7.0.x/trunk/bin/digest.bat (original)
+++ tomcat/tc7.0.x/trunk/bin/digest.bat Sun Feb 16 22:16:07 2014
@@ -14,11 +14,12 @@ rem WITHOUT WARRANTIES OR CONDITIONS OF 
 rem See the License for the specific language governing permissions and
 rem limitations under the License.
 
-if "%OS%" == "Windows_NT" setlocal
 rem ---
 rem Script to digest password using the algorithm specified
 rem ---
 
+setlocal
+
 rem Guess CATALINA_HOME if not defined
 set "CURRENT_DIR=%cd%"
 if not "%CATALINA_HOME%" == "" goto gotHome

Modified: tomcat/tc7.0.x/trunk/bin/service.bat
URL: 
http://svn.apache.org/viewvc/tomcat/tc7.0.x/trunk/bin/service.bat?rev=1568846&r1=1568845&r2=1568846&view=diff
==
--- tomcat/tc7.0.x/trunk/bin/service.bat (original)
+++ tomcat/tc7.0.x/trunk/bin/service.bat Sun Feb 16 22:16:07 2014
@@ -14,7 +14,6 @@ rem WITHOUT WARRANTIES OR CONDITIONS OF 
 rem See the License for the specific language governing permissions and
 rem limitations under the License.
 
-if "%OS%" == "Windows_NT" setlocal
 rem ---
 rem NT Service Install/Uninstall script
 rem
@@ -27,6 +26,8 @@ rem name(optional) If the second
 remto be new service name
 rem ---
 
+setlocal
+
 set "SELF=%~dp0%service.bat"
 rem Gu

[Bug 56144] New: commons-daemon has different file.encoding with none daemon env

2014-02-16 Thread bugzilla
https://issues.apache.org/bugzilla/show_bug.cgi?id=56144

Bug ID: 56144
   Summary: commons-daemon has different file.encoding with none
daemon env
   Product: Tomcat 6
   Version: 6.0.36
  Hardware: PC
OS: Linux
Status: NEW
  Severity: normal
  Priority: P2
 Component: Catalina
  Assignee: dev@tomcat.apache.org
  Reporter: shiym...@gmail.com

OS:CentOS 6.4
tomcat version: 6.0.36
JDK version: 1.6.0_43
daemon version: 1.0.10

I run tomcat with daemon and got a result by jinfo:
sun.jnu.encoding = ANSI_X3.4-1968
file.encoding = ANSI_X3.4-1968

I got a different result when i run without daemon:
sun.jnu.encoding = UTF-8
file.encoding = UTF-8

env|grep LANG
LANG = en_US.UTF-8

daemon compile by commons-daemon-1.0.10-native-src from tomcat

gcc (GCC) 4.4.7 20120313 (Red Hat 4.4.7-3)

is there something wrong ?

-- 
You are receiving this mail because:
You are the assignee for the bug.

-
To unsubscribe, e-mail: dev-unsubscr...@tomcat.apache.org
For additional commands, e-mail: dev-h...@tomcat.apache.org



[Bug 56144] commons-daemon has different file.encoding with none daemon env

2014-02-16 Thread bugzilla
https://issues.apache.org/bugzilla/show_bug.cgi?id=56144

Konstantin Kolinko  changed:

   What|Removed |Added

 Status|NEW |RESOLVED
 Resolution|--- |INVALID

--- Comment #1 from Konstantin Kolinko  ---
Step by step instructions to reproduce = ?

Bugzilla is not a support forum. You have to ask on a mailing list. It is
likely your own configuration problem, not a bug.
http://tomcat.apache.org/bugreport.html#Bugzilla_is_not_a_support_forum

Thus closing as INVALID.


Just one quick note:

> env|grep LANG
> LANG = en_US.UTF-8

Where is that? If it is in your own interactive shell, it may be unrelated to
the LANG value seen by daemon script.

The daemon might be launched by different user (root) or by different shell
environment (interactive and non-interactive shells use different configuration
files, see bash manual) or may be setting its LANG variable elsewhere (depends
on what script you are using, how you installed it).

-- 
You are receiving this mail because:
You are the assignee for the bug.

-
To unsubscribe, e-mail: dev-unsubscr...@tomcat.apache.org
For additional commands, e-mail: dev-h...@tomcat.apache.org