tomclegg.net


Diary
Examples
    256-router
    adzap
    apache-double-reverse
    cacti-adodb-php4
    debian-quota
    diskonmodule
    dollarsperbyte
    dynip
    ezmlm-linux
    fbsdhabits
    freebsdclone
    macbook-quantal-sound
    maildirpop3d-awfulhak
    mandy
    md
    mrtg
    net-snmp
    nodefaultroute
    oracle9i
    oracle9i-bsd5
    oracle9i-client
    oracle9i-nat
    php-cgi
    php-commandline
    php-image
    php-kics
    php-mini_httpd
    pinouts
    pizzaperdollar
    plesk-symlink-php
    pxe
    qmail-linux
    qmail-qfilter
    racoon-sonicwall
    redundant-vpn
    rewriterule
    seahorse-workaround
    setting-locale-failed
    smalldog
    snmpv3-cacti
    spamassassin
    squid-tproxy
    supfile
    suse73
    svc-nmbd
    svc-smbd
    svc-smtpd
    switch-virtualbox-virsh
    toyotastereo
    vm
    vn-file
  >wmp-invalid<
    xcode-remote-install
    xen-eth0-renamed
    xen-monowall
    xen3-ubuntu-dapper
    zz-update-grub-fail
Hire Tom
Mostly Mozart
Patches
School
Scrapbook
Software
Telephones




colocation
comments
davidireland
edsgranola
faq
funsites
goodlooking
goodmovies
google-earth-saucy-amd64
houserules
liberating
resume
resume2
scratch
shopping
snacks
todo
university
warisbogus

Windows Media Player's Malformed HTTP Requests
Posted December 14, 2003

Problem:

When accessing HTTP streams, some versions of Windows Media Player (I tested version 8.00.00.4477) send HTTP/1.0 requests which are rejected by NetCache NetApp/5.5D1.

For example, if I open http://live32.cjly.net/ using the "Open URL..." command, WMP8 sends the following request.

GET / HTTP/1.0
Accept: */*
User-Agent: NSPlayer/8.0.0.4477
Host: live32.cjly.net
Pragma: no-cache,rate=1.000000,stream-time=0,stream-offset=0:0,request-context=28902784,max-duration=0
Pragma: xClientGUID={3300****-2C**-46**-AE**-87B4F4******}

(xClientGUID changed to protect the guilty.)

The first line of this request ("GET / HTTP/1.0") is rejected by Shaw Cable's transparent web cache. It returns an error:

HTTP/1.0 400 Bad Request
Server: Cougar 4.1.0.3857
Via: px1ca (NetCache NetApp/5.5D1)

Workaround:

In this particular circumstance, I was able to use a different port number to circumvent Shaw's web cache and reach the server directly. The server accepts the request, and WMP can receive the stream.

Solution:

Since then, Shaw has upgraded to NetCache NetApp 5.6.1D25 which does not exhibit this problem.

Credit:

Ahmed Azhad for noticing that this is a bug in the proxy software, not a bug in Windows Media Player.