Re: dlna compliance issues mk2

John Stirling <[email protected]>
Newsgroups gmane.comp.multimedia.helix.devel
Message-ID <[email protected]>
With this change :

switch(ulHTTPStatus)
{
case 100: // Continue // XXX
m_bReadHeaderDone = FALSE; // XXX
retVal= HXR_OK; //XXX
break; // XXX

case 206: // Success. Partial data.


It's getting a bit further but there is something a bit weird.


Adding some debug into httpfsys shows (note no 200 OK):

BZh9rE8P�CHTTPFileObject::HandleSocketRead
Hex Dump
0x00: 48 54 54 50 2f 31 2e 31 20 31 30 30 20 43 6f 6e HTTP/1.1 100 Con
0x10: 74 69 6e 75 65 0d 0a 44 61 74 65 3a 20 46 72 69 tinue..Date: Fri
0x20: 2c 20 32 30 20 4a 75 6e 20 32 30 30 38 20 31 31 , 20 Jun 2008 11
0x30: 3a 34 34 3a 32 37 20 47 4d 54 0d 0a 0d 0a 48 54 :44:27 GMT....HT
0x40: 54 50 2f 31 2e 31 20 32 30 30 20 4f 4b 0d 0a 53 TP/1.1 200 OK..S
0x50: 65 72 76 65 72 3a 20 37 2e 34 2e 34 32 2e 34 20 erver: 7.4.42.4
0x60: 44 4d 53 0d 0a 44 61 74 65 3a 20 46 72 69 2c 20 DMS..Date: Fri,
0x70: 32 30 20 4a 75 6e 20 32 30 30 38 20 31 31 3a 34 20 Jun 2008 11:4
0x80: 34 3a 32 37 20 47 4d 54 0d 0a 43 4f 4e 54 45 4e 4:27 GMT..CONTEN
0x90: 54 2d 4c 45 4e 47 54 48 3a 20 35 33 30 33 38 30 T-LENGTH: 530380
0xa0: 36 0d 0a 63 6f 6e 74 65 6e 74 46 65 61 74 75 72 6..contentFeatur
0xb0: 65 73 2e 64 6c 6e 61 2e 6f 72 67 3a 20 44 4c 4e es.dlna.org: DLN
0xc0: 41 2e 4f 52 47 5f 50 4e 3d 4c 50 43 4d 3b 44 4c A.ORG_PN=LPCM;DL
0xd0: 4e 41 2e 4f 52 47 5f 4f 50 3d 30 31 0d 0a 74 72 NA.ORG_OP=01..tr
0xe0: 61 6e 73 66 65 72 4d 6f 64 65 2e 64 6c 6e 61 2e ansferMode.dlna.
0xf0: 6f 72 67 3a 20 53 74 72 65 61 6d 69 6e 67 0d 0a org: Streaming..
0x100: 43 6f 6e 74 65 6e 74 2d 54 79 70 65 3a 20 61 75 Content-Type: au
0x110: 64 69 6f 2f 4c 31 36 3b 72 61 74 65 3d 34 34 31 dio/L16;rate=441
0x120: 30 30 3b 63 68 61 6e 6e 65 6c 73 3d 31 0d 0a 0d 00;channels=1...
0x130: 0a
CHTTPFileObject::HandleHeaderRead
Hex Dump
0x00: 48 54 54 50 2f 31 2e 31 20 31 30 30 20 43 6f 6e HTTP/1.1 100 Con
0x10: 74 69 6e 75 65 0d 0a 44 61 74 65 3a 20 46 72 69 tinue..Date: Fri
0x20: 2c 20 32 30 20 4a 75 6e 20 32 30 30 38 20 31 31 , 20 Jun 2008 11
0x30: 3a 34 34 3a 32 37 20 47 4d 54 0d 0a 0d 0a 48 54 :44:27 GMT....HT
0x40: 54 50 2f 31 2e 31 20 32 30 30 20 4f 4b 0d 0a 53 TP/1.1 200 OK..S
0x50: 65 72 76 65 72 3a 20 37 2e 34 2e 34 32 2e 34 20 erver: 7.4.42.4
0x60: 44 4d 53 0d 0a 44 61 74 65 3a 20 46 72 69 2c 20 DMS..Date: Fri,
0x70: 32 30 20 4a 75 6e 20 32 30 30 38 20 31 31 3a 34 20 Jun 2008 11:4
0x80: 34 3a 32 37 20 47 4d 54 0d 0a 43 4f 4e 54 45 4e 4:27 GMT..CONTEN
0x90: 54 2d 4c 45 4e 47 54 48 3a 20 35 33 30 33 38 30 T-LENGTH: 530380
0xa0: 36 0d 0a 63 6f 6e 74 65 6e 74 46 65 61 74 75 72 6..contentFeatur
0xb0: 65 73 2e 64 6c 6e 61 2e 6f 72 67 3a 20 44 4c 4e es.dlna.org: DLN
0xc0: 41 2e 4f 52 47 5f 50 4e 3d 4c 50 43 4d 3b 44 4c A.ORG_PN=LPCM;DL
0xd0: 4e 41 2e 4f 52 47 5f 4f 50 3d 30 31 0d 0a 74 72 NA.ORG_OP=01..tr
0xe0: 61 6e 73 66 65 72 4d 6f 64 65 2e 64 6c 6e 61 2e ansferMode.dlna.
0xf0: 6f 72 67 3a 20 53 74 72 65 61 6d 69 6e 67 0d 0a org: Streaming..
0x100: 43 6f 6e 74 65 6e 74 2d 54 79 70 65 3a 20 61 75 Content-Type: au
0x110: 64 69 6f 2f 4c 31 36 3b 72 61 74 65 3d 34 34 31 dio/L16;rate=441
0x120: 30 30 3b 63 68 61 6e 6e 65 6c 73 3d 31 0d 0a 0d 00;channels=1...
0x130: 0a
content-type=
ulHTTPStatus=100
CHTTPFileObject::HandleSocketRead
Hex Dump
0x00: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................
0x10: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................
0x20: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................
0x30: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................
0x40: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................
0x50: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................
0x60: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................
0x70: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................
0x80: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................


But a TCP dump of the same session shows:

12:44:20.580693 IP (tos 0x0, ttl 128, id 14948, offset 0, flags [DF], 
proto: TCP (6), length: 114) qa.internal.reciva.com.36294 > 
dobblers.internal.reciva.com.59625: P, cksum 0xc781 (correct), 1:63(62) 
ack 465 win 65071 <nop,nop,timestamp 7863714 2002858643>
0x0000: 4500 0072 3a64 4000 8006 6a6d c0a8 6a31 E..r:[email protected]
0x0010: c0a8 6a32 8dc6 e8e9 a40e 2896 ee57 259b ..j2......(..W%.
0x0020: 8018 fe2f c781 0000 0101 080a 0077 fda2 .../.........w..
0x0030: 7761 3293 4854 5450 2f31 2e31 2031 3030 wa2.HTTP/1.1.100
0x0040: 2043 6f6e 7469 6e75 650d 0a44 6174 653a .Continue..Date:
0x0050: 2046 7269 2c20 3230 204a 756e 2032 3030 .Fri,.20.Jun.200
0x0060: 3820 3131 3a34 343a 3237 2047 4d54 0d0a 8.11:44:27.GMT..
0x0070: 0d0a ..
12:44:20.580718 IP (tos 0x0, ttl 64, id 4427, offset 0, flags [DF], 
proto: TCP (6), length: 52) dobblers.internal.reciva.com.59625 > 
qa.internal.reciva.com.36294: ., cksum 0x20e3 (correct), 465:465(0) ack 
63 win 46 <nop,nop,timestamp 2002858742 7863714>
0x0000: 4500 0034 114b 4000 4006 d3c4 c0a8 6a32 E..4.K@[email protected]
0x0010: c0a8 6a31 e8e9 8dc6 ee57 259b a40e 28d4 ..j1.....W%...(.
0x0020: 8010 002e 20e3 0000 0101 080a 7761 32f6 ............wa2.
0x0030: 0077 fda2 .w..
12:44:20.581044 IP (tos 0x0, ttl 128, id 14949, offset 0, flags [DF], 
proto: TCP (6), length: 295) qa.internal.reciva.com.36294 > 
dobblers.internal.reciva.com.59625: P, cksum 0x12f5 (correct), 
63:306(243) ack 465 win 65071 <nop,nop,timestamp 7863714 2002858742>
0x0000: 4500 0127 3a65 4000 8006 69b7 c0a8 6a31 E..':[email protected]
0x0010: c0a8 6a32 8dc6 e8e9 a40e 28d4 ee57 259b ..j2......(..W%.
0x0020: 8018 fe2f 12f5 0000 0101 080a 0077 fda2 .../.........w..
0x0030: 7761 32f6 4854 5450 2f31 2e31 2032 3030 wa2.HTTP/1.1.200
0x0040: 204f 4b0d 0a53 6572 7665 723a 2037 2e34 .OK..Server:.7.4
0x0050: 2e34 322e 3420 444d 530d 0a44 6174 653a .42.4.DMS..Date:
0x0060: 2046 7269 2c20 3230 204a 756e 2032 3030 .Fri,.20.Jun.200
0x0070: 3820 3131 3a34 343a 3237 2047 4d54 0d0a 8.11:44:27.GMT..
0x0080: 434f 4e54 454e 542d 4c45 4e47 5448 3a20 CONTENT-LENGTH:.
0x0090: 3533 3033 3830 360d 0a63 6f6e 7465 6e74 5303806..content
0x00a0: 4665 6174 7572 6573 2e64 6c6e 612e 6f72 Features.dlna.or
0x00b0: 673a 2044 4c4e 412e 4f52 475f 504e 3d4c g:.DLNA.ORG_PN=L
0x00c0: 5043 4d3b 444c 4e41 2e4f 5247 5f4f 503d PCM;DLNA.ORG_OP=
0x00d0: 3031 0d0a 7472 616e 7366 6572 4d6f 6465 01..transferMode
0x00e0: 2e64 6c6e 612e 6f72 673a 2053 7472 6561 .dlna.org:.Strea
0x00f0: 6d69 6e67 0d0a 436f 6e74 656e 742d 5479 ming..Content-Ty
0x0100: 7065 3a20 6175 6469 6f2f 4c31 363b 7261 pe:.audio/L16;ra
0x0110: 7465 3d34 3431 3030 3b63 6861 6e6e 656c te=44100;channel
0x0120: 733d 310d 0a0d 0a s=1....
12:44:20.581064 IP (tos 0x0, ttl 64, id 4428, offset 0, flags [DF], 
proto: TCP (6), length: 52) dobblers.internal.reciva.com.59625 > 
qa.internal.reciva.com.36294: ., cksum 0x1fe8 (correct), 465:465(0) ack 
306 win 54 <nop,nop,timestamp 2002858742 7863714>
0x0000: 4500 0034 114c 4000 4006 d3c3 c0a8 6a32 E..4.L@[email protected]
0x0010: c0a8 6a31 e8e9 8dc6 ee57 259b a40e 29c7 ..j1.....W%...).
0x0020: 8010 0036 1fe8 0000 0101 080a 7761 32f6 ...6........wa2.
0x0030: 0077 fda2 .w..
12:44:20.699645 IP (tos 0x0, ttl 128, id 14953, offset 0, flags [DF], 
proto: TCP (6), length: 1500) qa.internal.reciva.com.36294 > 
dobblers.internal.reciva.com.59625: ., cksum 0x1c45 (correct), 
306:1754(1448) ack 465 win 65071 <nop,nop,timestamp 7863715 2002858742>
0x0000: 4500 05dc 3a69 4000 8006 64fe c0a8 6a31 E...:[email protected]
0x0010: c0a8 6a32 8dc6 e8e9 a40e 29c7 ee57 259b ..j2......)..W%.
0x0020: 8010 fe2f 1c45 0000 0101 080a 0077 fda3 .../.E.......w..
0x0030: 7761 32f6 0000 0000 0000 0000 0000 0000 wa2.............
0x0040: 0000 0000 0000 0000 0000 0000 0000 0000 ................
0x0050: 0000 0000 0000 0000 0000 0000 0000 0000 ................
0x0060: 0000 0000 0000 0000 0000 0000 0000 0000 ................


Any idea what's going on here ?



John Stirling wrote:
> We're failing another DLNA test (see text below). We're on cayenne.
>
> Test: To verify that HTTP/1.1 client endpoints properly handle HTTP 
> response codes of 1xx from HTTP servers, even when not expected.
>
> 8/06/2008 16:16:34: INFO: *** Starting Test: => "7.4.42.4 MT Baseline 
> Transport: HTTP Client Endpoints: 1xx Status Codes"
> 18/06/2008 16:16:34: INFO: 1. Start a DMS Simulator with the name 
> &#8220;7.4.42.4 DMS&#8221;.
> 18/06/2008 16:16:35: INFO: 2. Prompt the user to render/download a 
> media item from the DMS Simulator.
> 18/06/2008 16:16:48: INFO: 3.1 Received an HTTP GET, checking its 
> version to see if it is HTTP/1.1.
> 18/06/2008 16:16:48: INFO: 3.2 The request was found to be HTTP 
> Version 1.1, sending the response using 100 continue.
> 18/06/2008 16:16:48: INFO: Now sending the 200 OK.
> 18/06/2008 16:16:48: INFO: 4. Please verify that the media item 
> successfully rendered.
> 18/06/2008 16:17:44: INFO: DUT did not properly handle HTTP response 
> codes of 1xx from HTTP servers.
> 18/06/2008 16:17:49: FAILED: DUT did not properly handle HTTP response 
> codes of 1xx from HTTP servers.
>
>
> There doesn't seem to be any handling of status code 100 in 
> CHTTPFileObject::HandleHeaderRead. As far as I'm aware we should just 
> ignore the 100 and wait for the next header to arrive.
> I tried adding this:
>
> switch(ulHTTPStatus)
> {
> case 100: // Continue // XXX
> retVal= HXR_OK; //XXX
> break; // XXX
>
> case 206: // Success. Partial data.
>
> but that doesn't seem to help. Any pointers on what we should be doing 
> in response to a 100 status code ? I'm guessing it's an easy fix, but 
> httpfsys is pretty big so any help much appreciated.
>
> John
>
>
>
>
>
>
>
>
> _______________________________________________
> Helix-client-dev mailing list
> [email protected]
> http://lists.helixcommunity.org/mailman/listinfo/helix-client-dev


_______________________________________________
Helix-client-dev mailing list
[email protected]
http://lists.helixcommunity.org/mailman/listinfo/helix-client-dev
lmpx.com only provides a reader for public news (NNTP) servers. It is not affiliated with the servers or forums shown here and is not responsible for the content of articles, which is written by their respective authors.