beepd sent ECHO responses in wrong order
"Kalle Olavi Niemitalo" <[email protected]> Tue, 10 Aug 2004 17:02:22 +0300
| Newsgroups | gmane.network.beep.beepcore.c.general |
|---|---|
| Organization | Procomp Solutions Oy |
| Message-ID | <!~!UENERkVCMDkAAQACAAAAAAAAAAAAAAAAABgAAAAAAAAAOF1TeyqcQkSnO6bQed8gj8KAAAAQAAAA9p66hy7h1UKrXyYcXdTLNQEAAAAA@procomp.fi> |
-----BEGIN PGP SIGNED MESSAGE----- Hash: SHA1 I compiled openssl 0.9.7d and beepcore-c 0.2.00 with Microsoft Visual Studio 6 SP5 on Windows XP. I then tried the beepd and beepng examples on localhost. They negotiate the ECHO profile just fine, but when they actually transfer data, beepng detects a "data mismatch" every now and then. Here are the beepd.log entries relating to one of the mismatched messages, with [...] marking omissions: 08/06 18:58:43 beepd 0.wrap <<< MSG 1 105 * 30873 1997\r 08/06 18:58:43 beepd 0.wrap <<< Content-Type: application/beep+xml\r 08/06 18:58:43 beepd 1.wrap read 1966 octets 08/06 18:58:43 beepd 0.wrap <<< \r 08/06 18:58:43 beepd 0.wrap <<< <data>aVNalVRIqqik[...] 08/06 18:58:43 beepd 0.wrap <<< 60n1diFlfbs9t29ttx[...] 08/06 18:58:43 beepd 0.wrap <<< uvJKgiQ8tq0l5NYPVx[...] 08/06 18:58:43 beepd 0.wrap <<< 1rvhro7ycaPCbBUogP[...]END\r 08/06 18:58:43 beepd 1.wrap read 24 octets 08/06 18:58:43 beepd 0.wrap <<< MSG 1 105 * 32870 2099\r 08/06 18:58:43 beepd 1.wrap read 2104 octets 08/06 18:58:43 beepd 0.wrap <<< saAA8pVcF410f2pqzL[...] 08/06 18:58:43 beepd 0.wrap <<< 4S3Hv8ebCSUavvjod0[...] 08/06 18:58:43 beepd 0.wrap <<< kEQHqezX4L7NJl8jCW[...] 08/06 18:58:43 beepd 0.wrap <<< jvXqQXJbTcq1evOfXa[...] 08/06 18:58:43 beepd 0.wrap <<< Qe70X4v nf5fVszAF5[...]END\r 08/06 18:58:43 beepd 1.wrap wrote 2128 octets 08/06 18:58:43 beepd 0.wrap >>> RPY 1 105 * 30873 2099\r 08/06 18:58:43 beepd 0.wrap >>> saAA8pVcF410f2pqzL[...] 08/06 18:58:43 beepd 0.wrap >>> 4S3Hv8ebCSUavvjod0[...] 08/06 18:58:43 beepd 0.wrap >>> kEQHqezX4L7NJl8jCW[...] 08/06 18:58:43 beepd 0.wrap >>> jvXqQXJbTcq1evOfXa[...] 08/06 18:58:43 beepd 0.wrap >>> Qe70X4v nf5fVszAF5[...]END\r 08/06 18:58:43 beepd 1.wrap wrote 2044 octets 08/06 18:58:43 beepd 0.wrap >>> SEQ 1 34969 4096\r 08/06 18:58:43 beepd 0.wrap >>> RPY 1 105 * 32972 1997\r 08/06 18:58:43 beepd 0.wrap >>> Content-Type: application/beep+xml\r 08/06 18:58:43 beepd 0.wrap >>> \r 08/06 18:58:43 beepd 0.wrap >>> <data>aVNalVRIqqik[...] 08/06 18:58:43 beepd 0.wrap >>> 60n1diFlfbs9t29ttx[...] 08/06 18:58:43 beepd 0.wrap >>> uvJKgiQ8tq0l5NYPVx[...] 08/06 18:58:43 beepd 0.wrap >>> 1rvhro7ycaPCbBUogP[...]END\r 08/06 18:58:43 beepd 1.wrap read 42 octets 08/06 18:58:43 beepd 0.wrap <<< SEQ 1 34969 2099\r 08/06 18:58:43 beepd 0.wrap <<< MSG 1 105 * 34969 4096\r 08/06 18:58:43 beepd 1.wrap read 4101 octets 08/06 18:58:43 beepd 0.wrap <<< zMxS7doWRnt9oNRVto[...] 08/06 18:58:43 beepd 0.wrap <<< RbUtklig2Ojt3trQTv[...] 08/06 18:58:43 beepd 0.wrap <<< mEGbch j2LmISiKtO1[...] 08/06 18:58:43 beepd 0.wrap <<< C5mAADJKpk6OwA 4nq[...] 08/06 18:58:43 beepd 0.wrap <<< mEFupfTv Fw jnm7cu[...] 08/06 18:58:43 beepd 0.wrap <<< Gs9yYsCMg5rmraF G7[...] 08/06 18:58:43 beepd 0.wrap <<< nm DuitQ1WUOEs6mqg[...] 08/06 18:58:43 beepd 0.wrap <<< QRGLYhHsfs8iSW31Kj[...] 08/06 18:58:43 beepd 0.wrap <<< aDLrg8i1eoZO0zWTLv[...]END\r 08/06 18:58:43 beepd 1.wrap read 18 octets 08/06 18:58:43 beepd 0.wrap <<< SEQ 1 34969 4096\r 08/06 18:58:43 beepd 1.wrap wrote 2128 octets 08/06 18:58:43 beepd 0.wrap >>> RPY 1 105 * 34969 2099\r 08/06 18:58:43 beepd 0.wrap >>> zMxS7doWRnt9oNRVto[...] 08/06 18:58:43 beepd 0.wrap >>> RbUtklig2Ojt3trQTv[...] 08/06 18:58:43 beepd 0.wrap >>> mEGbch j2LmISiKtO1[...] 08/06 18:58:43 beepd 0.wrap >>> C5mAADJKpk6OwA 4nq[...] 08/06 18:58:43 beepd 0.wrap >>> mEFupfTv Fw jnm7cu[...]END\r 08/06 18:58:43 beepd 1.wrap wrote 2044 octets 08/06 18:58:43 beepd 0.wrap >>> SEQ 1 39065 4096\r 08/06 18:58:43 beepd 0.wrap >>> RPY 1 105 * 37068 1997\r 08/06 18:58:43 beepd 0.wrap >>> RXFmQOxpzyZq3APQPk[...] 08/06 18:58:43 beepd 0.wrap >>> Esxyi0E9tm7BcEeg0v[...] 08/06 18:58:43 beepd 0.wrap >>> 5kCK5dBuJ0C8E3Iar9[...] 08/06 18:58:43 beepd 0.wrap >>> zHCkXEOtG8ucCbo5l6[...]END\r 08/06 18:58:43 beepd 1.wrap read 42 octets 08/06 18:58:43 beepd 0.wrap <<< SEQ 1 39065 4096\r 08/06 18:58:43 beepd 0.wrap <<< MSG 1 105 . 39065 2099\r 08/06 18:58:43 beepd 1.wrap read 2104 octets 08/06 18:58:43 beepd 0.wrap <<< hZLWmXbBWg4uaaYNMs[...] 08/06 18:58:43 beepd 0.wrap <<< fIxJW8RelQdV3qkLgP[...] 08/06 18:58:43 beepd 0.wrap <<< hRYaqhc5Pb1rOOelHl[...] 08/06 18:58:43 beepd 0.wrap <<< dXxg8bbu4Rhog3dbGh[...] 08/06 18:58:43 beepd 0.wrap <<< Mh nzMvALLFH2Z6Lwo[...]</data>END\r 08/06 18:58:43 beepd 1.wrap wrote 2128 octets 08/06 18:58:43 beepd 0.wrap >>> RPY 1 105 . 39065 2099\r 08/06 18:58:43 beepd 0.wrap >>> hZLWmXbBWg4uaaYNMs[...] 08/06 18:58:43 beepd 0.wrap >>> fIxJW8RelQdV3qkLgP[...] 08/06 18:58:43 beepd 0.wrap >>> hRYaqhc5Pb1rOOelHl[...] 08/06 18:58:43 beepd 0.wrap >>> dXxg8bbu4Rhog3dbGh[...] 08/06 18:58:43 beepd 0.wrap >>> Mh nzMvALLFH2Z6Lwo[...]</data>END\r 08/06 18:58:43 beepd 1.wrap wrote 18 octets 08/06 18:58:43 beepd 0.wrap >>> SEQ 1 41164 4096\r As you can see, beepd has exchanged the payloads of the first two responses with each other. The following table outlines the differences. indication response order (seq+size) order (seq+size) payload ================ ================ ================= 1 (30873+1997) 2 (32972+1997) Content-Type[...] 2 (32870+2099) 1 (30873+2099) saAA8pVcF410[...] 3 (34969+4096) 3 (34969+2099) zMxS7doWRnt9[...] 3 continued 4 (37068+1997) RXFmQOxpzyZq[...] 4 (39065+2099) 5 (39065+2099) hZLWmXbBWg4u[...] My questions are: * Does this indicate a bug that might also affect application-specific profiles? * If so, is there a fix? * If bpc_send() puts the frame to the channel_inst->pending_send queue, blw_start_indication() will apparently take it back out. Will that happen in the same thread that called bpc_send()? -----BEGIN PGP SIGNATURE----- Version: PGP 8.1 iQA/AwUBQRjVbp/ohkKr1KoSEQKTAwCbBD4LVmjLcaXcgQfJmMzBuj6lraEAoMiK O3iVLM90JLHH7o7DsWfbo71t =1z/M -----END PGP SIGNATURE----- ------------------------------------------------------- SF.Net email is sponsored by Shop4tech.com-Lowest price on Blank Media 100pk Sonic DVD-R 4x for only $29 -100pk Sonic DVD+R for only $33 Save 50% off Retail on Ink & Toner - Free Shipping and Free Gift. http://www.shop4tech.com/z/Inkjet_Cartridges/9_108_r285