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

<rdf:RDF 
   xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
   xmlns:admin="http://webns.net/mvcb/"
   xmlns:content="http://purl.org/rss/1.0/modules/content/"
   xmlns:dc="http://purl.org/dc/elements/1.1/"
   xmlns:slash="http://purl.org/rss/1.0/modules/slash/"
   xmlns:wfw="http://wellformedweb.org/CommentAPI/"
   xmlns="http://my.netscape.com/rdf/simple/0.9/">
<channel>
    <title>Flyspray Development Blog</title>
    <link>http://blog.flyspray.org/</link>
    <description>Development Blog</description>
    <dc:language>en</dc:language>

    <image rdf:resource="http://blog.flyspray.org/templates/default/img/s9y_banner_small.png" />

    <items>
      <rdf:Seq>
        <rdf:li resource="http://blog.flyspray.org/archives/12-guid.html" />
        <rdf:li resource="http://blog.flyspray.org/archives/11-guid.html" />
        <rdf:li resource="http://blog.flyspray.org/archives/10-guid.html" />
        <rdf:li resource="http://blog.flyspray.org/archives/9-guid.html" />
        <rdf:li resource="http://blog.flyspray.org/archives/8-guid.html" />
        <rdf:li resource="http://blog.flyspray.org/archives/7-guid.html" />
        <rdf:li resource="http://blog.flyspray.org/archives/6-guid.html" />
        <rdf:li resource="http://blog.flyspray.org/archives/5-guid.html" />
        <rdf:li resource="http://blog.flyspray.org/archives/4-guid.html" />
        <rdf:li resource="http://blog.flyspray.org/archives/3-guid.html" />
        <rdf:li resource="http://blog.flyspray.org/archives/2-guid.html" />
        <rdf:li resource="http://blog.flyspray.org/archives/1-guid.html" />
      </rdf:Seq>
    </items>
</channel>

<image rdf:about="http://blog.flyspray.org/templates/default/img/s9y_banner_small.png">
        <url>http://blog.flyspray.org/templates/default/img/s9y_banner_small.png</url>
        <title>RSS: Flyspray Development Blog - Development Blog</title>
        <link>http://blog.flyspray.org/</link>
        <width>100</width>
        <height>21</height>
    </image>


<item rdf:about="http://blog.flyspray.org/archives/12-guid.html">
    <title>Quickly access Flyspray tasks with Firefox</title>
    <link>http://blog.flyspray.org/archives/12-Quickly-access-Flyspray-tasks-with-Firefox.html</link>
    <description>
    There is a simple way how you can easily and quickly open a Flyspray task in Firefox you might not know yet.&lt;br /&gt;
&lt;br /&gt;
First, rightclick in the &quot;show task&quot; input box (top right) of Flyspray. Choose &quot;Add a keyword for this search&quot;. In the following window, enter any &lt;em&gt;Name&lt;/em&gt; and use &quot;fs&quot; as &lt;em&gt;Keyword&lt;/em&gt;. That&#039;s it. Now you can type &quot;fs 123&quot; in the Location/URL bar to open task FS#123 in your Flyspray installation &lt;img src=&quot;http://blog.flyspray.org/templates/default/img/emoticons/smile.png&quot; alt=&quot;:-)&quot; style=&quot;display: inline; vertical-align: bottom;&quot; class=&quot;emoticon&quot; /&gt; &lt;br /&gt;
&lt;br /&gt;
In fact, you can also type &quot;fs &lt;em&gt;string&lt;/em&gt;&quot; to search for tasks that contain &lt;em&gt;string&lt;/em&gt; in its summary. 
    </description>

    <dc:publisher>Flyspray Development Blog</dc:publisher>
    <dc:creator>nospam@example.com (Florian Schmitz)</dc:creator>
    <dc:subject>
    Tips and tricks, </dc:subject>
    <dc:date>2007-07-29T07:45:30Z</dc:date>
    <wfw:comment>http://blog.flyspray.org/wfwcomment.php?cid=12</wfw:comment>
        <slash:comments>6</slash:comments>
        <wfw:commentRss>http://blog.flyspray.org/rss.php?version=1.0&amp;type=comments&amp;cid=12</wfw:commentRss>
    
    
</item>
<item rdf:about="http://blog.flyspray.org/archives/11-guid.html">
    <title>So long PHP4... GoPHP5</title>
    <link>http://blog.flyspray.org/archives/11-So-long-PHP4...-GoPHP5.html</link>
    <description>
    Yup, The time has come, developers agree, It is now official,  &lt;a href=&quot;http://flyspray.org&quot;&gt;Flyspray&lt;/a&gt; 1.0 (&lt;s&gt;to be out by the end of this year&lt;/s&gt;) will be the last version with PHP4 support, in the future  our software will run exclusively on PHP 5.1 or later (including use of features present in PHP 5.2 as well upcoming PHP6), this will help us to cleanup and improve our code significantly and make use of the enormous amount of benefits that PHP5 provides.&lt;br /&gt;
&lt;br /&gt;
We are joining among other FOSS projects like phpMyAdmin, Drupal, Typo3, Symfony to the &lt;a href=&quot;http://gophp5.org/&quot; title=&quot;PHP4 is dead&quot;&gt;GoPHP5&lt;/a&gt; initiative so, effectively on February 5, 2008 we will only produce and recieve code contributions that runs in PHP5 and are E_STRICT error mode aware.  &lt;br /&gt;
&lt;br /&gt;
However, the last PHP4 releases will still be mantained but only for &lt;strong&gt; security bugs or major regressions, no new features.&lt;/strong&gt; for at least 3/4 months since the 1.0 release, so you have more than a year from now on to upgrade your PHP version. &lt;br /&gt;
&lt;br /&gt;
It is time to move on folks, PHP4 is dead, long live to PHP5. &lt;img src=&quot;http://blog.flyspray.org/templates/default/img/emoticons/wink.png&quot; alt=&quot;;-)&quot; style=&quot;display: inline; vertical-align: bottom;&quot; class=&quot;emoticon&quot; /&gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;strong&gt;Update: In fact, already version 1.0 will be PHP5 only. The release date is still unkown though.&lt;/strong&gt; 
    </description>

    <dc:publisher>Flyspray Development Blog</dc:publisher>
    <dc:creator>nospam@example.com (Cristian Rodriguez)</dc:creator>
    <dc:subject>
    </dc:subject>
    <dc:date>2007-07-06T02:47:20Z</dc:date>
    <wfw:comment>http://blog.flyspray.org/wfwcomment.php?cid=11</wfw:comment>
        <slash:comments>8</slash:comments>
        <wfw:commentRss>http://blog.flyspray.org/rss.php?version=1.0&amp;type=comments&amp;cid=11</wfw:commentRss>
    
    
</item>
<item rdf:about="http://blog.flyspray.org/archives/10-guid.html">
    <title>Latest bug reports in your website</title>
    <link>http://blog.flyspray.org/archives/10-Latest-bug-reports-in-your-website.html</link>
    <description>
    Just in case someday you want to integrate your latest bug reports in your website, you can do that with this micro RSS reader &lt;img src=&quot;http://blog.flyspray.org/templates/default/img/emoticons/wink.png&quot; alt=&quot;;-)&quot; style=&quot;display: inline; vertical-align: bottom;&quot; class=&quot;emoticon&quot; /&gt; &lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;

&lt;div class=&quot;bb-php-title&quot;&gt;PHP:&lt;/div&gt;&lt;div class=&quot;bb-php&quot;&gt;&lt;code&gt;&lt;span style=&quot;color: #000000&quot;&gt;
&lt;span style=&quot;color: #0000BB&quot;&gt;&amp;lt;?php

