/hg/release/icedtea7-2.3: 5 new changesets

andrew at icedtea.classpath.org andrew at icedtea.classpath.org
Tue Jan 15 04:46:03 PST 2013


changeset e3c253d72ae5 in /hg/release/icedtea7-2.3
details: http://icedtea.classpath.org/hg/release/icedtea7-2.3?cmd=changeset;node=e3c253d72ae5
author: Andrew John Hughes <gnu_andrew at member.fsf.org>
date: Tue Jan 15 08:58:30 2013 +0000

	Update ecj stringswitch patch to work after security update.

	2013-01-15  Andrew John Hughes  <gnu.andrew at member.fsf.org>

		* patches/boot/ecj-stringswitch.patch:
		Updated to work post-security-patches.


changeset 22c8a74134c1 in /hg/release/icedtea7-2.3
details: http://icedtea.classpath.org/hg/release/icedtea7-2.3?cmd=changeset;node=22c8a74134c1
author: Andrew John Hughes <gnu_andrew at member.fsf.org>
date: Tue Jan 15 09:40:18 2013 +0000

	When building with PaX, PaX mark the output directory before running the just-built rmic.

	2013-01-15  Andrew John Hughes  <gnu.andrew at member.fsf.org>

		* Makefile.am:
		(ICEDTEA_PATCHES): Add patch when building
		with PaX.
		* patches/pax-mark-rmic-java.patch:
		PaX mark output directory before running just-built
		rmic.


changeset 8e6c3e993e92 in /hg/release/icedtea7-2.3
details: http://icedtea.classpath.org/hg/release/icedtea7-2.3?cmd=changeset;node=8e6c3e993e92
author: Andrew John Hughes <gnu_andrew at member.fsf.org>
date: Tue Jan 15 09:42:56 2013 +0000

	Mention fix for G422525 in NEWS.

	2013-01-15  Andrew John Hughes  <gnu.andrew at member.fsf.org>

		* NEWS: Mention PaX bug fix from Gentoo,
		G422525.


changeset 6c1ea875ae64 in /hg/release/icedtea7-2.3
details: http://icedtea.classpath.org/hg/release/icedtea7-2.3?cmd=changeset;node=6c1ea875ae64
author: Andrew John Hughes <gnu_andrew at member.fsf.org>
date: Tue Jan 15 09:43:10 2013 +0000

	Removed tag icedtea-2.3.4


changeset fa200daee354 in /hg/release/icedtea7-2.3
details: http://icedtea.classpath.org/hg/release/icedtea7-2.3?cmd=changeset;node=fa200daee354
author: Andrew John Hughes <gnu_andrew at member.fsf.org>
date: Tue Jan 15 09:43:14 2013 +0000

	Added tag icedtea-2.3.4 for changeset 6c1ea875ae64


diffstat:

 .hgtags                             |    4 +
 ChangeLog                           |   19 ++
 Makefile.am                         |    4 +-
 NEWS                                |    1 +
 patches/boot/ecj-stringswitch.patch |  299 +++++++++++++++++++----------------
 patches/pax-mark-rmic-java.patch    |   10 +
 6 files changed, 201 insertions(+), 136 deletions(-)

diffs (430 lines):

diff -r 6e94882432a3 -r fa200daee354 .hgtags
--- a/.hgtags	Tue Jan 15 01:45:18 2013 +0000
+++ b/.hgtags	Tue Jan 15 09:43:14 2013 +0000
@@ -38,3 +38,7 @@
 a7c86c0471bd7a5cae44eef484fe09ca9e94d07c icedtea-2.3.2
 a45882b177918373cfa9edeee75f23f06ffa8095 icedtea-2.3.3
 152e626ab6b53d539939371700c3ab456f00637a icedtea-2.3.4
