Skip to main content
summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorEike Stepper2013-09-18 12:37:43 +0000
committerEike Stepper2013-09-18 12:37:43 +0000
commit0a166de53ef098b48cf3a173de3342acfd8112ce (patch)
treef8e2872e3a8fc949236c5f52818156349c7d478f /plugins/org.eclipse.emf.cdo.ui
parent81c63c354ef149525a864c386c6da3ae7d8ee5b0 (diff)
downloadcdo-0a166de53ef098b48cf3a173de3342acfd8112ce.tar.gz
cdo-0a166de53ef098b48cf3a173de3342acfd8112ce.tar.xz
cdo-0a166de53ef098b48cf3a173de3342acfd8112ce.zip
[417507] [Security] Bypass READ permission checks for the
CDOResourceNode.name attribute https://bugs.eclipse.org/bugs/show_bug.cgi?id=417507
Diffstat (limited to 'plugins/org.eclipse.emf.cdo.ui')
-rw-r--r--plugins/org.eclipse.emf.cdo.ui/src/org/eclipse/emf/cdo/ui/CDOItemProvider.java4
-rw-r--r--plugins/org.eclipse.emf.cdo.ui/src/org/eclipse/emf/cdo/ui/widgets/SessionComposite.java14
2 files changed, 12 insertions, 6 deletions
diff --git a/plugins/org.eclipse.emf.cdo.ui/src/org/eclipse/emf/cdo/ui/CDOItemProvider.java b/plugins/org.eclipse.emf.cdo.ui/src/org/eclipse/emf/cdo/ui/CDOItemProvider.java
index a487670ea2..8b5d50d155 100644
--- a/plugins/org.eclipse.emf.cdo.ui/src/org/eclipse/emf/cdo/ui/CDOItemProvider.java
+++ b/plugins/org.eclipse.emf.cdo.ui/src/org/eclipse/emf/cdo/ui/CDOItemProvider.java
@@ -58,6 +58,7 @@ import org.eclipse.net4j.util.event.IListener;
import org.eclipse.net4j.util.ui.views.ContainerItemProvider;
import org.eclipse.net4j.util.ui.views.IElementFilter;
+import org.eclipse.emf.common.util.EList;
import org.eclipse.emf.ecore.EPackage;
import org.eclipse.jface.action.IMenuManager;
@@ -176,7 +177,8 @@ public class CDOItemProvider extends ContainerItemProvider<IContainer<Object>>
if (element instanceof CDOResourceFolder)
{
- return ((CDOResourceFolder)element).getNodes().toArray();
+ EList<CDOResourceNode> result = CDOUtil.filterReadables(((CDOResourceFolder)element).getNodes());
+ return result.toArray();
}
return super.getChildren(element);
diff --git a/plugins/org.eclipse.emf.cdo.ui/src/org/eclipse/emf/cdo/ui/widgets/SessionComposite.java b/plugins/org.eclipse.emf.cdo.ui/src/org/eclipse/emf/cdo/ui/widgets/SessionComposite.java
index 9ffdcd061d..839c608ba7 100644
--- a/plugins/org.eclipse.emf.cdo.ui/src/org/eclipse/emf/cdo/ui/widgets/SessionComposite.java
+++ b/plugins/org.eclipse.emf.cdo.ui/src/org/eclipse/emf/cdo/ui/widgets/SessionComposite.java
@@ -176,16 +176,20 @@ public class SessionComposite extends Composite
{
StringBuilder builder = new StringBuilder();
builder.append(connectorDescription);
- builder.append("?repositoryName="); //$NON-NLS-1$
- builder.append(repositoryName);
- if (automaticRegistry)
+ if (connectorDescription.contains("?")) //$NON-NLS-1$
{
- builder.append("&automaticPackageRegistry=true"); //$NON-NLS-1$
+ builder.append("&"); //$NON-NLS-1$
+ }
+ else
+ {
+ builder.append("?"); //$NON-NLS-1$
}
+ builder.append("repositoryName="); //$NON-NLS-1$
+ builder.append(repositoryName);
if (automaticRegistry)
{
- builder.append("&legacyModeDefault=true"); //$NON-NLS-1$
+ builder.append("&automaticPackageRegistry=true"); //$NON-NLS-1$
}
return builder.toString();

Back to the top