[xml] document() function not sending port number in Host request header

Using libxslt and xsltproc in version 1.1.20 (1.1.20-0ubuntu2, Xubuntu 7.04).  Here's what xsltproc says 
about itself:

  cbearden plantinga:~/printing/PrintAll/2007.08.15$ xsltproc --version
  Using libxml 20627, libxslt 10120 and libexslt 813
  xsltproc was compiled against libxml 20627, libxslt 10120 and libexslt 813
  libxslt 10120 was compiled against libxml 20627
  libexslt 813 was compiled against libxml 20627

Given a string URI that includes an explicit port number, e.g.


, the document() function when sending the HTTP header does not 
include the port number in the Host: header.  So the header I see 
when I log packets for such a request looks like this:

  GET /content/m0036/latest/index.cnxml HTTP/1.0
  Host: sandbox.cnx.rice.edu
  Accept-Encoding: gzip

I'm not sure whether or not this is in line with the HTTP 1.0 
specification, since I think 'Host' is an extension to HTTP 1.0, and 
I can't find it described in the spec.  (When I first spotted this 
behavior, I didn't notice that xsltproc was sending 1.0 and not 1.1 
headers.  If I read the HTTP 1.1 specification correctly, it would 
not conform to 1.1.)  It's odd behavior at the very least.

Is this something I should create a bug in Bugzilla for?  I can 
supply a pcap file that will illustrate the headers captured in 
actual use.

Appended is the stylesheet I used to exercise the behavior.

Chuck Bearden (cbearden rice edu ; 713.348.3661)
XML Engineer, Connexions

<?xml version="1.0" encoding="utf-8"?>
<xsl:stylesheet version="1.0"

  <xsl:template match="/">
      <xsl:copy-of select="document('http://sandbox.cnx.rice.edu:8080/content/m0036/latest/index.cnxml')"/>


[Date Prev][Date Next]   [Thread Prev][Thread Next]   [Thread Index] [Date Index] [Author Index]