+152e626ab6b53d539939371700c3ab456f00637a icedtea-2.3.4
+0000000000000000000000000000000000000000 icedtea-2.3.4
+0000000000000000000000000000000000000000 icedtea-2.3.4
+6c1ea875ae648f7b4fac17070a7b108645211808 icedtea-2.3.4
diff -r 6e94882432a3 -r fa200daee354 ChangeLog
--- a/ChangeLog	Tue Jan 15 01:45:18 2013 +0000
+++ b/ChangeLog	Tue Jan 15 09:43:14 2013 +0000
@@ -1,3 +1,22 @@
+2013-01-15  Andrew John Hughes  <gnu.andrew at member.fsf.org>
+
+	* NEWS: Mention PaX bug fix from Gentoo,
+	G422525.
+
+2013-01-15  Andrew John Hughes  <gnu.andrew at member.fsf.org>
+
+	* Makefile.am:
+	(ICEDTEA_PATCHES): Add patch when building
+	with PaX.
+	* patches/pax-mark-rmic-java.patch:
+	PaX mark output directory before running just-built
+	rmic.
+
+2013-01-15  Andrew John Hughes  <gnu.andrew at member.fsf.org>
+
+	* patches/boot/ecj-stringswitch.patch:
+	Updated to work post-security-patches.
+
 2013-01-15  Andrew John Hughes  <gnu.andrew at member.fsf.org>
 
 	* configure.ac: Bump to 2.3.4 proper.
diff -r 6e94882432a3 -r fa200daee354 Makefile.am
--- a/Makefile.am	Tue Jan 15 01:45:18 2013 +0000
+++ b/Makefile.am	Tue Jan 15 09:43:14 2013 +0000
@@ -296,7 +296,9 @@
 endif
 
 if WITH_PAX
-ICEDTEA_PATCHES += patches/test_gamma.patch
+ICEDTEA_PATCHES += \
+	patches/test_gamma.patch \
+	patches/pax-mark-rmic-java.patch
 endif
 
 ICEDTEA_PATCHES += $(DISTRIBUTION_PATCHES)
diff -r 6e94882432a3 -r fa200daee354 NEWS
--- a/NEWS	Tue Jan 15 01:45:18 2013 +0000
+++ b/NEWS	Tue Jan 15 09:43:14 2013 +0000
@@ -18,6 +18,7 @@
   - S8006125: Update MethodHandles library interactions
 * Bug fixes
   - S7197906: BlockOffsetArray::power_to_cards_back() needs to handle > 32 bit shifts
+  - G422525: Fix building with PaX enabled kernels.
 
 New in release 2.3.3 (2012-10-17):
 
diff -r 6e94882432a3 -r fa200daee354 patches/boot/ecj-stringswitch.patch
--- a/patches/boot/ecj-stringswitch.patch	Tue Jan 15 01:45:18 2013 +0000
+++ b/patches/boot/ecj-stringswitch.patch	Tue Jan 15 09:43:14 2013 +0000
@@ -1,6 +1,6 @@
 diff -Nru openjdk-boot.orig/jdk/src/share/classes/com/sun/java/util/jar/pack/ClassReader.java openjdk-boot/jdk/src/share/classes/com/sun/java/util/jar/pack/ClassReader.java
---- openjdk-boot.orig/jdk/src/share/classes/com/sun/java/util/jar/pack/ClassReader.java	2011-07-27 14:31:14.000000000 +0100
-+++ openjdk-boot/jdk/src/share/classes/com/sun/java/util/jar/pack/ClassReader.java	2011-07-27 14:54:48.369035615 +0100
+--- openjdk-boot.orig/jdk/src/share/classes/com/sun/java/util/jar/pack/ClassReader.java	2013-01-14 22:25:02.000000000 +0000
++++ openjdk-boot/jdk/src/share/classes/com/sun/java/util/jar/pack/ClassReader.java	2013-01-15 02:08:56.592702486 +0000
 @@ -350,18 +350,15 @@
              if (attrCommands != null) {
                  Attribute.Layout lkey = Attribute.keyForLookup(ctype, name);
@@ -30,9 +30,9 @@
              }
              // Find canonical instance of the requested attribute.
 diff -Nru openjdk-boot.orig/jdk/src/share/classes/com/sun/java/util/jar/pack/Driver.java openjdk-boot/jdk/src/share/classes/com/sun/java/util/jar/pack/Driver.java
