Dumb UCF applet. Part II

At the beginning of August 2014 EMC released Webtop 6.7SP2P16, now, according to the patch notes, it’s certified against JRE 1.7_65:



Weird thing, JRE 1.7_51 is now out of support, thought in previous patch notes it was promised that JRE 1.7_51 will continue to be supported. Let’s check what has been changed in Webtop 6.7SP2P16 that made JRE 1.7_51 unsupported. To make my investigation more efficient I wrote four simple bash functions which allow me compare content of zip-archives:

zipstream() {
  ZIP=$1
  FILE=$2
  zipinfo -1 -- "$ZIP" "$FILE" >/dev/null 2>&1
  if [ "x$?" = "x0" ]; then
    unzip -p  -- "$ZIP" "$FILE"
  fi
}

zipmd5() {
  ZIP=$1
  zipinfo -1 -- "$ZIP" | egrep -v "/$"| sort | (
    while read FILE; do
      MD5=`unzip -p  -- "$ZIP" "$FILE" |  md5sum`
      MD5=${MD5// -/}
      echo "$FILE $MD5"
    done
  )
}

zipmd5diff() {
  diff -Nru <(zipmd5 $1) <(zipmd5 $2)
}

zipdiff() {
  diff -Nru <(zipstream $1 $3) <(zipstream $2 $3)
}

1. Comparing patch archives:

~]$ zipmd5diff Webtop_6.7.2130.0164.zip Webtop_6.7.2160.0191.zip | egrep '[+-]wdk/.*jar'
-wdk/contentXfer/ucf-ca-office-auto.jar a5a983ba4dc8c73f37bc54430a17fa99
+wdk/contentXfer/ucf-ca-office-auto.jar e4e934d681d12c641de57270a6413e8a
-wdk/fileselector/fileSelector.jar 6497d0d6b0bfb52782ffd154b89b8d4c
+wdk/fileselector/fileSelector1_1.jar d6931e59ae2b45031920abd04f5f6873
+wdk/fileselector/fileSelector.jar 4e7c9313ec85c6aefd4b6a8166899e5b
+wdk/imageviewer/irmsso/EMCIRMSSOApplet.jar 1abf13ee743833480369f620ab438b78
-wdk/system/ucfinit.jar 1b5c6dd021d6923fd95f4ef86380f2fe
-wdk/webwfm/clientJVMDetect.jar 9dfd919eab2cc7ab96d6566a4a826928
+wdk/system/ucfinit.jar 4e60955cf3c7051576fb7619cffadaba
+wdk/webwfm/clientJVMDetect.jar 3f92a82dc2f5852ad73a1b53f5decc03
+wdk/webwfm/webwfde.jar 889e87be38591aa75481257a90a32cf1

2. Extracting modified jars:

~]$ unzip Webtop_6.7.2160.0191.zip \
> wdk/fileselector/fileSelector.jar \
> wdk/fileselector/fileSelector1_1.jar \
> wdk/imageviewer/irmsso/EMCIRMSSOApplet.jar \
> wdk/system/ucfinit.jar \
> wdk/webwfm/clientJVMDetect.jar \
> wdk/webwfm/webwfde.jar \
> -d 6.7.2160.0191
Archive:  Webtop_6.7.2160.0191.zip
  inflating: 6.7.2160.0191/wdk/fileselector/fileSelector.jar
  inflating: 6.7.2160.0191/wdk/fileselector/fileSelector1_1.jar
  inflating: 6.7.2160.0191/wdk/imageviewer/irmsso/EMCIRMSSOApplet.jar
  inflating: 6.7.2160.0191/wdk/system/ucfinit.jar
  inflating: 6.7.2160.0191/wdk/webwfm/webwfde.jar
  inflating: 6.7.2160.0191/wdk/webwfm/clientJVMDetect.jar

~]$ unzip webtop.war \
> wdk/fileselector/fileSelector1_1.jar \
> wdk/imageviewer/irmsso/EMCIRMSSOApplet.jar \
> wdk/webwfm/webwfde.jar \
> -d 6.7.2130.0164
Archive:  webtop.war
 extracting: 6.7.2130.0164/wdk/fileselector/fileSelector1_1.jar
 extracting: 6.7.2130.0164/wdk/imageviewer/irmsso/EMCIRMSSOApplet.jar
 extracting: 6.7.2130.0164/wdk/webwfm/webwfde.jar
~]$ unzip Webtop_6.7.2130.0164.zip \
> wdk/fileselector/fileSelector.jar \
> wdk/system/ucfinit.jar \
> wdk/webwfm/clientJVMDetect.jar \
> -d 6.7.2130.0164
Archive:  Webtop_6.7.2130.0164.zip
  inflating: 6.7.2130.0164/wdk/fileselector/fileSelector.jar
  inflating: 6.7.2130.0164/wdk/system/ucfinit.jar
  inflating: 6.7.2130.0164/wdk/webwfm/clientJVMDetect.jar

3. ucfinit.jar changes:

