<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:wfw="http://wellformedweb.org/CommentAPI/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	xmlns:atom="http://www.w3.org/2005/Atom"
	xmlns:sy="http://purl.org/rss/1.0/modules/syndication/"
	xmlns:slash="http://purl.org/rss/1.0/modules/slash/"
	>

<channel>
	<title>dasz.at - Benutzbare Technologie &#187; WCF</title>
	<atom:link href="http://dasz.at/index.php/category/microsoft/wcf/feed/" rel="self" type="application/rss+xml" />
	<link>http://dasz.at</link>
	<description>Benutzbare Technologie</description>
	<lastBuildDate>Fri, 30 Jul 2010 17:07:19 +0000</lastBuildDate>
	<generator>http://wordpress.org/?v=2.9.1</generator>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
			<item>
		<title>Microsoft cannot decode Base64: News at 11!</title>
		<link>http://dasz.at/index.php/2010/03/microsoft-cannot-decode-base64-news-at-11/</link>
		<comments>http://dasz.at/index.php/2010/03/microsoft-cannot-decode-base64-news-at-11/#comments</comments>
		<pubDate>Fri, 12 Mar 2010 16:28:17 +0000</pubDate>
		<dc:creator>David Schmitt</dc:creator>
				<category><![CDATA[Microsoft]]></category>
		<category><![CDATA[Tech]]></category>
		<category><![CDATA[WCF]]></category>

		<guid isPermaLink="false">http://dasz.at/?p=375</guid>
		<description><![CDATA[Arthur has found a really nasty bug in Microsoft&#8217;s streaming Base64 decoder as used in the WCF: Connect Bug#541494
In short: If WCF receives a message whose length is not 16+n*3 bytes (int n>=0) AND the receiver tries to read the last byte with Stream.ReadByte or Stream.ReadBoolean, a System.IO.EndOfStreamException &#8220;Unable to read beyond the end of [...]]]></description>
			<content:encoded><![CDATA[<p>Arthur has found a really nasty bug in Microsoft&#8217;s streaming <a href="http://en.wikipedia.org/wiki/Base64">Base64</a> decoder as used in the <a href="http://en.wikipedia.org/wiki/Windows_Communication_Foundation">WCF</a>: <a href="https://connect.microsoft.com/VisualStudio/feedback/details/541494/wcf-streaming-issue">Connect Bug#541494</a></p>
<p>In short: If WCF receives a message whose length is not <code>16+n*3</code> bytes (<code>int n>=0</code>) AND the receiver tries to read the last byte with <a href="http://msdn.microsoft.com/en-us/library/system.io.stream.readbyte.aspx"><code>Stream.ReadByte</code></a> or <a href="http://msdn.microsoft.com/en-us/library/system.io.stream.readboolean.aspx"><code>Stream.ReadBoolean</code></a>, a <a href="http://msdn.microsoft.com/en-us/library/system.io.endofstreamexception.aspx"><code>System.IO.EndOfStreamException</code></a> &#8220;Unable to read beyond the end of the stream.&#8221; is thrown from the bowels of WCF. Looking at the source, Reflector&#8217;s output, and the strange length restriction, we presume that the Base64 decode tries to read beyond the underlying stream when the last byte is requested.</p>
<p>As an easy workaround we now pad the end of the stream with a few additional bytes which we never read. This way we do not trigger this bug.</p>
<p>Since MS Connect doesn&#8217;t allow downloading the Demo Project, here is <a href='http://dasz.at/wp-content/uploads/2010/03/WCFTest2.zip'>a local copy</a>.</p>
]]></content:encoded>
			<wfw:commentRss>http://dasz.at/index.php/2010/03/microsoft-cannot-decode-base64-news-at-11/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>HTTP could not register URL http://+:666/ &#8211; Yeah!</title>
		<link>http://dasz.at/index.php/2008/01/http-could-not-register-url-http666-yeah/</link>
		<comments>http://dasz.at/index.php/2008/01/http-could-not-register-url-http666-yeah/#comments</comments>
		<pubDate>Wed, 30 Jan 2008 18:16:54 +0000</pubDate>
		<dc:creator>Arthur Zaczek</dc:creator>
				<category><![CDATA[Microsoft]]></category>
		<category><![CDATA[Tech]]></category>
		<category><![CDATA[WCF]]></category>

		<guid isPermaLink="false">http://dasz.at/index.php/2008/01/http-could-not-register-url-http666-yeah/</guid>
		<description><![CDATA[If you want to run a WCF Server with HTTP Bindings, you&#8217;ll have to register it at your OS first. Here is how:
http://blogs.msdn.com/amitlale/archive/2007/01/29/addressaccessdeniedexception-cause-and-solution.aspx
netsh http add urlacl url=http://+:666/ user=DOMAIN\UserName
]]></description>
			<content:encoded><![CDATA[<p>If you want to run a WCF Server with HTTP Bindings, you&#8217;ll have to register it at your OS first. Here is how:</p>
<p><a href="http://blogs.msdn.com/amitlale/archive/2007/01/29/addressaccessdeniedexception-cause-and-solution.aspx">http://blogs.msdn.com/amitlale/archive/2007/01/29/addressaccessdeniedexception-cause-and-solution.aspx</a></p>
<blockquote><p>netsh http add urlacl url=http://+:666/ user=DOMAIN\UserName</p></blockquote>
]]></content:encoded>
			<wfw:commentRss>http://dasz.at/index.php/2008/01/http-could-not-register-url-http666-yeah/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
	</channel>
</rss>
