aboutsummaryrefslogtreecommitdiffstats
Commit message (Collapse)AuthorAgeFilesLines
* Added test-extension to silence stdout/err of itw when run from junitJiri Vanek2013-11-135-9/+105
|
* Enabled access to manifests' attributes from JNLPFile class, implemented ↵Jiri Vanek2013-11-1310-31/+476
| | | | http://docs.oracle.com/javase/7/docs/technotes/guides/jweb/manifest.html#app_name
* Fixed lock in awt threads. JavaConsole window is now disposed instead of hidden.Jiri Vanek2013-11-103-21/+65
|
* Removed suspicious return when (searchForMain) had null launchDesc in ↵Jiri Vanek2013-11-102-4/+7
| | | | netx/net/sourceforge/jnlp/runtime/JNLPClassLoader.java.
* Reproducer test cleanup to remove deprecation warnings and type checking ↵Andrew Azores2013-11-0743-182/+212
| | | | | | | | | warnings. ServerAccess.ProcessResult removed and reference replaced with ProcessResult. junit.framework.assert replaced in favour of org.junit.Assert. Added parameterized typing to instantiation of several fields and local variables where the declaration was already parameterized.
* Java console resurrected and connected to new logging.Jiri Vanek2013-11-0515-164/+333
|
* Avoid potential NPE in JNLPSecurityManager#addPermission when debug is enabledAndrew Azores2013-11-052-3/+13
| | | | | | * netx/net/sourceforge/jnlp/runtime/JNLPSecurityManager.java: (addPermission) avoid NPE in JNLPClassLoader#getPermissions with debug enabled
* Synced headers between PLUGIN_DEBUG, PLUGIN_ERROR and javasideJiri Vanek2013-11-013-35/+51
| | | | | * netx/net/sourceforge/jnlp/util/logging/OutputController.java: (getHeader) added thread id and name to log header. * plugin/icedteanp/IcedTeaPluginUtils.h: (PLUGIN_DEBUG) (PLUGIN_ERROR) headerrs generation code moved to macro (CREATE_HEADER0). Both headers now contains pthread_self and g_thread_self. Fixed indentation.
* tests/netx/unit/net/sourceforge/jnlp/runtime/JNLPClassLoaderTest.java: ↵Jiri Vanek2013-11-013-16/+172
| | | | | | added tests for custom attributes (getCustomAtributes), (getCustomAtributesEmpty) and test to ensure order during searching for attributes in manifests (checkOrderWhenReadingAttributes). tests/test-extensions/net/sourceforge/jnlp/mock/DummyJNLPFileWithJar.java: can now handle multiple source jars, and set main jar (new constructors), (jarFiles) and (jarDescs) redeclared to arrays.
* netx/net/sourceforge/jnlp/JARDesc.java: made immutableJiri Vanek2013-10-302-7/+13
| | | | (location)(version)(part)(lazy)(main)(nativeJar)(cacheable) made final
* Fix PR1513, signed applets with external main-class supportAndrew Azores2013-10-292-15/+15
| | | | | | * netx/net/sourceforge/jnlp/runtime/JNLPClassLoader.java: (initializeResources) ask for user approval rather than throwing LaunchException for signed applets with external main-class
* Plugin debug can now be controlled from itw_settings, in same way java side. ↵Jiri Vanek2013-10-257-21/+164
| | | | | | | | | | For now ICEDTEAPLUGIN_DEBUG on the debug in same way as deployment.log itw-settings property. Individual logging streams are controlled by deployment.log.{headers,file,stdstreams,system} System and file are not yet fully done (same as java side in this moment). Streams are true, all others false by default. * plugin/icedteanp/IcedTeaNPPlugin.cc: initialized variables new bool variables (debug_initiated), (plugin_debug_headers), (plugin_debug_to_file), (plugin_debug_to_system) as false and (plugin_debug_to_streams) as true. * plugin/icedteanp/IcedTeaNPPlugin.h: above variables declared as extern * plugin/icedteanp/IcedTeaParseProperties.cc: initialization of (default_file_ITW_deploy_props_name) and (custom_jre_key) moved here from IcedTeaNPPlugin.h. New method (read_bool_property) and its more concrete shortcuts (is_debug_on) (is_debug_header_on) (is_logging_to_file) (is_logging_to_stds) (is_logging_to_system) implemented to access properties. * plugin/icedteanp/IcedTeaParseProperties.h: above methods declared. * plugin/icedteanp/IcedTeaPluginUtils.h: (PLUGIN_{ERROR,DEBUG}) methods adapted headers/debug/streams logic as described in title. Headers made more informative (like java side) * tests/cpp-unit-tests/IcedTeaPluginUtilsTest.cc: TEST(PLUGIN_DEBUG_ERROR_PROFILING_debug_on) extended to TEST(PLUGIN_DEBUG_ERROR_PROFILING_debug_on_headers_off).TEST(PLUGIN_DEBUG_ERROR_PROFILING_debug_off) extended to TEST(PLUGIN_DEBUG_ERROR_PROFILING_debug_off_headers_off), and new testsTEST(PLUGIN_DEBUG_ERROR_PROFILING_debug_on_headers_on) TEST(PLUGIN_DEBUG_ERROR_PROFILING_debug_off_headers_on) (100x slower then without headers)
* All output messages redirected to PLUGIN_{DEBUG,ERROR} macrosJiri Vanek2013-10-259-46/+123
|
* OutputController.getCallerClass now gets out also from ↵Jiri Vanek2013-10-252-1/+8
| | | | sun.applet.PluginDebug class.
* Fix array index out of bounds due to malformed plugin message (PR539)Andrew Azores2013-10-246-1/+129
| | | | | | | | | | | | | | | | | Failed calls to getString and getMember on JSObjects should not produce malformed result strings. "null" is appended to result rather than empty string. * plugin/icedteanp/IcedTeaPluginRequestProcessor.cc: (_getMember, _getString) append "null" to result when call is unsuccessful * tests/reproducers/simple/JSObjectWithoutToString/resources/JSObjectWithoutToString.html: new test to ensure failed calls to getMember and getString on JSObject do not produce malformed results * tests/reproducers/simple/JSObjectWithoutToString/resources/JSObjectWithoutToString.js: same * tests/reproducers/simple/JSObjectWithoutToString/srcs/JSObjectWithoutToString.java: same * tests/reproducers/simple/JSObjectWithoutToString/testcases/JSObjectWithoutToStringTest.java: same
* C-part of plugin is now also trying to follow XDGJiri Vanek2013-10-232-1/+21
| | | | * plugin/icedteanp/IcedTeaParseProperties.cc: (user_properties_file) is now using XDG cached dir or its default variant in case that old file do not (should not!) exists
* Reset the LogConfig in unit testsOmair Majid2013-10-223-0/+26
| | | | | | | | | | | | | | | | | | LogConfig is globally shared. Fix unit tests that modify the logging configuration to reset it after (and before) to avoid affecting other unit tests or being affected by the results of other tests. Before this patch, if the tests were executed in a certain order, it was possible for them to leave behind a LogConfig that enabled logging in the most verbose manner possible. This would generate megabytes of output when running unit tests. 2013-10-22 Omair Majid <[email protected]> * netx/net/sourceforge/jnlp/util/logging/LogConfig.java (resetLogConfig): New method. * tests/netx/unit/net/sourceforge/jnlp/util/logging/OutputControllerTest.java (setUp, tearDown): New method.
* More synchronized error/debug methodsJiri Vanek2013-10-223-36/+43
| | | | | * plugin/icedteanp/IcedTeaNPPlugin.cc: all occurrences of PLUGIN_ERROR_TWO and PLUGIN_ERROR_THREE replaced by PLUGIN_ERROR. PLUGIN_ERROR itself moved to * plugin/icedteanp/IcedTeaPluginUtils.h: (PLUGIN_ERROR) new fuction, now uses ... arguments and printf with __VA_ARGS__ instead of g_printerr (PLUGIN_DEBUG) now prints to stdout, instead of stderr which is used by (PLUGIN_ERROR).
* Logic to extract main class attribute generalized to common methods.Jiri Vanek2013-10-212-32/+71
| | | | | | | | | | * netx/net/sourceforge/jnlp/runtime/JNLPClassLoader.java: (getMainClassName) is now calling (getManifestAttribute) (getManifestAttribute) new method, extract named attribute from url specified jar. Called by (checkForAttributeInJars) (checkForMain) is now calling (checkForAttributeInJars). Also logic of (checkForAttributeInJars) was taken from here. (checkForAttributeInJars) new method, read specific attribute from
* Minor fix in DEBUG initialisationJiri Vanek2013-10-203-2/+9
| | | | | * netx/net/sourceforge/jnlp/runtime/JNLPRuntime.java: (isPluginDebug) made private to prevent confusion. * plugin/icedteanp/java/sun/applet/PluginDebug.java: (DEBUG) initialized from JNLPRuntime.isDebug instead of incorrect JNLPRuntime.isPluginDebug.
* Back out changeset 420d72e5cee7Andrew Azores2013-10-177-335/+164
| | | | | | | | | | | Back out changeset 420d72e5cee7 due to breaking LiveConnect feature. http://mail.openjdk.java.net/pipermail/distro-pkg-dev/2013-October/024919.html * plugin/icedteanp/IcedTeaNPPlugin.cc: undo 420d72e5cee7 * plugin/icedteanp/IcedTeaPluginUtils.cc: undo 420d72e5cee7 * plugin/icedteanp/IcedTeaPluginUtils.h: undo 420d72e5cee7 * plugin/icedteanp/IcedTeaScriptablePluginObject.cc: undo 420d72e5cee7 * plugin/icedteanp/IcedTeaScriptablePluginObject.h: undo 420d72e5cee7 * tests/cpp-unit-tests/IcedTeaScriptablePluginObjectTest.cc: undo 420d72e5cee7
* Add RH976833 fix note to NEWSAndrew Azores2013-10-161-0/+1
|
* Resolve multiple-applet deadlock issue in JNLPClassLoaderAndrew Azores2013-10-167-62/+305
| | | | | | | | | | | | | | | | | | | | New lock used for synchronizing JNLPClassLoader#loadClass(String) to avoid deadlock condition when multiple applets are being loaded simultaneously. Regression test included. * netx/net/sourceforge/jnlp/runtime/JNLPClassLoader.java: (loadClassLock) private member for locking of loadClass method. (loadClass) synchronizes using new lock rather than instance intrinsic lock to avoid RH976833 deadlock * tests/reproducers/custom/JNLPClassLoaderDeadlock/testcases/JNLPClassLoaderDeadlockTest.java: new test for multiple applet deadlock condition * tests/reproducers/custom/JNLPClassLoaderDeadlock/resources/JNLPClassLoaderDeadlock.html: same * tests/reproducers/custom/JNLPClassLoaderDeadlock/srcs/JNLPClassLoaderDeadlock_1.java: same * tests/reproducers/custom/JNLPClassLoaderDeadlock/srcs/JNLPClassLoaderDeadlock_2.java: same * tests/reproducers/custom/JNLPClassLoaderDeadlock/srcs/Makefile: same
* SecurityDialog centers itself before becoming visibleAndrew Azores2013-10-112-2/+6
| | | | | * netx/net/sourceforge/jnlp/security/SecurityDialog.java: (initDialog) centerDialog called in init rather than on windowOpened event
* Remove duplicate key computation in proxy codeOmair Majid2013-10-092-3/+13
|
* Move some proxy logic to BrowserAwareProxySelectorOmair Majid2013-10-095-69/+94
| | | | | | The logic for mangling URIs to be compatible with the browser seems more appropriate to keep in the ProxySelector rather than the catch-all PluginAppletViewer.
* DeploymentConfiguration properties reproducer fixAndrew Azores2013-10-072-3/+14
| | | | Update test to reflect changed log directory
* Fix regression in ResourceUrlCreator due to PR1204 patchAndrew Azores2013-10-033-55/+148
| | | | | | | | | * netx/net/sourceforge/jnlp/cache/ResourceUrlCreator.java: (getVersionedUrl) fix regression in previous PR1204 patch. Refactor to not take Resource parameter, use instance's field instead. (uriPartToString) new method * tests/netx/unit/net/sourceforge/jnlp/cache/ResourceUrlCreatorTest.java: new tests for ResourceUrlCreator.getVersionedUrl
* * Cache viewer update:Jacob Wisor2013-10-036-105/+478
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | - Can be closed by ESC key - Enabling and disabling of operational buttons is handled properly - Time consuming operations are indicated by a mouse busy cursor - "Size" and "Last Modified" columns display localized data * netx/net/sourceforge/jnlp/controlpanel/CachePane.java: Moved JButtons to members. (addComponents): Modified to make use of new NonEditableTableModel. Added ListSelectionListener to propertly handle enabling and disabling of operational JButtons when selecting a resource from the cache table. Moved inital populating of the cache table to CacheViewer's constructor until after the CachePane has been instatiated. Added a general purpose Comparator for all non-String columns in the table model. Added a TableCellRenderer with proper localized rendering of "Size" and "Last Modified" columns as well as the content of "Name" and "Path" columns. (createButtonPanel): Moved delete operation into new method invokeDeleteLater(), added mouse cursor busy indicator, and proper handling of enabling and disabling of operational JButtons when pushing the delete button. Moved refresh operation when pushing the refresh button into new method invokePopulateLater() and added proper handling of enabling and disabling of operational JButtons while refreshing. Replaced closing the cache viewer dialog via JDialog.dispose() when pushing the delete button by a post of the WindowEvent.WINDOW_CLOSING event to the CacheViewer dialog in order to effectively remove the newly introduced KeyEventDispatcher. (invokeDeleteLater): New method: Posts an event to the event queue deleting the currently selected resource. (invokePopulateLater): New method: Posts an event to the event queue repopulating the cache table. (populateTable): Added mouse cursor busy indicator. (generateData): Modified cache table's per row data model for proper rendering and sorting to: DirectoryNode, File, String, String, Long, Date. * netx/net/sourceforge/jnlp/controlpanel/CacheViewer.java: (CacheViewer): Added null parameter check. Added a KeyEventDispatcher to enable closing the CacheViewer dialog on a KeyEvent.VK_ESCAPE key event. Replaced closing the cache viewer dialog via JDialog.dispose() by a post of the WindowEvent.WINDOW_CLOSING event to the CacheViewer dialog in order to effectively remove the newly introduced KeyEventDispatcher. * netx/net/sourceforge/jnlp/util/ui/NonEditableTableModel.java: Added a new table model that in effect is a javax.swing.table.DefaultTableModel except for no cell being editable. * netx/net/sourceforge/jnlp/util/ui/package-info.java: Added new package for UI common and recurrung UI tasks with documentation
* Unit tests for BrowserAwareProxySelectorOmair Majid2013-10-015-43/+297
| | | | | | | Also move duplicate code for selecting a host and port depending on the protocol into JNLPProxySelector.getFromArguments. The semantics of 'sameProxy' are different between BrowserAwareProxySelector and JNLPProxySelector; the socks proxy is included in firefox.
* Add unit tests for PluginProxySelectorOmair Majid2013-10-013-1/+209
| | | | | | There are no functional changes to PluginProxySelector itself. Refactor minimial code to make it possible to unit test. Mark suspicious behaviour with a FIXME or TODO.
* Fix for PR1204, handling of query strings and absolute paths.Andrew Azores2013-09-268-32/+369
| | | | | | | | | | | | | | | | | | | | | | | | Absolute paths in resource URLs are correctly handled when appended to host URLs and URL query strings are not removed. * netx/net/sourceforge/jnlp/cache/ResourceUrlCreator.java: (getVersionedUrlUsingQuery) renamed to getVersionedUrl, refactored construction of URL * plugin/icedteanp/java/sun/applet/PluginAppletViewer.java: (requestPluginProxyInfo) extracted proxy URI logic. (processProxyUri) new method for finding proxy URIs, handles absolute resource paths correctly * tests/netx/unit/net/sourceforge/jnlp/cache/ResourceUrlCreatorTest.java: added tests for ResourceUrlCreator#getVersionedUrl * tests/netx/unit/sun/applet/PluginAppletViewerTest.java: added tests for PluginAppletViewer.processProxyUri * tests/reproducers/simple/AbsolutePathsAndQueryStrings/resources/AbsolutePathsAndQueryStrings.html: new reproducer checks that absolute paths and query strings in resource URLs are properly handled, and caching still works * tests/reproducers/simple/AbsolutePathsAndQueryStrings/resources/AbsolutePathsAndQueryStrings.jnlp: same * tests/reproducers/simple/AbsolutePathsAndQueryStrings/testcases/AbsolutePathsAndQueryStrings.java: same
* Clean up summary_unit.txt and summary_reproducers.txt for "make clean"Andrew Azores2013-09-252-0/+7
|
* Introduced logging bottleneckJiri Vanek2013-09-25119-1138/+2584
|
* PR1474: Can't get javaws to use SOCKS proxyOmair Majid2013-09-245-19/+51
| | | | | | | | If there is a SOCKS proxy specified, use it for https, http, and ftp protocols too (as a fallback). 'sameProxy' now affects the https, http and ftp protocols, but not the socket protocol.
* Unit tests for JNLPProxySelectorOmair Majid2013-09-238-15/+363
| | | | | | | | | | This contains one functional change: - String host = uri.getSchemeSpecificPart().split(":")[0]; + String host = uri.getHost(); Given the URI of "socket://example.org", the first line evaluates to "//example.org", while the second one (correctly) evaluates to "example.org".
* Unit test for InformationDescOmair Majid2013-09-205-14/+225
| | | | | | Also remove the references to JNLPFile from InformationDesc. This makes it much easier to instantiate InformationDesc for tests.
* adding xsl style for generating text summary after reproducers or unit tests runJana Fabrikova2013-09-193-0/+74
|
* Removed java 1.3 comaptible (redundant) code from ParseExceptionJiri Vanek2013-09-182-42/+10
| | | | netx/net/sourceforge/jnlp/ParseException.java: (ParseException) modified to support super call only, (getCause) and both (printStackTrace) removed
* Fixed minor typo in JEditorPaneBasedExceptionDialogTest (mus -> must) ↵Jiri Vanek2013-09-181-4/+4
| | | | | | severla times "message from dialog mus be same as pattern" -> "message from dialog must be same as pattern"
* Fix ResourcesTest to not assert the existence of ~/.mozilla/plugins/ directoryAndrew Azores2013-09-162-47/+39
|
* Use Arrays.asList instead of custom implementationOmair Majid2013-09-163-26/+21
| | | | | | | | | | | 2013-09-16 Omair Majid <[email protected]> * tests/netx/unit/net/sourceforge/jnlp/runtime/JNLPClassLoaderTest.java (toList): Remove. (checkForMainFileLeakTest): Use Arrays.asList. * tests/netx/unit/net/sourceforge/jnlp/security/appletextendedsecurity/UnsignedAppletTrustConfirmationTest.java (toList): Remove. (testToRelativePaths): Use Arrays.asList.
* Makefile.am: returned modified (EXTRA_DIST) variable. It is enriched for ↵Jiri Vanek2013-09-162-0/+9
| | | | netx-dist-tests-whitelist and NEW_LINE_IFS to enable reproducers tests in dist tarball
* CVE-2012-4540, RH869040: Heap-based buffer overflow after triggering event ↵Jiri Vanek2013-09-163-15/+12
| | | | attached to applet
* Added new utility class for retrieving localized messages for reproducers.Andrew Azores2013-09-134-13/+191
|
* Made temporary files location JFileChooser open at the currently specified ↵Jacob Wisor2013-09-116-5/+34
| | | | | | | | | location Made temporary files location JFileChooser display a helpful title Removed misleading "All Files" file filter from JFileChooser Added new message to resources for JFileChooser's choose button Fixed a few inconsistent messages in resource files
* PR1533: Inherit jnlp.packEnabled and jnlp.versionEnabled like other propertiesOmair Majid2013-09-095-27/+94
| | | | | | | | | | | | | | | | | | | | | | Treat jnlp.packEnabled and jnlp.versionEnabled just like other properties that can be set in one resource element and inherited/filtered in others. 2013-09-09 Omair Majid <[email protected]> * netx/net/sourceforge/jnlp/JNLPFile.java (getDownloadOptionsForJar): Rename to ... (getDownloadOptions): New method. Look up jnlp.packEnabled and jnlp.versionEnabled in any resources element. * netx/net/sourceforge/jnlp/PluginBridge.java (getDownloadOptionsForJar): Rename to ... (getDownloadOptions): New method. * netx/net/sourceforge/jnlp/runtime/JNLPClassLoader.java (initializeResources): Invoke file.getDownloadResources. (getDownloadOptionsForJar): Remove. * tests/netx/unit/net/sourceforge/jnlp/JNLPFileTest.java (testDownloadOptionsAppliedEverywhere): New method. (testDownloadOptionsFilteredOut): New method.
* Fixed "could not clear cache" message and cache location in CacheReproducerAndrew Azores2013-09-043-41/+64
|
* mergingAndrew Azores2013-09-0410-158/+436
|\
| * netx/net/sourceforge/jnlp/Launcher.java - Fix applet context being null ↵Jiri Vanek2013-09-042-0/+7
| | | | | | | | during applet init & start, by Adam Domurad <[email protected]>