On Fri, Oct 31, 2008 at 6:40 AM, Matthew Toseland
<toad at amphibian.dyndns.org> wrote:
> On Thursday 30 October 2008 08:34, j16sdiz at freenetproject.org wrote:
>> Author: j16sdiz
>> Date: 2008-10-30 08:34:08 +0000 (Thu, 30 Oct 2008)
>> New Revision: 23213
>>
>> Modified:
>> trunk/freenet/src/freenet/node/PeerManager.java
>> Log:
>> fix getConnectedSeedServerPeersVector()
>>
>> it was called using <ByteArrayWrapper>, but was checked against <byte[]>
>
> Oooh, have you tested announcement after adding this in?
A new node can bootstrap from seednode.
But I didn't do any more in deep testing.
>>
>> Modified: trunk/freenet/src/freenet/node/PeerManager.java
>> ===================================================================
>> --- trunk/freenet/src/freenet/node/PeerManager.java 2008-10-30 06:56:36 UTC
> (rev 23212)
>> +++ trunk/freenet/src/freenet/node/PeerManager.java 2008-10-30 08:34:08 UTC
> (rev 23213)
>> @@ -31,6 +31,7 @@
>> import freenet.io.comm.ReferenceSignatureVerificationException;
>> import freenet.keys.Key;
>> import freenet.node.useralerts.PeerManagerUserAlert;
>> +import freenet.support.ByteArrayWrapper;
>> import freenet.support.Logger;
>> import freenet.support.ShortBuffer;
>> import freenet.support.SimpleFieldSet;
>> @@ -1647,7 +1648,7 @@
>> return (DarknetPeerNode[]) v.toArray(new
>> DarknetPeerNode[v.size()]);
>> }
>>
>> - public Vector<SeedServerPeerNode>
> getConnectedSeedServerPeersVector(HashSet exclude) {
>> + public Vector<SeedServerPeerNode>
> getConnectedSeedServerPeersVector(HashSet<ByteArrayWrapper> exclude) {
>> PeerNode[] peers;
>> synchronized(this) {
>> peers = myPeers;
>> @@ -1656,7 +1657,7 @@
>> Vector<SeedServerPeerNode> v = new
> Vector<SeedServerPeerNode>(myPeers.length);
>> for(int i = 0; i < peers.length; i++) {
>> if(peers[i] instanceof SeedServerPeerNode) {
>> - if(exclude != null &&
>> exclude.contains(peers[i].getIdentity())) {
>> + if(exclude != null && exclude.contains(new
> ByteArrayWrapper(peers[i].getIdentity()))) {
>> if(logMINOR)
>> Logger.minor(this, "Not
>> including in
> getConnectedSeedServerPeersVector() as in exclude set: " +
> peers[i].userToString());
>> continue;