I got my FedOne instance up and running and was able to successfully
federate with bitworking.net and waveserver.com.
I used James Purser's wavesandbox account to test federation with my
server. That seemed to work fine.
However, as soon as James added his own server to the wave things went
south fast.

I've posted my entire server log at http://www.glines.com/wave_error_log.txt

When James' FedOne participant was added my server and his talked fine
(discover, history request and signer info), but things went south
when the first delta arrived from his server.

The delta was:

<iq type="set" id="2424-11" from="wave.collaborynth.com.au"
to="wave.glines.com">
  <pubsub xmlns="http://jabber.org/protocol/pubsub";>
    <publish node="wavelet">
      <item>
        <submit-request xmlns="http://waveprotocol.org/protocol/0.2/waveserver";>
          <delta
wavelet-name="wave://glines.com/w+dJYQqNKCtzMv/conv+root"><![CDATA[CrcBChkIsgESFJJtQ5HRUrf3GfiECPE0wRkbPnW9EhtwdXJzZXJqQGNvbGxhYm9yeW50aC5jb20uYXUaDhoMCghiK3liQTQycBIAGjMaMQoIYit5YkE0MnASJQoIGgYKBGJvZHkKCBoGCgRsaW5lCgIgAQoHEgV3aG9vdAoCIAEaOBo2Cgxjb252ZXJzYXRpb24SJgoCKCMKGBoWCgRibGlwEg4KAmlkEghiK3liQTQycAoCIAEKAigBEqcBCoABIksUaUWm953O8C1y2a/Gn0E432GlqQKHBsVHz8kzLQB9slYEwO5k+eU31ccamVfwS4pFNQiZRDxRZAm5sqRMA0pEVnGO1rR9vpwmReevQ/pVEuM3uPKJJDbyUre1VetPHt5sqBF2DW8SgO0sAGac0RNvJJVW/eIA2bOj4XlhTZoSIIHIONiFAgfBnLUXe13I9suePes6DhiPFYKNAnO2koJiGAE=]]></delta>
        </submit-request>
      </item>
    </publish>
  </pubsub>
</iq>

My server reported the following as a result:

WARNING: Submit request: Delta failed verification. WaveletName:
[WaveId:glines.com!w+dJYQqNKCtzMv]/[WaveletId:glines.com!conv+root]
delta: delta: 
"\n\031\b\262\001\022\024\222mC\221\321R\267\367\031\370\204\b\3614\301\031\033>u\275\022\[email protected]\032\016\032\f\n\bb+yba42p\022\000\0323\0321\n\bb+yba42p\022%\n\b\032\006\n\004body\n\b\032\006\n\004line\n\002
\001\n\a\022\005whoot\n\002
\001\0328\0326\n\fconversation\022&\n\002(#\n\030\032\026\n\004blip\022\016\n\002id\022\bb+ybA42p\n\002
\001\n\002(\001"
signature {
  signature_bytes:
"\"K\024iE\246\367\235\316\360-r\331\257\306\237A8\337a\245\251\002\207\006\305G\317\3113-\000}\262V\004\300\356d\371\3457\325\307\032\231W\360K\212E5\b\231D<Qd\t\271\262\244L\003JDVq\216\326\264}\276\234&E\347\257C\372U\022\3437\270\362\211$6\362R\267\265U\353O\036\336l\250\021v\ro\022\200\355,\000f\234\321\023o$\225V\375\342\000\331\263\243\341yaM\232"
  signer_id: 
"\201\3108\330\205\002\a\301\234\265\027{]\310\366\313\236=\353:\016\030\217\025\202\215\002s\266\222\202b"
  signature_algorithm: SHA1_RSA
}

This indicates that the certificate James server is using probably
doesn't have the right CN or subjectAlternativeName. But, that
shouldn't foobar the whole wave.

After this, my client died and when I restarted it I got this in the server log:
WARNING: submit request to waveserver failed: The wavelet is not in a
usable state.
Nov 4, 2009 1:36:08 PM
org.waveprotocol.wave.examples.fedone.rpc.ServerRpcProvider$Connection
<init>
INFO: New Connection set up from
java.nio.channels.SocketChannel[connected local=/127.0.0.1:9876
remote=/127.0.0.1:54719]
Nov 4, 2009 1:36:08 PM
org.waveprotocol.wave.examples.fedone.waveserver.WaveServerImpl
requestHistory
SEVERE: Error retrieving wavelet history:
[WaveId:glines.com!w+dJYQqNKCtzMv]/[WaveletId:glines.com!conv+root]
version: 0
history_hash: "wave://glines.com/w+dJYQqNKCtzMv/conv+root"
 - version: 178
history_hash: "\222mC\221\321R\267\367\031\370\204\b\3614\301\031\033>u\275"

java.lang.NullPointerException
        at com.google.common.collect.Lists.newArrayList(Lists.java:116)
        at 
com.google.common.collect.ImmutableList.copyOf(ImmutableList.java:167)
        at 
org.waveprotocol.wave.examples.fedone.waveserver.DeltaSequence.<init>(DeltaSequence.java:45)
        at 
org.waveprotocol.wave.examples.fedone.waveserver.ClientFrontendImpl.openRequest(ClientFrontendImpl.java:191)
        at 
org.waveprotocol.wave.examples.fedone.waveserver.WaveClientRpcImpl.open(WaveClientRpcImpl.java:87)
        at 
org.waveprotocol.wave.examples.fedone.waveserver.WaveClientRpc$ProtocolWaveClientRpc$1.open(WaveClientRpc.java:1608)
        at 
org.waveprotocol.wave.examples.fedone.waveserver.WaveClientRpc$ProtocolWaveClientRpc.callMethod(WaveClientRpc.java:1722)
        at 
org.waveprotocol.wave.examples.fedone.rpc.ServerRpcController.run(ServerRpcController.java:199)
        at 
java.util.concurrent.ThreadPoolExecutor$Worker.runTask(ThreadPoolExecutor.java:886)
        at 
java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:908)
        at java.lang.Thread.run(Thread.java:619)
Nov 4, 2009 1:36:08 PM
org.waveprotocol.wave.examples.fedone.rpc.ServerRpcProvider$Connection$1
run
INFO: error = java.lang.NullPointerException

This message was repeated server more times:
WARNING: submit request to waveserver failed: The wavelet is not in a
usable state.

I'm not quite sure which waveserver is being referred to here.

So, the long and short of it is that FedOne behaves very poorly when
it receives a delta with an invalid signature.

-Tad

--~--~---------~--~----~------------~-------~--~----~
You received this message because you are subscribed to the Google Groups "Wave 
Protocol" group.
To post to this group, send email to [email protected]
To unsubscribe from this group, send email to 
[email protected]
For more options, visit this group at 
http://groups.google.com/group/wave-protocol?hl=en
-~----------~----~----~----~------~----~------~--~---

Reply via email to