diff --git a/core/java/src/net/i2p/data/RouterInfo.java b/core/java/src/net/i2p/data/RouterInfo.java
index f3e2f489945bf5bf754bc50e2d5de439e8a69f15..523fc45dce486fe65120d88b47118c53ecdb967e 100644
--- a/core/java/src/net/i2p/data/RouterInfo.java
+++ b/core/java/src/net/i2p/data/RouterInfo.java
@@ -19,6 +19,7 @@ import java.util.Iterator;
 import java.util.List;
 import java.util.Properties;
 import java.util.Set;
+import java.util.Vector;
 
 import net.i2p.crypto.DSAEngine;
 import net.i2p.crypto.SHA256Generator;
@@ -450,6 +451,18 @@ public class RouterInfo extends DataStructureImpl {
         }
         return null;
     }
+    
+    public List<RouterAddress> getTargetAddresses(String transportStyle) {
+        List<RouterAddress> ret = new Vector<RouterAddress>();
+        synchronized(this._addresses) {
+            for(Object o : this._addresses) {
+                RouterAddress addr = (RouterAddress)o;
+                if(addr.getTransportStyle().equals(transportStyle))
+                    ret.add(addr);
+            }
+        }
+        return ret;
+    }
 
     /**
      * Actually validate the signature