$feed&amp;#160;&lt;/span&gt;&lt;span style=&quot;color: #007700&quot;&gt;=&amp;#160;new&amp;#160;&lt;/span&gt;&lt;span style=&quot;color: #0000BB&quot;&gt;SimpleXmlElement&lt;/span&gt;&lt;span style=&quot;color: #007700&quot;&gt;(&lt;/span&gt;&lt;span style=&quot;color: #DD0000&quot;&gt;&#039;http://bugs.flyspray.org/feed.php?feed_type=rss1&amp;amp;project=1&#039;&lt;/span&gt;&lt;span style=&quot;color: #007700&quot;&gt;,&amp;#160;&lt;/span&gt;&lt;span style=&quot;color: #0000BB&quot;&gt;NULL&lt;/span&gt;&lt;span style=&quot;color: #007700&quot;&gt;,&amp;#160;&lt;/span&gt;&lt;span style=&quot;color: #0000BB&quot;&gt;TRUE&lt;/span&gt;&lt;span style=&quot;color: #007700&quot;&gt;);

foreach&amp;#160;(&lt;/span&gt;&lt;span style=&quot;color: #0000BB&quot;&gt;$feed&lt;/span&gt;&lt;span style=&quot;color: #007700&quot;&gt;-&amp;gt;&lt;/span&gt;&lt;span style=&quot;color: #0000BB&quot;&gt;item&amp;#160;&lt;/span&gt;&lt;span style=&quot;color: #007700&quot;&gt;as&amp;#160;&lt;/span&gt;&lt;span style=&quot;color: #0000BB&quot;&gt;$bug&lt;/span&gt;&lt;span style=&quot;color: #007700&quot;&gt;)&amp;#160;{&amp;#160;&amp;#160;&amp;#160;&amp;#160;
&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&lt;/span&gt;&lt;span style=&quot;color: #0000BB&quot;&gt;printf&lt;/span&gt;&lt;span style=&quot;color: #007700&quot;&gt;(&lt;/span&gt;&lt;span style=&quot;color: #DD0000&quot;&gt;&#039;&amp;lt;a&amp;#160;href=&quot;%s&quot;&amp;gt;%s&amp;lt;/a&amp;gt;&amp;lt;/br&amp;gt;&#039;&lt;/span&gt;&lt;span style=&quot;color: #007700&quot;&gt;,&amp;#160;&lt;/span&gt;&lt;span style=&quot;color: #0000BB&quot;&gt;$bug&lt;/span&gt;&lt;span style=&quot;color: #007700&quot;&gt;-&amp;gt;&lt;/span&gt;&lt;span style=&quot;color: #0000BB&quot;&gt;link&lt;/span&gt;&lt;span style=&quot;color: #007700&quot;&gt;,&amp;#160;&lt;/span&gt;&lt;span style=&quot;color: #0000BB&quot;&gt;$bug&lt;/span&gt;&lt;span style=&quot;color: #007700&quot;&gt;-&amp;gt;&lt;/span&gt;&lt;span style=&quot;color: #0000BB&quot;&gt;title&lt;/span&gt;&lt;span style=&quot;color: #007700&quot;&gt;);
}

&lt;/span&gt;&lt;span style=&quot;color: #0000BB&quot;&gt;?&amp;gt;&lt;/span&gt;
&lt;/span&gt;
&lt;/code&gt;&lt;/div&gt; &lt;br/&gt;

Replace the URL with the one of your BTS ( PHP5 with SimpleXML required) . Remember to save a cache of your feeds on disk as well, otherwise this will request the file over and over again and will slow down your server significantly if you have enough traffic in your site &lt;img src=&quot;http://blog.flyspray.org/templates/default/img/emoticons/tongue.png&quot; alt=&quot;:-P&quot; style=&quot;display: inline; vertical-align: bottom;&quot; class=&quot;emoticon&quot; /&gt; &lt;br/&gt;

 
    </description>

    <dc:publisher>Flyspray Development Blog</dc:publisher>
    <dc:creator>nospam@example.com (Cristian Rodriguez)</dc:creator>
    <dc:subject>
    Tips and tricks, </dc:subject>
    <dc:date>2007-06-18T08:07:27Z</dc:date>
    <wfw:comment>http://blog.flyspray.org/wfwcomment.php?cid=10</wfw:comment>
        <slash:comments>2</slash:comments>
        <wfw:commentRss>http://blog.flyspray.org/rss.php?version=1.0&amp;type=comments&amp;cid=10</wfw:commentRss>
    
    