~]$ zipmd5diff 6.7.2130.0164/wdk/system/ucfinit.jar 6.7.2160.0191/wdk/system/ucfinit.jar
--- /dev/fd/63  2014-08-11 20:19:01.786552197 +0400
+++ /dev/fd/62  2014-08-11 20:19:01.786552197 +0400
...
-META-INF/DOCUMENT.RSA 75636389bce0c3e012593215feca554d
-META-INF/DOCUMENT.SF 38992684d774f75385b32741bbdfbc6d
-META-INF/MANIFEST.MF c236c9fbe4bb0fcced115a9aea8e52ef
-ucf-ca-office-auto.jar.checksum 09d2de78e2dd380587212ad0da0212b0
-ucf-client-api.jar.checksum 130ed6b512a771f59a4a46b03f5c40fe
-ucf-client-impl.jar.checksum e5392c4c66bb15e39b8b91db5811ecb3
-ucf-client-installer.zip.checksum 07912be09dd87da2490ca36dcb2657da
+META-INF/DOCUMENT.RSA bfe3169838cb19fced7f9afe653d6d3e
+META-INF/DOCUMENT.SF 2b449efac673bb6d954d6295477fa7f8
+META-INF/MANIFEST.MF 409ba17fdd848cfe73d675211898827e
+ucf-ca-office-auto.jar.checksum 999a5143b137b27d770f3cbe7d865f68
+ucf-client-api.jar.checksum d9f50b54aca034cc47845120477d6918
+ucf-client-impl.jar.checksum bc0737d6cc97ac939a59b1e828013ec9
+ucf-client-installer.zip.checksum 7afebcadaf0ce8a2b581f5f4ab2299ff

~]$ zipdiff 6.7.2130.0164/wdk/system/ucfinit.jar 6.7.2160.0191/wdk/system/ucfinit.jar \
> META-INF/MANIFEST.MF
--- /dev/fd/63  2014-08-11 20:21:21.057551978 +0400
+++ /dev/fd/62  2014-08-11 20:21:21.057551978 +0400
@@ -4,11 +4,11 @@
 Created-By: 1.5.0_11-b03 (Sun Microsystems Inc.)
 Copyright: Documentum Inc. 2001, 2004
 Caller-Allowable-Codebase: *
-Build-Date: April 11 2014 07:49 AM
+Build-Date: July 11 2014 01:15 AM
 Ant-Version: Apache Ant 1.8.4
 Title: Documentum Client File Selector Applet
-Bundle-Version: 6.7.2130.0164
-Build-Version: 6.7.2130.0164
+Bundle-Version: 6.7.2160.0191
+Build-Version: 6.7.2160.0191
 Permissions: all-permissions
 Codebase: *

4. fileSelector.jar changes:

~]$ zipmd5diff 6.7.2130.0164/wdk/fileselector/fileSelector.jar \
> 6.7.2160.0191/wdk/fileselector/fileSelector.jar
--- /dev/fd/63  2014-08-11 20:22:52.464551808 +0400
+++ /dev/fd/62  2014-08-11 20:22:52.464551808 +0400
@@ -133,6 +133,6 @@
 com/documentum/web/util/Base64.class 190d7be2a00ddfb7965c783d2989afb9
 com/documentum/web/util/StringUtil.class 5fcdc3c3966004e5d0f8260f291e51cf
 com/documentum/web/util/Version.class 7bb7df68354541b6948a704e2c53c68c
-META-INF/DOCUMENT.RSA c8c3f615dd68a4a4710d85ddb49748ae
-META-INF/DOCUMENT.SF c184d027d3f88f1c1800158643045b8f
-META-INF/MANIFEST.MF 74c796e5a825f0ab0a9d6b171a66dcd6
+META-INF/DOCUMENT.RSA fb21c83c8838c8e789a73aebf830a2a3
+META-INF/DOCUMENT.SF 9e5d7e9b853e20861d7dde4f81d7e6a0
+META-INF/MANIFEST.MF 8b496f3c07fe14ae1d8b19a99847a94c

~]$ zipdiff 6.7.2130.0164/wdk/fileselector/fileSelector.jar \
> 6.7.2160.0191/wdk/fileselector/fileSelector.jar \
> META-INF/MANIFEST.MF
--- /dev/fd/63  2014-08-11 20:23:51.423551709 +0400
+++ /dev/fd/62  2014-08-11 20:23:51.426551705 +0400
@@ -4,11 +4,11 @@
 Created-By: 1.5.0_11-b03 (Sun Microsystems Inc.)
 Copyright: Documentum Inc. 2001, 2002, 2003
 Caller-Allowable-Codebase: *
-Build-Date: April 11 2014 07:50 AM
+Build-Date: July 11 2014 01:16 AM
 Ant-Version: Apache Ant 1.8.4
 Title: Documentum Client File Selector Applet
-Bundle-Version: 6.7.2130.0164
-Build-Version: 6.7.2130.0164
+Bundle-Version: 6.7.2160.0191
+Build-Version: 6.7.2160.0191
 Permissions: all-permissions
 Codebase: *

Because manifest files are identical (in sense of JRE security model), I may conclude that patch notes are wrong (either previous or current), and only Mahadeva does know the correct definition of word “supported” in release notes.

2 thoughts on “Dumb UCF applet. Part II

  1. Pingback: Webtop 6.8 EAP available | Documentum in a (nuts)HELL
  2. Pingback: How to provide backward compatibility with old java clients during UCF updates | Documentum in a (nuts)HELL

Leave a Reply

Fill in your details below or click an icon to log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out / Change )

Twitter picture

You are commenting using your Twitter account. Log Out / Change )

Facebook photo

You are commenting using your Facebook account. Log Out / Change )

Google+ photo

You are commenting using your Google+ account. Log Out / Change )

Connecting to %s