When using the attach() call in Strophe against Openfire 3.7.0, all works as designed in IE8/9. In FF4, duplicate requests are sent to the server with the same RID, causing a policy violation.
The trace from Fiddler is attached below. In both traces, the first reqeust/response pair is the presence type="unavailable" on the onbeforeunload.
The issue starts one the page loads again and the attach is attempted with RID: 1132070775 in the FF4 sequence.
POST http://gametime.dev.com/http-bind/ HTTP/1.1
Host: gametime.dev.com
User-Agent: Mozilla/5.0 (Windows NT 6.1; WOW64; rv:2.0.1) Gecko/20100101 Firefox/4.0.1
Accept: text/html,application/xhtml+xml,application/xml;q=0.9,*/*;q=0.8
Accept-Language: en-us,en;q=0.5
Accept-Encoding: gzip, deflate
Accept-Charset: ISO-8859-1,utf-8;q=0.7,*;q=0.7
Keep-Alive: 115
Connection: keep-alive
Referer: http://gametime.dev.com/GameTimePages/GameTimeHuddle.aspx?List=3b9551da%2D46ed%2D4357%2Db93e%2Dfa55155366b1&ID=9&Source=http%3A%2F%2Fgametime%2Edev%2Ecom%2FLists%2FGameTimeHuddles%2FAllItems%2Easpx&ContentTypeId=0x01002167C00000000000000000000000000200D799BB01255FD045A12E56621F1F57C3
Content-Length: 199
Content-Type: text/plain; charset=UTF-8
Cookie: WSS_KeepSessionAuthenticated={4eb5a3d5-4cf9-4f1d-8fd0-42e8939c29a8}; Ribbon.DocLibListForm.Edit=750500|-1|497|-1474418945
Pragma: no-cache, no-cache, no-cache
Cache-Control: no-cache, no-cache, no-cache
<body rid='1132070774' xmlns='http://jabber.org/protocol/httpbind' sid='336bd0b0'><presence type='unavailable' to='[email protected]' xmlns='jabber:client'/></body>
HTTP/1.1 200 OK
Content-Type: text/xml;charset=UTF-8
Vary: Accept-Encoding
Server: Microsoft-IIS/7.5
SPRequestGuid: 877d2fc4-b1f7-40d0-9152-00699e4033a8
Set-Cookie: WSS_KeepSessionAuthenticated={4eb5a3d5-4cf9-4f1d-8fd0-42e8939c29a8}; path=/
X-SharePointHealthScore: 3
Persistent-Auth: true
X-Powered-By: ASP.NET
MicrosoftSharePointTeamServices: 14.0.0.5130
Date: Tue, 10 May 2011 17:16:39 GMT
Content-Length: 350
<body xmlns='http://jabber.org/protocol/httpbind'><presence xmlns="jabber:client" to="charles@scooby/charles" from="[email protected]/charles" type="unavailable"><show>away</show><x xmlns="http://jabber.org/protocol/muc#user"><item jid="charles@scooby/charles" affiliation="none" role="none"/></x></presence></body>
------------------------------------------------------------------
POST http://gametime.dev.com/http-bind/ HTTP/1.1
Host: gametime.dev.com
User-Agent: Mozilla/5.0 (Windows NT 6.1; WOW64; rv:2.0.1) Gecko/20100101 Firefox/4.0.1
Accept: text/html,application/xhtml+xml,application/xml;q=0.9,*/*;q=0.8
Accept-Language: en-us,en;q=0.5
Accept-Encoding: gzip, deflate
Accept-Charset: ISO-8859-1,utf-8;q=0.7,*;q=0.7
Keep-Alive: 115
Connection: keep-alive
Referer: http://gametime.dev.com/GameTimePages/GameTimeHuddle.aspx?List=3b9551da%2D46ed%2D4357%2Db93e%2Dfa55155366b1&ID=9&Source=http%3A%2F%2Fgametime%2Edev%2Ecom%2FLists%2FGameTimeHuddles%2FAllItems%2Easpx&ContentTypeId=0x01002167C00000000000000000000000000200D799BB01255FD045A12E56621F1F57C3
Content-Length: 83
Content-Type: text/plain; charset=UTF-8
Cookie: WSS_KeepSessionAuthenticated={4eb5a3d5-4cf9-4f1d-8fd0-42e8939c29a8}; Ribbon.DocLibListForm.Edit=750500|-1|497|-1474418945
Pragma: no-cache, no-cache, no-cache
Cache-Control: no-cache, no-cache, no-cache
<body rid='1132070775' xmlns='http://jabber.org/protocol/httpbind' sid='336bd0b0'/>
HTTP/1.1 200 OK
Content-Type: text/xml;charset=UTF-8
Vary: Accept-Encoding
Server: Microsoft-IIS/7.5
SPRequestGuid: 99afb16e-65c5-4d3f-bb1e-a61d682483b2
Set-Cookie: WSS_KeepSessionAuthenticated={4eb5a3d5-4cf9-4f1d-8fd0-42e8939c29a8}; path=/
X-SharePointHealthScore: 3
Persistent-Auth: true
X-Powered-By: ASP.NET
MicrosoftSharePointTeamServices: 14.0.0.5130
Date: Tue, 10 May 2011 17:17:40 GMT
Content-Length: 57
<body xmlns="http://jabber.org/protocol/httpbind"></body>
------------------------------------------------------------------
POST http://gametime.dev.com/http-bind/ HTTP/1.1
Host: gametime.dev.com
User-Agent: Mozilla/5.0 (Windows NT 6.1; WOW64; rv:2.0.1) Gecko/20100101 Firefox/4.0.1
Accept: text/html,application/xhtml+xml,application/xml;q=0.9,*/*;q=0.8
Accept-Language: en-us,en;q=0.5
Accept-Encoding: gzip, deflate
Accept-Charset: ISO-8859-1,utf-8;q=0.7,*;q=0.7
Keep-Alive: 115
Connection: keep-alive
Referer: http://gametime.dev.com/GameTimePages/GameTimeHuddle.aspx?List=3b9551da%2D46ed%2D4357%2Db93e%2Dfa55155366b1&ID=9&Source=http%3A%2F%2Fgametime%2Edev%2Ecom%2FLists%2FGameTimeHuddles%2FAllItems%2Easpx&ContentTypeId=0x01002167C00000000000000000000000000200D799BB01255FD045A12E56621F1F57C3
Content-Length: 83
Content-Type: text/plain; charset=UTF-8
Cookie: WSS_KeepSessionAuthenticated={4eb5a3d5-4cf9-4f1d-8fd0-42e8939c29a8}; Ribbon.DocLibListForm.Edit=750500|-1|497|-1474418945
Pragma: no-cache
Cache-Control: no-cache
<body rid='1132070775' xmlns='http://jabber.org/protocol/httpbind' sid='336bd0b0'/>
HTTP/1.1 200 OK
Content-Type: text/xml;charset=UTF-8
Vary: Accept-Encoding
Server: Microsoft-IIS/7.5
SPRequestGuid: ac627294-ae2e-4d1a-91a6-b756fc8a0878
Set-Cookie: WSS_KeepSessionAuthenticated={4eb5a3d5-4cf9-4f1d-8fd0-42e8939c29a8}; path=/
X-SharePointHealthScore: 3
X-Powered-By: ASP.NET
MicrosoftSharePointTeamServices: 14.0.0.5130
Date: Tue, 10 May 2011 17:16:41 GMT
Content-Length: 103
<body xmlns="http://jabber.org/protocol/httpbind" type="terminate" condition="policy-violation"></body>
POST http://gametime.dev.com/http-bind/ HTTP/1.1
Accept: */*
Accept-Language: en-us
Referer: http://gametime.dev.com/GameTimePages/GameTimeHuddle.aspx?List=3b9551da%2D46ed%2D4357%2Db93e%2Dfa55155366b1&ID=9&Source=http%3A%2F%2Fgametime%2Edev%2Ecom%2FLists%2FGameTimeHuddles%2FAllItems%2Easpx&ContentTypeId=0x01002167C00000000000000000000000000200D799BB01255FD045A12E56621F1F57C3
Accept-Encoding: gzip, deflate
User-Agent: Mozilla/5.0 (compatible; MSIE 9.0; Windows NT 6.1; WOW64; Trident/5.0)
Host: gametime.dev.com
Content-Length: 195
Connection: Keep-Alive
Pragma: no-cache
Cookie: WSS_KeepSessionAuthenticated={4eb5a3d5-4cf9-4f1d-8fd0-42e8939c29a8}
<body rid='103763' xmlns='http://jabber.org/protocol/httpbind' sid='7ceecff0'><presence type='unavailable' to='[email protected]' xmlns='jabber:client'/></body>
HTTP/1.1 200 OK
Content-Type: text/xml;charset=UTF-8
Vary: Accept-Encoding
Server: Microsoft-IIS/7.5
SPRequestGuid: f0a999e9-876b-4815-9be9-094163cd034b
Set-Cookie: WSS_KeepSessionAuthenticated={4eb5a3d5-4cf9-4f1d-8fd0-42e8939c29a8}; path=/
X-SharePointHealthScore: 3
Persistent-Auth: true
X-Powered-By: ASP.NET
MicrosoftSharePointTeamServices: 14.0.0.5130
Date: Tue, 10 May 2011 17:19:52 GMT
Content-Length: 389
<body xmlns='http://jabber.org/protocol/httpbind'><presence xmlns="jabber:client" to="charles@scooby/LoginAssistant" from="[email protected]/charles" type="unavailable"><x xmlns="http://jaber.org/protocol/muc"/><x xmlns="http://jabber.org/protocol/muc#user"><item jid="charles@scooby/LoginAssistant" affiliation="none" role="none"/></x></presence></body>
------------------------------------------------------------------
POST http://gametime.dev.com/http-bind/ HTTP/1.1
Accept: */*
Accept-Language: en-us
Referer: http://gametime.dev.com/GameTimePages/GameTimeHuddle.aspx?List=3b9551da%2D46ed%2D4357%2Db93e%2Dfa55155366b1&ID=9&Source=http%3A%2F%2Fgametime%2Edev%2Ecom%2FLists%2FGameTimeHuddles%2FAllItems%2Easpx&ContentTypeId=0x01002167C00000000000000000000000000200D799BB01255FD045A12E56621F1F57C3
Accept-Encoding: gzip, deflate
User-Agent: Mozilla/5.0 (compatible; MSIE 9.0; Windows NT 6.1; WOW64; Trident/5.0)
Host: gametime.dev.com
Content-Length: 79
Connection: Keep-Alive
Pragma: no-cache
Cookie: WSS_KeepSessionAuthenticated={4eb5a3d5-4cf9-4f1d-8fd0-42e8939c29a8}
<body rid='103764' xmlns='http://jabber.org/protocol/httpbind' sid='7ceecff0'/>
HTTP/1.1 200 OK
Content-Type: text/xml;charset=UTF-8
Vary: Accept-Encoding
Server: Microsoft-IIS/7.5
SPRequestGuid: a956db8f-2e5d-4a8c-a15a-264cebdfd108
Set-Cookie: WSS_KeepSessionAuthenticated={4eb5a3d5-4cf9-4f1d-8fd0-42e8939c29a8}; path=/
X-SharePointHealthScore: 3
X-Powered-By: ASP.NET
MicrosoftSharePointTeamServices: 14.0.0.5130
Date: Tue, 10 May 2011 17:19:55 GMT
Content-Length: 70
<body xmlns="http://jabber.org/protocol/httpbind" ack="103765"></body>
------------------------------------------------------------------
POST http://gametime.dev.com/http-bind/ HTTP/1.1
Accept: */*
Accept-Language: en-us
Referer: http://gametime.dev.com/GameTimePages/GameTimeHuddle.aspx?List=3b9551da%2D46ed%2D4357%2Db93e%2Dfa55155366b1&ID=9&Source=http%3A%2F%2Fgametime%2Edev%2Ecom%2FLists%2FGameTimeHuddles%2FAllItems%2Easpx&ContentTypeId=0x01002167C00000000000000000000000000200D799BB01255FD045A12E56621F1F57C3
Accept-Encoding: gzip, deflate
User-Agent: Mozilla/5.0 (compatible; MSIE 9.0; Windows NT 6.1; WOW64; Trident/5.0)
Host: gametime.dev.com
Content-Length: 269
Connection: Keep-Alive
Pragma: no-cache
Cookie: WSS_KeepSessionAuthenticated={4eb5a3d5-4cf9-4f1d-8fd0-42e8939c29a8}
<body rid='103765' xmlns='http://jabber.org/protocol/httpbind' sid='7ceecff0'><presence xmlns='jabber:client'/><presence to='[email protected]/charles' xmlns='jabber:client'><x xmlns='http://jaber.org/protocol/muc'/></presence></body>
HTTP/1.1 200 OK
Content-Type: text/xml;charset=UTF-8
Vary: Accept-Encoding
Server: Microsoft-IIS/7.5
SPRequestGuid: 3a86922d-d09b-4b61-bb4b-05eb75b1c2f4
Set-Cookie: WSS_KeepSessionAuthenticated={4eb5a3d5-4cf9-4f1d-8fd0-42e8939c29a8}; path=/
X-SharePointHealthScore: 3
X-Powered-By: ASP.NET
MicrosoftSharePointTeamServices: 14.0.0.5130
Date: Tue, 10 May 2011 17:19:55 GMT
Content-Length: 377
<body xmlns='http://jabber.org/protocol/httpbind'><presence xmlns="jabber:client" to="charles@scooby/LoginAssistant" from="[email protected]/charles"><x xmlns="http://jaber.org/protocol/muc"/><x xmlns="http://jabber.org/protocol/muc#user"><item jid="charles@scooby/LoginAssistant" affiliation="none" role="participant"/></x></presence></body>