</item>
<item rdf:about="http://blog.flyspray.org/archives/9-guid.html">
    <title>0.9.9.2 released</title>
    <link>http://blog.flyspray.org/archives/9-0.9.9.2-released.html</link>
    <description>
    We are pleased to announce the release of 0.9.9.2. No security fixes this time, but instead a few minor features (&lt;a href=&quot;http://flyspray.org/changelog&quot;&gt;changes&lt;/a&gt;). We wouldn&#039;t do that usually, but we got a very generous donation so we decided to add a little functionality. Upgrading is recommended (don&#039;t forget to run the upgrader this time).&lt;br /&gt;
&lt;br /&gt;
I recently have been told that &quot;0.9.9 seems not worth the trouble upgrading to&quot; (from 0.9.8 ). If you think that as well, you should reconsider it. First of all 0.9.9 was virtually a rewrite of 0.9.8 with plenty of changes and hundreds of bug fixes and more importantly, &lt;strong&gt;0.9.8 does contain &lt;em&gt;unfixed&lt;/em&gt; security holes&lt;/strong&gt;. Also, upgrading is not that much trouble in fact unless you discover (yet another) bug in ADOdb&#039;s database XML features &lt;img src=&quot;http://blog.flyspray.org/templates/default/img/emoticons/wink.png&quot; alt=&quot;;-)&quot; style=&quot;display: inline; vertical-align: bottom;&quot; class=&quot;emoticon&quot; /&gt; 
    </description>

    <dc:publisher>Flyspray Development Blog</dc:publisher>
    <dc:creator>nospam@example.com (Florian Schmitz)</dc:creator>
    <dc:subject>
    </dc:subject>
    <dc:date>2007-05-26T07:59:14Z</dc:date>
    <wfw:comment>http://blog.flyspray.org/wfwcomment.php?cid=9</wfw:comment>
        <slash:comments>0</slash:comments>
        <wfw:commentRss>http://blog.flyspray.org/rss.php?version=1.0&amp;type=comments&amp;cid=9</wfw:commentRss>
    
    
</item>
<item rdf:about="http://blog.flyspray.org/archives/8-guid.html">
    <title>09-f9-11-02-9d-74-e3-5b-d8-41-56-c5-63-56-88-c0</title>
    <link>http://blog.flyspray.org/archives/8-09-f9-11-02-9d-74-e3-5b-d8-41-56-c5-63-56-88-c0.html</link>
    <description>
    Well, looks like &quot;brillant experts&quot; that created a &quot;very secret&quot; copy protection code used  this snippet  &lt;img src=&quot;http://blog.flyspray.org/templates/default/img/emoticons/laugh.png&quot; alt=&quot;:-D&quot; style=&quot;display: inline; vertical-align: bottom;&quot; class=&quot;emoticon&quot; /&gt; &lt;br/&gt;&lt;br/&gt;

&lt;div class=&quot;bb-php-title&quot;&gt;PHP:&lt;/div&gt;&lt;div class=&quot;bb-php&quot;&gt;&lt;code&gt;&lt;span style=&quot;color: #000000&quot;&gt;
&lt;span style=&quot;color: #0000BB&quot;&gt;&amp;lt;?php

&lt;/span&gt;&lt;span style=&quot;color: #FF8000&quot;&gt;//&amp;#160;next&amp;#160;time&amp;#160;they&amp;#160;&quot;fix&quot;&amp;#160;the&amp;#160;code,&amp;#160;something&amp;#160;like&amp;#160;this&amp;#160;will&amp;#160;be&amp;#160;used&amp;#160;to&amp;#160;generate&amp;#160;a&amp;#160;new&amp;#160;one
&lt;/span&gt;&lt;span style=&quot;color: #007700&quot;&gt;echo&amp;#160;&lt;/span&gt;&lt;span style=&quot;color: #0000BB&quot;&gt;rtrim&lt;/span&gt;&lt;span style=&quot;color: #007700&quot;&gt;(&lt;/span&gt;&lt;span style=&quot;color: #0000BB&quot;&gt;chunk_split&lt;/span&gt;&lt;span style=&quot;color: #007700&quot;&gt;(&lt;/span&gt;&lt;span style=&quot;color: #0000BB&quot;&gt;md5&lt;/span&gt;&lt;span style=&quot;color: #007700&quot;&gt;(&lt;/span&gt;&lt;span style=&quot;color: #0000BB&quot;&gt;uniqid&lt;/span&gt;&lt;span style=&quot;color: #007700&quot;&gt;(&lt;/span&gt;&lt;span style=&quot;color: #0000BB&quot;&gt;mt_rand&lt;/span&gt;&lt;span style=&quot;color: #007700&quot;&gt;(),&amp;#160;&lt;/span&gt;&lt;span style=&quot;color: #0000BB&quot;&gt;true&lt;/span&gt;&lt;span style=&quot;color: #007700&quot;&gt;)),&amp;#160;&lt;/span&gt;&lt;span style=&quot;color: #0000BB&quot;&gt;2&lt;/span&gt;&lt;span style=&quot;color: #007700&quot;&gt;,&amp;#160;&lt;/span&gt;&lt;span style=&quot;color: #DD0000&quot;&gt;&#039;-&#039;&lt;/span&gt;&lt;span style=&quot;color: #007700&quot;&gt;),&amp;#160;&lt;/span&gt;&lt;span style=&quot;color: #DD0000&quot;&gt;&#039;-&#039;&lt;/span&gt;&lt;span style=&quot;color: #007700&quot;&gt;);

&lt;/span&gt;&lt;span style=&quot;color: #0000BB&quot;&gt;?&amp;gt;&lt;/span&gt;
&lt;/span&gt;
&lt;/code&gt;&lt;/div&gt;
&lt;br/&gt;&lt;br/&gt;

Some people earns money too easily, why on earth they think a 32 bit hex hash splitted by &quot;-&quot; will be secure enough to be used as a &lt;strong&gt;massive&lt;/strong&gt; copy protection measure is a real wonder to me ... &lt;img src=&quot;http://blog.flyspray.org/templates/default/img/emoticons/wink.png&quot; alt=&quot;;-)&quot; style=&quot;display: inline; vertical-align: bottom;&quot; class=&quot;emoticon&quot; /&gt; &lt;br/&gt;&lt;br/&gt;
The entertainment industry should start thinking about adding more value to their products and adapt to the current situation instead of playing this absurd, hilarious game over and over again.&lt;br/&gt;&lt;br/&gt;

see the digg story &lt;a href=&quot;http://blog.digg.com/?p=74&quot; title=&quot;hahah LOL&quot;&gt;http://blog.digg.com/?p=74&lt;/a&gt;


  
    </description>

    <dc:publisher>Flyspray Development Blog</dc:publisher>
    <dc:creator>nospam@example.com (Cristian Rodriguez)</dc:creator>
    <dc:subject>
    Offtopic, </dc:subject>
    <dc:date>2007-05-02T10:33:35Z</dc:date>
    <wfw:comment>http://blog.flyspray.org/wfwcomment.php?cid=8</wfw:comment>
        <slash:comments>1</slash:comments>
        <wfw:commentRss>http://blog.flyspray.org/rss.php?version=1.0&amp;type=comments&amp;cid=8</wfw:commentRss>
    
    
</item>
<item rdf:about="http://blog.flyspray.org/archives/7-guid.html">
    <title>Amusing security hole in Shiflett's security guide</title>
    <link>http://blog.flyspray.org/archives/7-Amusing-security-hole-in-Shifletts-security-guide.html</link>
    <description>
    Recently, reading a post in &lt;a href=&quot;http://blog.libssh2.org/index.php?/archives/55-Security-Conciousness.html&quot;  title=&quot;Sara&#039;s blog&quot;&gt;Sara Golemon &#039;s blog&lt;/a&gt; about the &lt;a href=&quot;http://shiflett.org/php-security.pdf&quot;  title=&quot;broken security guide&quot;&gt;PHP security guide &lt;/a&gt; I took some minutes to read the mentioned security article and I almost fall of my chair while looking the example entitled&lt;a href=&quot;http://phpsec.org/projects/guide/5.html#5.2&quot;  title=&quot;it is insecure actually...&quot;&gt;&quot;Browsing the FileSystem&quot;&lt;/a&gt; (retrieved at Wed Apr 11 05:47:32 UTC 2007) which features the following code. &lt;br/&gt;
&lt;br/&gt;

&lt;div class=&quot;bb-php-title&quot;&gt;PHP:&lt;/div&gt;&lt;div class=&quot;bb-php&quot;&gt;&lt;code&gt;&lt;span style=&quot;color: #000000&quot;&gt;
&lt;span style=&quot;color: #0000BB&quot;&gt;&amp;lt;?php

&lt;/span&gt;&lt;span style=&quot;color: #007700&quot;&gt;echo&amp;#160;&lt;/span&gt;&lt;span style=&quot;color: #DD0000&quot;&gt;&quot;&amp;lt;pre&amp;gt;\n&quot;&lt;/span&gt;&lt;span style=&quot;color: #007700&quot;&gt;;

if&amp;#160;(&lt;/span&gt;&lt;span style=&quot;color: #0000BB&quot;&gt;ini_get&lt;/span&gt;&lt;span style=&quot;color: #007700&quot;&gt;(&lt;/span&gt;&lt;span style=&quot;color: #DD0000&quot;&gt;&#039;safe_mode&#039;&lt;/span&gt;&lt;span style=&quot;color: #007700&quot;&gt;))
{
&amp;#160;&amp;#160;&amp;#160;&amp;#160;echo&amp;#160;&lt;/span&gt;&lt;span style=&quot;color: #DD0000&quot;&gt;&quot;[safe_mode&amp;#160;enabled]\n\n&quot;&lt;/span&gt;&lt;span style=&quot;color: #007700&quot;&gt;;
}
else
{
&amp;#160;&amp;#160;&amp;#160;&amp;#160;echo&amp;#160;&lt;/span&gt;&lt;span style=&quot;color: #DD0000&quot;&gt;&quot;[safe_mode&amp;#160;disabled]\n\n&quot;&lt;/span&gt;&lt;span style=&quot;color: #007700&quot;&gt;;
}

if&amp;#160;(isset(&lt;/span&gt;&lt;span style=&quot;color: #0000BB&quot;&gt;$_GET&lt;/span&gt;&lt;span style=&quot;color: #007700&quot;&gt;[&lt;/span&gt;&lt;span style=&quot;color: #DD0000&quot;&gt;&#039;dir&#039;&lt;/span&gt;&lt;span style=&quot;color: #007700&quot;&gt;]))
{
&amp;#160;&amp;#160;&amp;#160;&amp;#160;&lt;/span&gt;&lt;span style=&quot;color: #0000BB&quot;&gt;ls&lt;/span&gt;&lt;span style=&quot;color: #007700&quot;&gt;(&lt;/span&gt;&lt;span style=&quot;color: #0000BB&quot;&gt;$_GET&lt;/span&gt;&lt;span style=&quot;color: #007700&quot;&gt;[&lt;/span&gt;&lt;span style=&quot;color: #DD0000&quot;&gt;&#039;dir&#039;&lt;/span&gt;&lt;span style=&quot;color: #007700&quot;&gt;]);
}
elseif&amp;#160;(isset(&lt;/span&gt;&lt;span style=&quot;color: #0000BB&quot;&gt;$_GET&lt;/span&gt;&lt;span style=&quot;color: #007700&quot;&gt;[&lt;/span&gt;&lt;span style=&quot;color: #DD0000&quot;&gt;&#039;file&#039;&lt;/span&gt;&lt;span style=&quot;color: #007700&quot;&gt;]))
{
&amp;#160;&amp;#160;&amp;#160;&amp;#160;&lt;/span&gt;&lt;span style=&quot;color: #0000BB&quot;&gt;cat&lt;/span&gt;&lt;span style=&quot;color: #007700&quot;&gt;(&lt;/span&gt;&lt;span style=&quot;color: #0000BB&quot;&gt;$_GET&lt;/span&gt;&lt;span style=&quot;color: #007700&quot;&gt;[&lt;/span&gt;&lt;span style=&quot;color: #DD0000&quot;&gt;&#039;file&#039;&lt;/span&gt;&lt;span style=&quot;color: #007700&quot;&gt;]);
}
else
{
&amp;#160;&amp;#160;&amp;#160;&amp;#160;&lt;/span&gt;&lt;span style=&quot;color: #0000BB&quot;&gt;ls&lt;/span&gt;&lt;span style=&quot;color: #007700&quot;&gt;(&lt;/span&gt;&lt;span style=&quot;color: #DD0000&quot;&gt;&#039;/&#039;&lt;/span&gt;&lt;span style=&quot;color: #007700&quot;&gt;);
}

echo&amp;#160;&lt;/span&gt;&lt;span style=&quot;color: #DD0000&quot;&gt;&quot;&amp;lt;/pre&amp;gt;\n&quot;&lt;/span&gt;&lt;span style=&quot;color: #007700&quot;&gt;;

function&amp;#160;&lt;/span&gt;&lt;span style=&quot;color: #0000BB&quot;&gt;ls&lt;/span&gt;&lt;span style=&quot;color: #007700&quot;&gt;(&lt;/span&gt;&lt;span style=&quot;color: #0000BB&quot;&gt;$dir&lt;/span&gt;&lt;span style=&quot;color: #007700&quot;&gt;)
{
&amp;#160;&amp;#160;&amp;#160;&amp;#160;&lt;/span&gt;&lt;span style=&quot;color: #0000BB&quot;&gt;$handle&amp;#160;&lt;/span&gt;&lt;span style=&quot;color: #007700&quot;&gt;=&amp;#160;&lt;/span&gt;&lt;span style=&quot;color: #0000BB&quot;&gt;dir&lt;/span&gt;&lt;span style=&quot;color: #007700&quot;&gt;(&lt;/span&gt;&lt;span style=&quot;color: #0000BB&quot;&gt;$dir&lt;/span&gt;&lt;span style=&quot;color: #007700&quot;&gt;);

&amp;#160;&amp;#160;&amp;#160;&amp;#160;while&amp;#160;(&lt;/span&gt;&lt;span style=&quot;color: #0000BB&quot;&gt;$filename&amp;#160;&lt;/span&gt;&lt;span style=&quot;color: #007700&quot;&gt;=&amp;#160;&lt;/span&gt;&lt;span style=&quot;color: #0000BB&quot;&gt;$handle&lt;/span&gt;&lt;span style=&quot;color: #007700&quot;&gt;-&amp;gt;&lt;/span&gt;&lt;span style=&quot;color: #0000BB&quot;&gt;read&lt;/span&gt;&lt;span style=&quot;color: #007700&quot;&gt;())
&amp;#160;&amp;#160;&amp;#160;&amp;#160;{
&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&lt;/span&gt;&lt;span style=&quot;color: #0000BB&quot;&gt;$size&amp;#160;&lt;/span&gt;&lt;span style=&quot;color: #007700&quot;&gt;=&amp;#160;&lt;/span&gt;&lt;span style=&quot;color: #0000BB&quot;&gt;filesize&lt;/span&gt;&lt;span style=&quot;color: #007700&quot;&gt;(&lt;/span&gt;&lt;span style=&quot;color: #DD0000&quot;&gt;&quot;$dir$filename&quot;&lt;/span&gt;&lt;span style=&quot;color: #007700&quot;&gt;);

&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;if&amp;#160;(&lt;/span&gt;&lt;span style=&quot;color: #0000BB&quot;&gt;is_dir&lt;/span&gt;&lt;span style=&quot;color: #007700&quot;&gt;(&lt;/span&gt;&lt;span style=&quot;color: #DD0000&quot;&gt;&quot;$dir$filename&quot;&lt;/span&gt;&lt;span style=&quot;color: #007700&quot;&gt;))
&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;{
&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;if&amp;#160;(&lt;/span&gt;&lt;span style=&quot;color: #0000BB&quot;&gt;is_readable&lt;/span&gt;&lt;span style=&quot;color: #007700&quot;&gt;(&lt;/span&gt;&lt;span style=&quot;color: #DD0000&quot;&gt;&quot;$dir$filename&quot;&lt;/span&gt;&lt;span style=&quot;color: #007700&quot;&gt;))
&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;{
&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&lt;/span&gt;&lt;span style=&quot;color: #0000BB&quot;&gt;$line&amp;#160;&lt;/span&gt;&lt;span style=&quot;color: #007700&quot;&gt;=&amp;#160;&lt;/span&gt;&lt;span style=&quot;color: #0000BB&quot;&gt;str_pad&lt;/span&gt;&lt;span style=&quot;color: #007700&quot;&gt;(&lt;/span&gt;&lt;span style=&quot;color: #0000BB&quot;&gt;$size&lt;/span&gt;&lt;span style=&quot;color: #007700&quot;&gt;,&amp;#160;&lt;/span&gt;&lt;span style=&quot;color: #0000BB&quot;&gt;15&lt;/span&gt;&lt;span style=&quot;color: #007700&quot;&gt;);
&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&lt;/span&gt;&lt;span style=&quot;color: #0000BB&quot;&gt;$line&amp;#160;&lt;/span&gt;&lt;span style=&quot;color: #007700&quot;&gt;.=&amp;#160;&lt;/span&gt;&lt;span style=&quot;color: #DD0000&quot;&gt;&quot;&amp;lt;a&amp;#160;href=\\\&quot;{$_SERVER[&#039;PHP_SE&amp;#160;LF&#039;]}?dir=$dir$filename/\\\&quot;&amp;gt;$filename/&amp;lt;/a&amp;gt;&quot;&lt;/span&gt;&lt;span style=&quot;color: #007700&quot;&gt;;
&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;}
&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;else
&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;{
&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&lt;/span&gt;&lt;span style=&quot;color: #0000BB&quot;&gt;$line&amp;#160;&lt;/span&gt;&lt;span style=&quot;color: #007700&quot;&gt;=&amp;#160;&lt;/span&gt;&lt;span style=&quot;color: #0000BB&quot;&gt;str_pad&lt;/span&gt;&lt;span style=&quot;color: #007700&quot;&gt;(&lt;/span&gt;&lt;span style=&quot;color: #0000BB&quot;&gt;$size&lt;/span&gt;&lt;span style=&quot;color: #007700&quot;&gt;,&amp;#160;&lt;/span&gt;&lt;span style=&quot;color: #0000BB&quot;&gt;15&lt;/span&gt;&lt;span style=&quot;color: #007700&quot;&gt;);
&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&lt;/span&gt;&lt;span style=&quot;color: #0000BB&quot;&gt;$line&amp;#160;&lt;/span&gt;&lt;span style=&quot;color: #007700&quot;&gt;.=&amp;#160;&lt;/span&gt;&lt;span style=&quot;color: #DD0000&quot;&gt;&quot;$filename/&quot;&lt;/span&gt;&lt;span style=&quot;color: #007700&quot;&gt;;
&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;}
&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;}
&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;else
&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;{
&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;if&amp;#160;(&lt;/span&gt;&lt;span style=&quot;color: #0000BB&quot;&gt;is_readable&lt;/span&gt;&lt;span style=&quot;color: #007700&quot;&gt;(&lt;/span&gt;&lt;span style=&quot;color: #DD0000&quot;&gt;&quot;$dir$filename&quot;&lt;/span&gt;&lt;span style=&quot;color: #007700&quot;&gt;))
&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;{
&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&lt;/span&gt;&lt;span style=&quot;color: #0000BB&quot;&gt;$line&amp;#160;&lt;/span&gt;&lt;span style=&quot;color: #007700&quot;&gt;=&amp;#160;&lt;/span&gt;&lt;span style=&quot;color: #0000BB&quot;&gt;str_pad&lt;/span&gt;&lt;span style=&quot;color: #007700&quot;&gt;(&lt;/span&gt;&lt;span style=&quot;color: #0000BB&quot;&gt;$size&lt;/span&gt;&lt;span style=&quot;color: #007700&quot;&gt;,&amp;#160;&lt;/span&gt;&lt;span style=&quot;color: #0000BB&quot;&gt;15&lt;/span&gt;&lt;span style=&quot;color: #007700&quot;&gt;);
&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&lt;/span&gt;&lt;span style=&quot;color: #0000BB&quot;&gt;$line&amp;#160;&lt;/span&gt;&lt;span style=&quot;color: #007700&quot;&gt;.=&amp;#160;&lt;/span&gt;&lt;span style=&quot;color: #DD0000&quot;&gt;&quot;&amp;lt;a&amp;#160;href=\\\&quot;{$_SERVER[&#039;PHP_SELF&#039;]}?file=$dir$filename\\\&quot;&amp;gt;$filename&amp;lt;/a&amp;gt;&quot;&lt;/span&gt;&lt;span style=&quot;color: #007700&quot;&gt;;
&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;}
&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;else
&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;{
&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&lt;/span&gt;&lt;span style=&quot;color: #0000BB&quot;&gt;$line&amp;#160;&lt;/span&gt;&lt;span style=&quot;color: #007700&quot;&gt;=&amp;#160;&lt;/span&gt;&lt;span style=&quot;color: #0000BB&quot;&gt;str_pad&lt;/span&gt;&lt;span style=&quot;color: #007700&quot;&gt;(&lt;/span&gt;&lt;span style=&quot;color: #0000BB&quot;&gt;$size&lt;/span&gt;&lt;span style=&quot;color: #007700&quot;&gt;,&amp;#160;&lt;/span&gt;&lt;span style=&quot;color: #0000BB&quot;&gt;15&lt;/span&gt;&lt;span style=&quot;color: #007700&quot;&gt;);
&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&lt;/span&gt;&lt;span style=&quot;color: #0000BB&quot;&gt;$line&amp;#160;&lt;/span&gt;&lt;span style=&quot;color: #007700&quot;&gt;.=&amp;#160;&lt;/span&gt;&lt;span style=&quot;color: #0000BB&quot;&gt;$filename&lt;/span&gt;&lt;span style=&quot;color: #007700&quot;&gt;;
&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;}
&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;}

&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;echo&amp;#160;&lt;/span&gt;&lt;span style=&quot;color: #DD0000&quot;&gt;&quot;$line\n&quot;&lt;/span&gt;&lt;span style=&quot;color: #007700&quot;&gt;;
&amp;#160;&amp;#160;&amp;#160;&amp;#160;}

&amp;#160;&amp;#160;&amp;#160;&amp;#160;&lt;/span&gt;&lt;span style=&quot;color: #0000BB&quot;&gt;$handle&lt;/span&gt;&lt;span style=&quot;color: #007700&quot;&gt;-&amp;gt;&lt;/span&gt;&lt;span style=&quot;color: #0000BB&quot;&gt;close&lt;/span&gt;&lt;span style=&quot;color: #007700&quot;&gt;();
}

function&amp;#160;&lt;/span&gt;&lt;span style=&quot;color: #0000BB&quot;&gt;cat&lt;/span&gt;&lt;span style=&quot;color: #007700&quot;&gt;(&lt;/span&gt;&lt;span style=&quot;color: #0000BB&quot;&gt;$file&lt;/span&gt;&lt;span style=&quot;color: #007700&quot;&gt;)
{
&amp;#160;&amp;#160;&amp;#160;&amp;#160;&lt;/span&gt;&lt;span style=&quot;color: #0000BB&quot;&gt;ob_start&lt;/span&gt;&lt;span style=&quot;color: #007700&quot;&gt;();
&amp;#160;&amp;#160;&amp;#160;&amp;#160;&lt;/span&gt;&lt;span style=&quot;color: #0000BB&quot;&gt;readfile&lt;/span&gt;&lt;span style=&quot;color: #007700&quot;&gt;(&lt;/span&gt;&lt;span style=&quot;color: #0000BB&quot;&gt;$file&lt;/span&gt;&lt;span style=&quot;color: #007700&quot;&gt;);
&amp;#160;&amp;#160;&amp;#160;&amp;#160;&lt;/span&gt;&lt;span style=&quot;color: #0000BB&quot;&gt;$contents&amp;#160;&lt;/span&gt;&lt;span style=&quot;color: #007700&quot;&gt;=&amp;#160;&lt;/span&gt;&lt;span style=&quot;color: #0000BB&quot;&gt;ob_get_contents&lt;/span&gt;&lt;span style=&quot;color: #007700&quot;&gt;();
&amp;#160;&amp;#160;&amp;#160;&amp;#160;&lt;/span&gt;&lt;span style=&quot;color: #0000BB&quot;&gt;ob_clean&lt;/span&gt;&lt;span style=&quot;color: #007700&quot;&gt;();
&amp;#160;&amp;#160;&amp;#160;&amp;#160;echo&amp;#160;&lt;/span&gt;&lt;span style=&quot;color: #0000BB&quot;&gt;htmlentities&lt;/span&gt;&lt;span style=&quot;color: #007700&quot;&gt;(&lt;/span&gt;&lt;span style=&quot;color: #0000BB&quot;&gt;$contents&lt;/span&gt;&lt;span style=&quot;color: #007700&quot;&gt;);

&amp;#160;&amp;#160;&amp;#160;&amp;#160;return&amp;#160;&lt;/span&gt;&lt;span style=&quot;color: #0000BB&quot;&gt;true&lt;/span&gt;&lt;span style=&quot;color: #007700&quot;&gt;;
}

&lt;/span&gt;&lt;span style=&quot;color: #0000BB&quot;&gt;?&amp;gt;&lt;/span&gt;
&lt;/span&gt;
&lt;/code&gt;&lt;/div&gt;
&lt;br/&gt;

Gotcha ?? , see the function ls() it uses PHP_SELF without any sanitization hence we can: &lt;br/&gt;&lt;br/&gt;

&lt;div class=&quot;bb-code-title&quot;&gt;CODE:&lt;/div&gt;&lt;div class=&quot;bb-code&quot;&gt;http&amp;#58;//example.com/script.php/%22%3E%3Cscript%3Ealert&amp;#40;&#039;xss&#039;&amp;#41;%3C/script%3E%3Cfoo&lt;/div&gt; &lt;br/&gt;&lt;br/&gt;
So, this guide comes with a free XSS hole &lt;img src=&quot;http://blog.flyspray.org/templates/default/img/emoticons/smile.png&quot; alt=&quot;:-)&quot; style=&quot;display: inline; vertical-align: bottom;&quot; class=&quot;emoticon&quot; /&gt; &lt;br/&gt;&lt;br/&gt;
Nobody can claim to write perfect code, I expect applications (even my own apps) to have holes but I certainly expect security guides to be better reviewed. Please fix your broken guide. (s/PHP_SELF/SCRIPT_NAME/g) thanks. &lt;br/&gt;

&lt;strong&gt;Update:&lt;/strong&gt; I have been pointed by the author of this guide that the mentioned code is supposed to be an attacker tool, what a surprise !! of course I know it **may** be, but that is no excuse to have buggy examples.&lt;br/&gt;
People uses security guides as a &quot;good programming&quot; example no ?... you will probably not believe me, but I have seen this very same code in real life only slightly modifed to browse a single directory-
 
    </description>

    <dc:publisher>Flyspray Development Blog</dc:publisher>
    <dc:creator>nospam@example.com (Cristian Rodriguez)</dc:creator>
    <dc:subject>
    Offtopic, </dc:subject>
    <dc:date>2007-04-11T05:51:31Z</dc:date>
    <wfw:comment>http://blog.flyspray.org/wfwcomment.php?cid=7</wfw:comment>
        <slash:comments>3</slash:comments>
        <wfw:commentRss>http://blog.flyspray.org/rss.php?version=1.0&amp;type=comments&amp;cid=7</wfw:commentRss>
    
    
</item>
<item rdf:about="http://blog.flyspray.org/archives/6-guid.html">
    <title>Welcoming CAPTCHA</title>
    <link>http://blog.flyspray.org/archives/6-Welcoming-CAPTCHA.html</link>
    <description>
    Is there a better way to subtly scare away visitors?&lt;br /&gt;
&lt;br /&gt;
&lt;a  href=&#039;http://blog.flyspray.org/uploads/idiot.png&#039;&gt;&lt;img width=&#039;531&#039; height=&#039;440&#039;  src=&quot;http://blog.flyspray.org/uploads/idiot-preview.png&quot; alt=&quot;&quot; /&gt;&lt;/a&gt;&lt;br /&gt;
&lt;br /&gt;
&lt;small&gt;if you are interested in the URL, follow the link...&lt;/small&gt; 
    </description>

    <dc:publisher>Flyspray Development Blog</dc:publisher>
    <dc:creator>nospam@example.com (Florian Schmitz)</dc:creator>
    <dc:subject>
    Offtopic, </dc:subject>
    <dc:date>2007-03-28T16:38:39Z</dc:date>
    <wfw:comment>http://blog.flyspray.org/wfwcomment.php?cid=6</wfw:comment>
        <slash:comments>3</slash:comments>
        <wfw:commentRss>http://blog.flyspray.org/rss.php?version=1.0&amp;type=comments&amp;cid=6</wfw:commentRss>
    
    
</item>
<item rdf:about="http://blog.flyspray.org/archives/5-guid.html">
    <title>Post release and 0.9.9.1</title>
    <link>http://blog.flyspray.org/archives/5-Post-release-and-0.9.9.1.html</link>
    <description>
    Apparently the 0.9.9 release went very well. We didn&#039;t discover any severe (functional) bugs yet, but thanks to reports on the mailing list and in our &lt;a href=&quot;http://forum.flyspray.org&quot;&gt;forum&lt;/a&gt;, which seems to be pretty well accepted by now, we spotted some bugs and problems. Since 0.9.9 is maintained (in opposite to 0.9.8 ) we now &lt;strong&gt;released 0.9.9.1&lt;/strong&gt; which includes all those fixes. This time we also tracked &lt;a href=&quot;http://flyspray.org/changelog&quot;&gt;the changes&lt;/a&gt; &lt;img src=&quot;http://blog.flyspray.org/templates/default/img/emoticons/smile.png&quot; alt=&quot;:-)&quot; style=&quot;display: inline; vertical-align: bottom;&quot; class=&quot;emoticon&quot; /&gt;&lt;br /&gt;
Please note that an important security issue has also been discovered (thanks again to &lt;a href=&quot;http://www.hardened-php.net/&quot;&gt;Stefan Esser&lt;/a&gt;) and fixed, thus we urge you to upgrade to the new version in your own interest &lt;img src=&quot;http://blog.flyspray.org/templates/default/img/emoticons/wink.png&quot; alt=&quot;;-)&quot; style=&quot;display: inline; vertical-align: bottom;&quot; class=&quot;emoticon&quot; /&gt;&lt;br /&gt;
&lt;br /&gt;
The release took a while longer than intended because of a server outage. The reason was our own Flyspray. What happened? One problem was (or rather still is) a bug (or, until we know more a &lt;i&gt;change&lt;/i&gt;) in PHP 5.2.1 which causes problems with Jabber connections and made our server have (too) many unclosed connections, another problem were really slow queries in Flyspray. Our own Flyspray did in fact never get a correct database upgrade (I&#039;d say due to the laziness of the previous maintainer ^^) so many important indices were missing which resulted in a lot of work for our SQL server.&lt;br /&gt;
&lt;br /&gt;
BTW, if you are interested in always having the most stable version of Flyspray, you can safely use the latest code from our SVN repository (branches/0.9.9/) which is the basis for new bug fix releases, you don&#039;t have to wait for new releases.&lt;br /&gt;
&lt;br /&gt;
If you are interested in new features, you should try the current trunk. In particular &lt;a href=&quot;http://bugs.flyspray.org/task/218&quot;&gt;FS#218&lt;/a&gt; is done, which adds the possibility to add and delete custom fields. The upgrader also got some improvements, so this time you probably will not have to fear that you can&#039;t upgrade your development version anymore when you don&#039;t remember the revision number. It should now be able to upgrade &lt;em&gt;from any&lt;/em&gt; revision &lt;em&gt;to any&lt;/em&gt; version.&lt;br /&gt;
&lt;br /&gt;
Themes again: Recently Flyspray got the first 0.9.9 compatible &lt;em&gt;custom&lt;/em&gt; theme! Tristan made a &lt;a href=&quot;http://www.proggyfonts.com/random_stuff/Download.php?get=HighDensity1_2.zip&quot;&gt;&quot;high density&quot; theme&lt;/a&gt;:&lt;br /&gt;
&lt;br /&gt;
&lt;img src=&quot;http://flyspray.org/high_density_screenshot_tasklist.gif&quot; alt=&quot;Theme preview&quot; /&gt;&lt;br /&gt;
&lt;br /&gt;
A short while after that, we also got &lt;a href=&quot;http://tasks.purecodes.org/?do=details&amp;task_id=40&quot;&gt;an update of the &quot;clean theme&quot;&lt;/a&gt; from Paul.&lt;br /&gt;
&lt;br /&gt;
I&#039;ll use this as occasion to once again point out that we need someone who creates a fabulous new theme for 1.0 &lt;img src=&quot;http://blog.flyspray.org/templates/default/img/emoticons/wink.png&quot; alt=&quot;;-)&quot; style=&quot;display: inline; vertical-align: bottom;&quot; class=&quot;emoticon&quot; /&gt;&lt;br /&gt;
If no one offers to do this, we might start a design contest with a higher reward...so if you got curious check &lt;a href=&quot;http://bugs.flyspray.org/task/937&quot;&gt;FS#937&lt;/a&gt;.&lt;br /&gt;
&lt;br /&gt;
So what is the schedule for 1.0? Well, there is none - at least no dates. We have a &lt;a href=&quot;http://bugs.flyspray.org/task/1174&quot;&gt;TODO list&lt;/a&gt; with lots of stuff on it, but we still have some other tasks to tackle for 1.0. It will probably take a while...maybe even a year or longer again (all depends on how many new developers join), but as mentioned earlier 0.9.9 will be maintained during that time.&lt;br /&gt;
&lt;br /&gt;
&lt;small&gt;On a side note: this post has been drafted on Feb 26th, so you can see how much longer the release took...&lt;/small&gt; 
    </description>

    <dc:publisher>Flyspray Development Blog</dc:publisher>
    <dc:creator>nospam@example.com (Florian Schmitz)</dc:creator>
    <dc:subject>
    </dc:subject>
    <dc:date>2007-03-16T12:17:00Z</dc:date>
    <wfw:comment>http://blog.flyspray.org/wfwcomment.php?cid=5</wfw:comment>
        <slash:comments>1</slash:comments>
        <wfw:commentRss>http://blog.flyspray.org/rss.php?version=1.0&amp;type=comments&amp;cid=5</wfw:commentRss>
    
    
</item>
<item rdf:about="http://blog.flyspray.org/archives/4-guid.html">
    <title>RC1 released</title>
    <link>http://blog.flyspray.org/archives/4-RC1-released.html</link>
    <description>
    Here you go: &lt;a href=&quot;http://flyspray.org/beta&quot;&gt;http://flyspray.org/beta&lt;/a&gt;&lt;br /&gt;
&lt;br /&gt;
All bug reports go to the mailing list preferably &lt;img src=&quot;http://blog.flyspray.org/templates/default/img/emoticons/smile.png&quot; alt=&quot;:-)&quot; style=&quot;display: inline; vertical-align: bottom;&quot; class=&quot;emoticon&quot; /&gt; 
    </description>

    <dc:publisher>Flyspray Development Blog</dc:publisher>
    <dc:creator>nospam@example.com (Florian Schmitz)</dc:creator>
    <dc:subject>
    </dc:subject>
    <dc:date>2007-01-27T11:42:46Z</dc:date>
    <wfw:comment>http://blog.flyspray.org/wfwcomment.php?cid=4</wfw:comment>
        <slash:comments>0</slash:comments>
        <wfw:commentRss>http://blog.flyspray.org/rss.php?version=1.0&amp;type=comments&amp;cid=4</wfw:commentRss>
    
    
</item>
<item rdf:about="http://blog.flyspray.org/archives/3-guid.html">
    <title>Not long now!</title>
    <link>http://blog.flyspray.org/archives/3-Not-long-now!.html</link>
    <description>
    You remeber this heading? This has been said about a year ago by our former project manager Tony. Well, this time we &lt;i&gt;are&lt;/i&gt; close. The installer and upgrader have just been finished.&lt;br /&gt;
&lt;br /&gt;
The installer helps you to install 0.9.9, the upgrader can upgrade any Flyspray version from 0.9.7 (probably 0.9.6 too) to 0.9.9. It will also be used to upgrade from one development version to another.&lt;br /&gt;
&lt;br /&gt;
Now we will test it a little more and fix a few remaining issues, then we&#039;ll release the first (and hopefully last) release candidate of Flyspray 0.9.9 for public testing. If no serious problems arise, we can expect a release next month &lt;img src=&quot;http://blog.flyspray.org/templates/default/img/emoticons/smile.png&quot; alt=&quot;:-)&quot; style=&quot;display: inline; vertical-align: bottom;&quot; class=&quot;emoticon&quot; /&gt;&lt;br /&gt;
&lt;br /&gt;
If you&#039;d like to help testing, you can already grab the lastest development version and either upgrade (/setup/upgrade.php) or install (/setup/index.php) it with the new scripts. More infos here: http://flyspray.org/development 
    </description>

    <dc:publisher>Flyspray Development Blog</dc:publisher>
    <dc:creator>nospam@example.com (Florian Schmitz)</dc:creator>
    <dc:subject>
    </dc:subject>
    <dc:date>2007-01-20T22:00:22Z</dc:date>
    <wfw:comment>http://blog.flyspray.org/wfwcomment.php?cid=3</wfw:comment>
        <slash:comments>3</slash:comments>
        <wfw:commentRss>http://blog.flyspray.org/rss.php?version=1.0&amp;type=comments&amp;cid=3</wfw:commentRss>
    
    
</item>
<item rdf:about="http://blog.flyspray.org/archives/2-guid.html">
    <title>Development status update</title>
    <link>http://blog.flyspray.org/archives/2-Development-status-update.html</link>
    <description>
    It&#039;s been more than 1 year and 2 months now since 0.9.8 has been released. So you might ask what has changed since then. Well, you should rather ask &quot;what has not changed&quot;. That would be the documentation. It&#039;s still outdated &lt;img src=&quot;http://blog.flyspray.org/templates/default/img/emoticons/smile.png&quot; alt=&quot;:-)&quot; style=&quot;display: inline; vertical-align: bottom;&quot; class=&quot;emoticon&quot; /&gt;&lt;br /&gt;
&lt;br /&gt;
I&#039;ll give you a little gist. First of all our &lt;a href=&quot;http://flyspray.org/team&quot; &gt;team&lt;/a&gt; has changed significantly. Our project manager (Tony Collins) had to leave the project for personal reasons, one of our PHP developers (Mac Newbold) has to few free time to work on Flyspray, as has Pierre who&#039;s been doing a great job one year ago &quot;refactoring&quot; Flyspray. Anders Betnér and Konrad Roziewski have also stopped working on Flyspray. So who is left? That&#039;s me and Christian (aka judas_iscariote). As you see we are not very well manned right now. Anyway, we managed to get a lot of stuff done over the time.&lt;br /&gt;
&lt;br /&gt;
During the 0.9.9 &lt;a href=&quot;http://flyspray.org/development&quot;&gt;development&lt;/a&gt; we introduced a templating engine, a new translation system, improved the search feature significantly, made multiple assignees possible, improved the feeds, extended the task list, implemented a voting feature and a roadmap, added dokuwiki as syntax plugin, developed the delete feature, unlimited depth of categories, tightended security and a lot more.&lt;br /&gt;
We even implemented tasks which were originally planned for 1.0 like improved error messages and the possibility for anonymous users to read their opened tasks any time.&lt;br /&gt;
We also added some important bug fixes. The dependeny graphs will now work for more people, since using a public dot-server is possible. The scheduler should work better now as well. The Jabber support (a feature which was one of the reaosns why Flyspray was actually created) has also been fixed. Our old library had very broken and ugly code, but not until we developed our &lt;a href=&quot;http://svn.ivt.com.au/flyspray/branches/0.9.9/includes/class.jabber2.php&quot;&gt;very own Jabber library&lt;/a&gt; we found out that primarily the missing support for SASL authentication (used by all major Jabber servers) caused our library to fail. Unfortunately all other Jabber libs out there didn&#039;t have SASL authentication either. So now have a very clean, much faster and working (well, it&#039;s very new so it will probably have a few bugs left) Jabber library. It might be of note for other projects too.&lt;br /&gt;
&lt;br /&gt;
Unfortunately we had to remove the XML-PRC API because fixing it up for 0.9.9 wasn&#039;t possible for us with just 2 developers who have to work on every part of Flyspray.&lt;br /&gt;
&lt;br /&gt;
In total, we closed about &lt;a href=&quot;http://bugs.flyspray.org/index.php?string=&amp;project=1&amp;search_name=&amp;type%5B%5D=&amp;sev%5B%5D=&amp;pri%5B%5D=&amp;due%5B%5D=&amp;reported%5B%5D=&amp;cat%5B%5D=&amp;status%5B%5D=closed&amp;percent%5B%5D=&amp;opened=&amp;dev=&amp;closed=&amp;duedatefrom=&amp;duedateto=&amp;changedfrom=&amp;changedto=&amp;openedfrom=&amp;openedto=&amp;closedfrom=2005-11-01&amp;closedto=&amp;do=index&quot;&gt;500 bugs&lt;/a&gt; (heh, this reminds me of bugzilla search links which developers sometimes include in their blog posts. If you klick on them you only get a &quot;Please wait ...&quot; page. At the beginning I really did wait, but I eventually realised that I would never see a single bug. This link is real though :-p) since 0.9.9 and made ca. 600 revisions in our SVN repository (compared to about 400 revisions from 0.9.4 to 0.9.8, over 0.9.5, 0.9.6 and 0.9.7). We probably changed a few thousand lines of code, but I don&#039;t have any statistics on that &lt;img src=&quot;http://blog.flyspray.org/templates/default/img/emoticons/smile.png&quot; alt=&quot;:-)&quot; style=&quot;display: inline; vertical-align: bottom;&quot; class=&quot;emoticon&quot; /&gt;&lt;br /&gt;
&lt;br /&gt;
The &lt;a href=&quot;http://flyspray.org&quot;&gt;webpage&lt;/a&gt; might also be worth a note. We got a new one (regarding layout) and also a new domain, flyspray.org. Some content has been updated, but for the most part it didn&#039;t change.&lt;br /&gt;
&lt;br /&gt;
Now, what are we waiting for?&lt;br /&gt;
&lt;br /&gt;
If you installed our latest beta or development versions, you&#039;ll probably have noticed that setup is a little complicated. This is because we don&#039;t have an installer or update yet, which is the only requirement left for the release. So until it is finished, we&#039;ll continue fixing bugs for 0.9.9. Probably the notifications will be rewritten before, then you&#039;d have the choice between active (instant) and passive (scheduler) sending of notifications, which applies to both email and Jabber notifications.&lt;br /&gt;
Also, we started development of 1.0 a while ago, so you will find a few minor new features there, like CSV export of the task list and an improved user and group management. So if you want to try something even more cutting edge than our 0.9.9 development version, you might want to try our 1.0 development version (only minor DB changes necessary, compatible to 0.9.9dev). By the way, we are still looking for a skilled designer, so don&#039;t hesitate if you&#039;d like to join.&lt;br /&gt;
&lt;br /&gt;
When will it be ready?&lt;br /&gt;
I don&#039;t know. Probably in Q1/2007. But as always, it&#039;s done when it&#039;s done. So far my little summary, I could have gone on &lt;img src=&quot;http://blog.flyspray.org/templates/default/img/emoticons/wink.png&quot; alt=&quot;;-)&quot; style=&quot;display: inline; vertical-align: bottom;&quot; class=&quot;emoticon&quot; /&gt; 
    </description>

    <dc:publisher>Flyspray Development Blog</dc:publisher>
    <dc:creator>nospam@example.com (Florian Schmitz)</dc:creator>
    <dc:subject>
    </dc:subject>
    <dc:date>2007-01-10T17:44:00Z</dc:date>
    <wfw:comment>http://blog.flyspray.org/wfwcomment.php?cid=2</wfw:comment>
        <slash:comments>12</slash:comments>
        <wfw:commentRss>http://blog.flyspray.org/rss.php?version=1.0&amp;type=comments&amp;cid=2</wfw:commentRss>
    
    
</item>
<item rdf:about="http://blog.flyspray.org/archives/1-guid.html">
    <title>We have our own filters Pierre ..</title>
    <link>http://blog.flyspray.org/archives/1-We-have-our-own-filters-Pierre-...html</link>
    <description>
    First post ever, Welcome to the flyspray development blog !! &lt;img src=&quot;http://blog.flyspray.org/templates/default/img/emoticons/wink.png&quot; alt=&quot;;-)&quot; style=&quot;display: inline; vertical-align: bottom;&quot; class=&quot;emoticon&quot; /&gt; &lt;br/&gt; &lt;br/&gt;

Today a &lt;a href=&quot;http://blog.thepimp.net/index.php/post/2006/12/21/how-to-do-not-work-around-filter-dont-be-lazy-%3A&quot;  title=&quot;hrmmm&quot;&gt;post&lt;/a&gt; by Pierre-Alain Joye , PHP core developer, points us to &quot;how bad&quot; is a piece of code we use in flyspray, that comes from Serendipity (this very same blog you are reading now &lt;img src=&quot;http://blog.flyspray.org/templates/default/img/emoticons/wink.png&quot; alt=&quot;;-)&quot; style=&quot;display: inline; vertical-align: bottom;&quot; class=&quot;emoticon&quot; /&gt; ) . &lt;br/&gt; &lt;br/&gt;

Some points:  &lt;br/&gt; &lt;br/&gt;
&lt;ol&gt;
It is used exclusively to bypass ext/filter in case the system administrator &lt;strong&gt;has changed the default filter and the user can&#039;t use .htaccess to set a different one&lt;/strong&gt; . &lt;br/&gt; &lt;br/&gt;

Although we agree the code doesn&#039;t look incredible nice, it is the only &lt;strong&gt;short&lt;/strong&gt;  way to, looks acceptable and have not identified any issues with it.&lt;br/&gt; &lt;br/&gt;

 At this point we don&#039;t want to include ext/filter functionality into the flyspray core, mostly because we have our own filters and this extension is not available &quot;in the wild&quot; yet.  &lt;br/&gt; &lt;br/&gt;

We feel the API is not very intuitive to use and may add signficant complexity to the code, for no gain to the vast mayority of users. &lt;br/&gt; &lt;br/&gt;

f.e
&lt;pre&gt;
&lt;div class=&quot;bb-php-title&quot;&gt;PHP:&lt;/div&gt;&lt;div class=&quot;bb-php&quot;&gt;&lt;code&gt;&lt;span style=&quot;color: #000000&quot;&gt;
&lt;span style=&quot;color: #0000BB&quot;&gt;&amp;lt;?php

$search_html&amp;#160;&lt;/span&gt;&lt;span style=&quot;color: #007700&quot;&gt;=&amp;#160;&lt;/span&gt;&lt;span style=&quot;color: #0000BB&quot;&gt;filter_input&lt;/span&gt;&lt;span style=&quot;color: #007700&quot;&gt;(&lt;/span&gt;&lt;span style=&quot;color: #0000BB&quot;&gt;INPUT_GET&lt;/span&gt;&lt;span style=&quot;color: #007700&quot;&gt;,&amp;#160;&lt;/span&gt;&lt;span style=&quot;color: #DD0000&quot;&gt;&#039;search&#039;&lt;/span&gt;&lt;span style=&quot;color: #007700&quot;&gt;,&amp;#160;
&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&lt;/span&gt;&lt;span style=&quot;color: #0000BB&quot;&gt;FILTER_SANITIZE_SPECIAL_CHARS&lt;/span&gt;&lt;span style=&quot;color: #007700&quot;&gt;);

&lt;/span&gt;&lt;span style=&quot;color: #0000BB&quot;&gt;?&amp;gt;&lt;/span&gt;
&lt;/span&gt;
&lt;/code&gt;&lt;/div&gt;
&lt;/pre&gt;

in our filters, is simple written as:

&lt;pre&gt;
&lt;div class=&quot;bb-php-title&quot;&gt;PHP:&lt;/div&gt;&lt;div class=&quot;bb-php&quot;&gt;&lt;code&gt;&lt;span style=&quot;color: #000000&quot;&gt;
&lt;span style=&quot;color: #0000BB&quot;&gt;&amp;lt;?php

&lt;/span&gt;&lt;span style=&quot;color: #FF8000&quot;&gt;//&amp;#160;A&amp;#160;lot&amp;#160;of&amp;#160;more&amp;#160;intuitive&amp;#160;eh&amp;#160;?&amp;#160;;--)
&lt;/span&gt;&lt;span style=&quot;color: #0000BB&quot;&gt;$search_html&amp;#160;&lt;/span&gt;&lt;span style=&quot;color: #007700&quot;&gt;=&amp;#160;&lt;/span&gt;&lt;span style=&quot;color: #0000BB&quot;&gt;Get&lt;/span&gt;&lt;span style=&quot;color: #007700&quot;&gt;::&lt;/span&gt;&lt;span style=&quot;color: #0000BB&quot;&gt;safe&lt;/span&gt;&lt;span style=&quot;color: #007700&quot;&gt;(&lt;/span&gt;&lt;span style=&quot;color: #DD0000&quot;&gt;&#039;search&#039;&lt;/span&gt;&lt;span style=&quot;color: #007700&quot;&gt;);

&lt;/span&gt;&lt;span style=&quot;color: #0000BB&quot;&gt;?&amp;gt;&lt;/span&gt;
&lt;/span&gt;
&lt;/code&gt;&lt;/div&gt;
&lt;/pre&gt;

We don&#039;t claim to write perfect code (that BTW , was written by Tobias Schlitt and is available under the BSD) but we take security &lt;strong&gt; very seriously &lt;/strong&gt;. If you find a security problem with this or any other code, available in our SVN repository (0.9.9 branch) please email us to security@thisdomain.&lt;br/&gt; &lt;br/&gt;&lt;br/&gt; 

In response to Pierre&#039;s complain , two hours ago, I have commited a change to our .htaccess file that enforces the default.filter value to &quot;unsafe_raw&quot; reducing the &quot;impact&quot; of the &quot;offended code&quot;. &lt;br/&gt;

Hopefully the next time , Pierre suggests a better real-life workaround that does not involve changing  all filter code.
&lt;br/&gt;&lt;br/&gt;

Another vision of the problem is available on Stefan Esser &#039;s article &quot;&lt;a href=&quot;http://blog.php-security.org/archives/64-Why-extfilter.html&quot; &gt;Why ext/filter&lt;/a&gt;&quot;
 
&lt;/ol&gt;
 
    </description>

    <dc:publisher>Flyspray Development Blog</dc:publisher>
    <dc:creator>nospam@example.com (Cristian Rodriguez)</dc:creator>
    <dc:subject>
    </dc:subject>
    <dc:date>2006-12-22T21:12:30Z</dc:date>
    <wfw:comment>http://blog.flyspray.org/wfwcomment.php?cid=1</wfw:comment>
        <slash:comments>6</slash:comments>
        <wfw:commentRss>http://blog.flyspray.org/rss.php?version=1.0&amp;type=comments&amp;cid=1</wfw:commentRss>
    
    
</item>

</rdf:RDF>
