changeset in /hg/icedtea6: 2008-11-14 Omair Majid <omajid at redh...
Omair Majid
omajid at redhat.com
Fri Nov 14 07:10:31 PST 2008
changeset bc2e4f1176b2 in /hg/icedtea6
details: http://icedtea.classpath.org/hg/icedtea6?cmd=changeset;node=bc2e4f1176b2
description:
2008-11-14 Omair Majid <omajid at redhat.com>
* pulseaudio/src/java/org/classpath/icedtea/pulseaudio/EventLoop.java
Removed useless SuppressWarnings.
(static): Delegate the loading of native libraries to SecurityWrapper.
* pulseaudio/src/java/org/classpath/icedtea/pulseaudio/Operation.java
(static): Likewise.
* pulseaudio/src/java/org/classpath/icedtea/pulseaudio/PulseAudioPort.java
(static): Likewise.
* pulseaudio/src/java/org/classpath/icedtea/pulseaudio/PulseAudioSourcePort.java
(static): Likewise.
* pulseaudio/src/java/org/classpath/icedtea/pulseaudio/PulseAudioTargetPort.java
(static): Likewise.
* pulseaudio/src/java/org/classpath/icedtea/pulseaudio/Stream.java
(static): Likewise.
* pulseaudio/src/java/org/classpath/icedtea/pulseaudio/SecurityWrapper.java
New class.
(loadNativeLibrary): Loads libpulse-java.so in a privileged operation to
work when a security manager is installed.
diffstat:
8 files changed, 53 insertions(+), 9 deletions(-)
ChangeLog | 20 +++++++
pulseaudio/src/java/org/classpath/icedtea/pulseaudio/EventLoop.java | 4 -
pulseaudio/src/java/org/classpath/icedtea/pulseaudio/Operation.java | 2
pulseaudio/src/java/org/classpath/icedtea/pulseaudio/PulseAudioPort.java | 2
pulseaudio/src/java/org/classpath/icedtea/pulseaudio/PulseAudioSourcePort.java | 2
pulseaudio/src/java/org/classpath/icedtea/pulseaudio/PulseAudioTargetPort.java | 2
pulseaudio/src/java/org/classpath/icedtea/pulseaudio/SecurityWrapper.java | 27 ++++++++++
pulseaudio/src/java/org/classpath/icedtea/pulseaudio/Stream.java | 3 -
diffs (144 lines):
diff -r 89e71b641b8e -r bc2e4f1176b2 ChangeLog
--- a/ChangeLog Tue Nov 11 04:38:04 2008 -0500
+++ b/ChangeLog Fri Nov 14 10:10:11 2008 -0500
@@ -1,3 +1,23 @@ 2008-11-11 Gary Benson <gbenson at redhat
+2008-11-14 Omair Majid <omajid at redhat.com>
+
+ * pulseaudio/src/java/org/classpath/icedtea/pulseaudio/EventLoop.java
+ Removed useless SuppressWarnings.
+ (static): Delegate the loading of native libraries to SecurityWrapper.
+ * pulseaudio/src/java/org/classpath/icedtea/pulseaudio/Operation.java
+ (static): Likewise.
+ * pulseaudio/src/java/org/classpath/icedtea/pulseaudio/PulseAudioPort.java
+ (static): Likewise.
+ * pulseaudio/src/java/org/classpath/icedtea/pulseaudio/PulseAudioSourcePort.java
+ (static): Likewise.
+ * pulseaudio/src/java/org/classpath/icedtea/pulseaudio/PulseAudioTargetPort.java
+ (static): Likewise.
+ * pulseaudio/src/java/org/classpath/icedtea/pulseaudio/Stream.java
+ (static): Likewise.
+ * pulseaudio/src/java/org/classpath/icedtea/pulseaudio/SecurityWrapper.java
+ New class.
+ (loadNativeLibrary): Loads libpulse-java.so in a privileged operation to
+ work when a security manager is installed.
+
2008-11-11 Gary Benson <gbenson at redhat.com>
* ports/hotspot/src/os_cpu/linux_zero/vm/os_linux_zero.hpp
diff -r 89e71b641b8e -r bc2e4f1176b2 pulseaudio/src/java/org/classpath/icedtea/pulseaudio/EventLoop.java
--- a/pulseaudio/src/java/org/classpath/icedtea/pulseaudio/EventLoop.java Tue Nov 11 04:38:04 2008 -0500
+++ b/pulseaudio/src/java/org/classpath/icedtea/pulseaudio/EventLoop.java Fri Nov 14 10:10:11 2008 -0500
@@ -92,9 +92,7 @@ public class EventLoop implements Runnab
/*
* These fields hold pointers
*/
- @SuppressWarnings("unused")
private byte[] contextPointer;
- @SuppressWarnings("unused")
private byte[] mainloopPointer;
/*
@@ -102,7 +100,7 @@ public class EventLoop implements Runnab
*/
static {
- System.loadLibrary("pulse-java");
+ SecurityWrapper.loadNativeLibrary();
}
private EventLoop() {
diff -r 89e71b641b8e -r bc2e4f1176b2 pulseaudio/src/java/org/classpath/icedtea/pulseaudio/Operation.java
--- a/pulseaudio/src/java/org/classpath/icedtea/pulseaudio/Operation.java Tue Nov 11 04:38:04 2008 -0500
+++ b/pulseaudio/src/java/org/classpath/icedtea/pulseaudio/Operation.java Fri Nov 14 10:10:11 2008 -0500
@@ -58,7 +58,7 @@ public class Operation {
}
static {
- System.loadLibrary("pulse-java");
+ SecurityWrapper.loadNativeLibrary();
}
private native void native_ref();
diff -r 89e71b641b8e -r bc2e4f1176b2 pulseaudio/src/java/org/classpath/icedtea/pulseaudio/PulseAudioPort.java
--- a/pulseaudio/src/java/org/classpath/icedtea/pulseaudio/PulseAudioPort.java Tue Nov 11 04:38:04 2008 -0500
+++ b/pulseaudio/src/java/org/classpath/icedtea/pulseaudio/PulseAudioPort.java Fri Nov 14 10:10:11 2008 -0500
@@ -63,7 +63,7 @@ public abstract class PulseAudioPort ext
private PulseAudioVolumeControl volumeControl;
static {
- System.loadLibrary("pulse-java");
+ SecurityWrapper.loadNativeLibrary();
}
public PulseAudioPort(String name) {
diff -r 89e71b641b8e -r bc2e4f1176b2 pulseaudio/src/java/org/classpath/icedtea/pulseaudio/PulseAudioSourcePort.java
--- a/pulseaudio/src/java/org/classpath/icedtea/pulseaudio/PulseAudioSourcePort.java Tue Nov 11 04:38:04 2008 -0500
+++ b/pulseaudio/src/java/org/classpath/icedtea/pulseaudio/PulseAudioSourcePort.java Fri Nov 14 10:10:11 2008 -0500
@@ -45,7 +45,7 @@ public class PulseAudioSourcePort extend
/* aka mic */
static {
- System.loadLibrary("pulse-java");
+ SecurityWrapper.loadNativeLibrary();
}
public PulseAudioSourcePort(String name) {
diff -r 89e71b641b8e -r bc2e4f1176b2 pulseaudio/src/java/org/classpath/icedtea/pulseaudio/PulseAudioTargetPort.java
--- a/pulseaudio/src/java/org/classpath/icedtea/pulseaudio/PulseAudioTargetPort.java Tue Nov 11 04:38:04 2008 -0500
+++ b/pulseaudio/src/java/org/classpath/icedtea/pulseaudio/PulseAudioTargetPort.java Fri Nov 14 10:10:11 2008 -0500
@@ -44,7 +44,7 @@ public class PulseAudioTargetPort extend
/* aka speaker */
static {
- System.loadLibrary("pulse-java");
+ SecurityWrapper.loadNativeLibrary();
}
public PulseAudioTargetPort(String name) {
diff -r 89e71b641b8e -r bc2e4f1176b2 pulseaudio/src/java/org/classpath/icedtea/pulseaudio/SecurityWrapper.java
--- /dev/null Thu Jan 01 00:00:00 1970 +0000
+++ b/pulseaudio/src/java/org/classpath/icedtea/pulseaudio/SecurityWrapper.java Fri Nov 14 10:10:11 2008 -0500
@@ -0,0 +1,27 @@
+package org.classpath.icedtea.pulseaudio;
+
+import java.security.AccessController;
+import java.security.PrivilegedAction;
+
+class SecurityWrapper {
+
+ public static void loadNativeLibrary() {
+
+ if (System.getSecurityManager() != null) {
+ PrivilegedAction<Boolean> action = new PrivilegedAction<Boolean>() {
+ @Override
+ public Boolean run() {
+ System.loadLibrary("pulse-java");
+ return true;
+ }
+
+ };
+
+ AccessController.doPrivileged(action);
+
+ } else {
+ System.loadLibrary("pulse-java");
+ }
+
+ }
+}
diff -r 89e71b641b8e -r bc2e4f1176b2 pulseaudio/src/java/org/classpath/icedtea/pulseaudio/Stream.java
--- a/pulseaudio/src/java/org/classpath/icedtea/pulseaudio/Stream.java Tue Nov 11 04:38:04 2008 -0500
+++ b/pulseaudio/src/java/org/classpath/icedtea/pulseaudio/Stream.java Fri Nov 14 10:10:11 2008 -0500
@@ -104,11 +104,10 @@ public class Stream {
public static final String DEFAULT_DEVICE = null;
- @SuppressWarnings("unused")
private byte[] streamPointer;
static {
- System.loadLibrary("pulse-java");
+ SecurityWrapper.loadNativeLibrary();
}
private Format format;
More information about the distro-pkg-dev
mailing list