---- openjdk-boot.orig/jdk/src/share/classes/com/sun/java/util/jar/pack/Driver.java	2011-06-11 00:38:08.000000000 +0100
-+++ openjdk-boot/jdk/src/share/classes/com/sun/java/util/jar/pack/Driver.java	2011-07-27 14:52:45.595028657 +0100
-@@ -71,16 +71,14 @@
+--- openjdk-boot.orig/jdk/src/share/classes/com/sun/java/util/jar/pack/Driver.java	2013-01-14 22:25:02.000000000 +0000
++++ openjdk-boot/jdk/src/share/classes/com/sun/java/util/jar/pack/Driver.java	2013-01-15 02:08:56.608702746 +0000
+@@ -73,16 +73,14 @@
          {
              // Non-standard, undocumented "--unpack" switch enables unpack mode.
              String arg0 = av.isEmpty() ? "" : av.get(0);
@@ -56,7 +56,7 @@
          }
  
          // Collect engine properties here:
-@@ -180,21 +178,16 @@
+@@ -182,21 +180,16 @@
          // Deal with remaining non-engine properties:
          for (String opt : avProps.keySet()) {
              String val = avProps.get(opt);
@@ -89,8 +89,8 @@
  
          if (logFile != null && !logFile.equals("")) {
 diff -Nru openjdk-boot.orig/jdk/src/share/classes/com/sun/java/util/jar/pack/Package.java openjdk-boot/jdk/src/share/classes/com/sun/java/util/jar/pack/Package.java
---- openjdk-boot.orig/jdk/src/share/classes/com/sun/java/util/jar/pack/Package.java	2011-07-27 14:31:14.000000000 +0100
-+++ openjdk-boot/jdk/src/share/classes/com/sun/java/util/jar/pack/Package.java	2011-07-27 14:52:45.599028722 +0100
+--- openjdk-boot.orig/jdk/src/share/classes/com/sun/java/util/jar/pack/Package.java	2013-01-14 22:25:02.000000000 +0000
++++ openjdk-boot/jdk/src/share/classes/com/sun/java/util/jar/pack/Package.java	2013-01-15 02:08:56.608702746 +0000
 @@ -1107,30 +1107,25 @@
          // what is one of { Debug, Compile, Constant, Exceptions, InnerClasses }
          if (verbose > 0)
@@ -142,8 +142,8 @@
      }
  
 diff -Nru openjdk-boot.orig/jdk/src/share/classes/com/sun/security/ntlm/NTLM.java openjdk-boot/jdk/src/share/classes/com/sun/security/ntlm/NTLM.java
---- openjdk-boot.orig/jdk/src/share/classes/com/sun/security/ntlm/NTLM.java	2011-04-30 03:28:32.000000000 +0100
-+++ openjdk-boot/jdk/src/share/classes/com/sun/security/ntlm/NTLM.java	2011-07-27 14:52:45.603028787 +0100
+--- openjdk-boot.orig/jdk/src/share/classes/com/sun/security/ntlm/NTLM.java	2013-01-14 22:25:02.000000000 +0000
++++ openjdk-boot/jdk/src/share/classes/com/sun/security/ntlm/NTLM.java	2013-01-15 02:08:56.612702810 +0000
 @@ -64,17 +64,23 @@
  
      protected NTLM(String version) throws NTLMException {
@@ -179,132 +179,10 @@
          try {
              fac = SecretKeyFactory.getInstance ("DES");
              cipher = Cipher.getInstance ("DES/ECB/NoPadding");
-diff -Nru openjdk-boot.orig/jdk/src/share/classes/java/lang/invoke/MethodHandleProxies.java openjdk-boot/jdk/src/share/classes/java/lang/invoke/MethodHandleProxies.java
---- openjdk-boot.orig/jdk/src/share/classes/java/lang/invoke/MethodHandleProxies.java	2011-07-12 12:43:47.000000000 +0100
-+++ openjdk-boot/jdk/src/share/classes/java/lang/invoke/MethodHandleProxies.java	2011-07-27 14:52:45.607028852 +0100
-@@ -211,14 +211,16 @@
- 
-     private static
-     boolean isObjectMethod(Method m) {
--        switch (m.getName()) {
--        case "toString":
-+        String name = m.getName();
-+        if ("toString".equals(name)) {
-             return (m.getReturnType() == String.class
-                     && m.getParameterTypes().length == 0);
--        case "hashCode":
-+        }
-+        if ("hashCode".equals(name)) {
-             return (m.getReturnType() == int.class
-                     && m.getParameterTypes().length == 0);
--        case "equals":
-+        }
-+        if ("equals".equals(name)) {
-             return (m.getReturnType() == boolean.class
-                     && m.getParameterTypes().length == 1
-                     && m.getParameterTypes()[0] == Object.class);
-@@ -229,12 +231,14 @@
-     private static
-     Object callObjectMethod(Object self, Method m, Object[] args) {
-         assert(isObjectMethod(m)) : m;
--        switch (m.getName()) {
--        case "toString":
-+        String name = m.getName();
-+        if ("toString".equals(name)) {
-             return self.getClass().getName() + "@" + Integer.toHexString(self.hashCode());
--        case "hashCode":
-+        }
-+        if ("hashCode".equals(name)) {
-             return System.identityHashCode(self);
--        case "equals":
-+        }
-+        if ("equals".equals(name)) {
-             return (self == args[0]);
-         }
-         return null;
-diff -Nru openjdk-boot.orig/jdk/src/share/classes/sun/launcher/LauncherHelper.java openjdk-boot/jdk/src/share/classes/sun/launcher/LauncherHelper.java
---- openjdk-boot.orig/jdk/src/share/classes/sun/launcher/LauncherHelper.java	2011-06-11 00:38:09.000000000 +0100
-+++ openjdk-boot/jdk/src/share/classes/sun/launcher/LauncherHelper.java	2011-07-27 14:52:45.603028787 +0100
-@@ -117,24 +117,20 @@
-         String optStr = (opts.length > 1 && opts[1] != null)
-                 ? opts[1].trim()
-                 : "all";
--        switch (optStr) {
--            case "vm":
-+        if ("vm".equals(optStr))
-+            printVmSettings(ostream, initialHeapSize, maxHeapSize,
-+                            stackSize, isServer);
-+        else if ("properties".equals(optStr))
-+            printProperties(ostream);
-+        else if ("locale".equals(optStr))
-+            printLocale(ostream);
-+        else
-+            {
-                 printVmSettings(ostream, initialHeapSize, maxHeapSize,
--                        stackSize, isServer);
--                break;
--            case "properties":
-+                                stackSize, isServer);
-                 printProperties(ostream);
--                break;
--            case "locale":
-                 printLocale(ostream);
--                break;
--            default:
--                printVmSettings(ostream, initialHeapSize, maxHeapSize,
--                        stackSize, isServer);
--                printProperties(ostream);
--                printLocale(ostream);
--                break;
--        }
-+            }
-     }
- 
-     /*
-diff -Nru openjdk-boot.orig/jdk/src/share/classes/sun/security/util/DisabledAlgorithmConstraints.java openjdk-boot/jdk/src/share/classes/sun/security/util/DisabledAlgorithmConstraints.java
---- openjdk-boot.orig/jdk/src/share/classes/sun/security/util/DisabledAlgorithmConstraints.java	2011-04-30 03:28:32.000000000 +0100
-+++ openjdk-boot/jdk/src/share/classes/sun/security/util/DisabledAlgorithmConstraints.java	2011-07-27 14:52:45.607028852 +0100
-@@ -383,19 +383,23 @@
-             GE;         // ">="
- 
-             static Operator of(String s) {
--                switch (s) {
--                    case "==":
--                        return EQ;
--                    case "!=":
--                        return NE;
--                    case "<":
--                        return LT;
--                    case "<=":
--                        return LE;
--                    case ">":
--                        return GT;
--                    case ">=":
--                        return GE;
-+                if ("==".equals(s)) {
-+                    return EQ;
-+                }
-+                if ("!=".equals(s)) {
-+                    return NE;
-+                }
-+                if ("<".equals(s)) {
-+                    return LT;
-+                }
-+                if ("<=".equals(s)) {
-+                    return LE;
-+                }
-+                if (">".equals(s)) {
-+                    return GT;
-+                }
-+                if (">=".equals(s)) {
-+                    return GE;
-                 }
- 
-                 throw new IllegalArgumentException(
 diff -Nru openjdk-boot.orig/jdk/src/share/classes/java/lang/invoke/MethodHandleNatives.java openjdk-boot/jdk/src/share/classes/java/lang/invoke/MethodHandleNatives.java
---- openjdk-boot.orig/jdk/src/share/classes/java/lang/invoke/MethodHandleNatives.java	2012-10-17 03:48:53.678554395 +0100
-+++ openjdk-boot/jdk/src/share/classes/java/lang/invoke/MethodHandleNatives.java	2012-10-17 04:20:20.203700764 +0100
-@@ -411,89 +411,84 @@
+--- openjdk-boot.orig/jdk/src/share/classes/java/lang/invoke/MethodHandleNatives.java	2013-01-14 22:25:02.000000000 +0000
++++ openjdk-boot/jdk/src/share/classes/java/lang/invoke/MethodHandleNatives.java	2013-01-15 02:19:34.315049222 +0000
+@@ -411,104 +411,99 @@
      static boolean isCallerSensitive(MemberName mem) {
          assert(mem.isInvocable());
          Class<?> defc = mem.getDeclaringClass();
@@ -319,6 +197,35 @@
 -        case "lookup":
 +	} else if ("lookup".equals(memName)) {
              return defc == java.lang.invoke.MethodHandles.class;
+-        case "findStatic":
+-        case "findVirtual":
+-        case "findConstructor":
+-        case "findSpecial":
+-        case "findGetter":
+-        case "findSetter":
+-        case "findStaticGetter":
+-        case "findStaticSetter":
+-        case "bind":
+-        case "unreflect":
+-        case "unreflectSpecial":
+-        case "unreflectConstructor":
+-        case "unreflectGetter":
+-        case "unreflectSetter":
++	} else if ("findStatic".equals(memName) ||
++		   "findVirtual".equals(memName) || 
++		   "findConstructor".equals(memName) ||
++		   "findSpecial".equals(memName) ||
++		   "findGetter".equals(memName) ||
++		   "findSetter".equals(memName) ||
++		   "findStaticGetter".equals(memName) ||
++		   "findStaticSetter".equals(memName) ||
++		   "bind".equals(memName) ||
++		   "unreflect".equals(memName) ||
++		   "unreflectSpecial".equals(memName) ||
++		   "unreflectConstructor".equals(memName) ||
++		   "unreflectGetter".equals(memName) ||
++		   "unreflectSetter".equals(memName)) {
+             return defc == java.lang.invoke.MethodHandles.Lookup.class;
 -        case "invoke":
 +        } else if ("invoke".equals(memName)) {
              return defc == java.lang.reflect.Method.class;
@@ -451,3 +358,125 @@
              return defc == java.util.ResourceBundle.class;
          }
          return false;
+diff -Nru openjdk-boot.orig/jdk/src/share/classes/java/lang/invoke/MethodHandleProxies.java openjdk-boot/jdk/src/share/classes/java/lang/invoke/MethodHandleProxies.java
+--- openjdk-boot.orig/jdk/src/share/classes/java/lang/invoke/MethodHandleProxies.java	2013-01-14 22:25:02.000000000 +0000
++++ openjdk-boot/jdk/src/share/classes/java/lang/invoke/MethodHandleProxies.java	2013-01-15 02:08:56.620702941 +0000
+@@ -219,14 +219,16 @@
+ 
+     private static
+     boolean isObjectMethod(Method m) {
+-        switch (m.getName()) {
+-        case "toString":
++        String name = m.getName();
++        if ("toString".equals(name)) {
+             return (m.getReturnType() == String.class
+                     && m.getParameterTypes().length == 0);
+-        case "hashCode":
++        }
++        if ("hashCode".equals(name)) {
+             return (m.getReturnType() == int.class
+                     && m.getParameterTypes().length == 0);
+-        case "equals":
++        }
++        if ("equals".equals(name)) {
+             return (m.getReturnType() == boolean.class
+                     && m.getParameterTypes().length == 1
+                     && m.getParameterTypes()[0] == Object.class);
+@@ -237,12 +239,14 @@
+     private static
+     Object callObjectMethod(Object self, Method m, Object[] args) {
+         assert(isObjectMethod(m)) : m;
+-        switch (m.getName()) {
+-        case "toString":
++        String name = m.getName();
++        if ("toString".equals(name)) {
+             return self.getClass().getName() + "@" + Integer.toHexString(self.hashCode());
+-        case "hashCode":
++        }
++        if ("hashCode".equals(name)) {
+             return System.identityHashCode(self);
+-        case "equals":
++        }
++        if ("equals".equals(name)) {
+             return (self == args[0]);
+         }
+         return null;
+diff -Nru openjdk-boot.orig/jdk/src/share/classes/sun/launcher/LauncherHelper.java openjdk-boot/jdk/src/share/classes/sun/launcher/LauncherHelper.java
+--- openjdk-boot.orig/jdk/src/share/classes/sun/launcher/LauncherHelper.java	2013-01-14 22:25:02.000000000 +0000
++++ openjdk-boot/jdk/src/share/classes/sun/launcher/LauncherHelper.java	2013-01-15 02:08:56.624703006 +0000
+@@ -117,24 +117,20 @@
+         String optStr = (opts.length > 1 && opts[1] != null)
+                 ? opts[1].trim()
+                 : "all";
+-        switch (optStr) {
+-            case "vm":
++        if ("vm".equals(optStr))
++            printVmSettings(ostream, initialHeapSize, maxHeapSize,
++                            stackSize, isServer);
++        else if ("properties".equals(optStr))
++            printProperties(ostream);
++        else if ("locale".equals(optStr))
++            printLocale(ostream);
++        else
++            {
+                 printVmSettings(ostream, initialHeapSize, maxHeapSize,
+-                        stackSize, isServer);
+-                break;
+-            case "properties":
++                                stackSize, isServer);
+                 printProperties(ostream);
+-                break;
+-            case "locale":
+                 printLocale(ostream);
+-                break;
+-            default:
+-                printVmSettings(ostream, initialHeapSize, maxHeapSize,
+-                        stackSize, isServer);
+-                printProperties(ostream);
+-                printLocale(ostream);
+-                break;
+-        }
++            }
+     }
+ 
+     /*
+diff -Nru openjdk-boot.orig/jdk/src/share/classes/sun/security/util/DisabledAlgorithmConstraints.java openjdk-boot/jdk/src/share/classes/sun/security/util/DisabledAlgorithmConstraints.java
+--- openjdk-boot.orig/jdk/src/share/classes/sun/security/util/DisabledAlgorithmConstraints.java	2013-01-14 22:25:02.000000000 +0000
++++ openjdk-boot/jdk/src/share/classes/sun/security/util/DisabledAlgorithmConstraints.java	2013-01-15 02:08:56.628703070 +0000
+@@ -378,19 +378,23 @@
+             GE;         // ">="
+ 
+             static Operator of(String s) {
+-                switch (s) {
+-                    case "==":
+-                        return EQ;
+-                    case "!=":
+-                        return NE;
+-                    case "<":
+-                        return LT;
+-                    case "<=":
+-                        return LE;
+-                    case ">":
+-                        return GT;
+-                    case ">=":
+-                        return GE;
++                if ("==".equals(s)) {
++                    return EQ;
++                }
++                if ("!=".equals(s)) {
++                    return NE;
++                }
++                if ("<".equals(s)) {
++                    return LT;
++                }
++                if ("<=".equals(s)) {
++                    return LE;
++                }
++                if (">".equals(s)) {
++                    return GT;
++                }
++                if (">=".equals(s)) {
++                    return GE;
+                 }
+ 
+                 throw new IllegalArgumentException(
diff -r 6e94882432a3 -r fa200daee354 patches/pax-mark-rmic-java.patch
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/patches/pax-mark-rmic-java.patch	Tue Jan 15 09:43:14 2013 +0000
@@ -0,0 +1,10 @@
+--- openjdk/jdk/make/com/sun/jmx/Makefile
++++ openjdk/jdk/make/com/sun/jmx/Makefile
+@@ -119,6 +119,7 @@
+ 
+ $(CLASSDESTDIR)/%_Stub.class: $(CLASSDESTDIR)/%.class
+ 	$(prep-target)
++	"$(TOPDIR)"/../../pax-mark-vm "$(OUTPUTDIR)"
+ 	$(RMIC) -classpath "$(CLASSDESTDIR)"    \
+                 -d $(CLASSDESTDIR)              \
+                 -v1.2                           \



More information about the distro-pkg-dev mailing list