<?xml version="1.0" encoding="UTF-8"?>
<?xml-stylesheet type="text/css" href="/stylesheets/rss.css"?>
<rss version="2.0" xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:trackback="http://madskills.com/public/xml/rss/module/trackback/">
  <channel>
    <title>bert hubert finally blogs comments</title>
    <link>http://blog.netherlabs.nl/</link>
    <language>en-us</language>
    <ttl>40</ttl>
    <description>code, musings and more</description>
    <item>
      <title>"PowerDNS 2.9.22 released, RFC 5452 assigned!" by Lennie</title>
      <description>sorry, that was a typo, it's: &lt;a href="http://www.EDNS-ping.org" rel="nofollow"&gt;www.EDNS-ping.org&lt;/a&gt;
</description>
      <pubDate>Sun, 08 Feb 2009 16:32:12 +0100</pubDate>
      <guid isPermaLink="false">urn:uuid:1c0390e8-a538-42ee-89bf-9359ceb0d9c8</guid>
      <link>http://blog.netherlabs.nl/articles/2009/01/27/powerdns-2-9-22-released-rfc-5452-assigned#comment-142602</link>
    </item>
    <item>
      <title>"PowerDNS 2.9.22 released, RFC 5452 assigned!" by Lennie</title>
      <description>And he keeps on going with &lt;a href="http://www.ENDS-ping.org" rel="nofollow"&gt;www.ENDS-ping.org&lt;/a&gt; as the next draft he's working on</description>
      <pubDate>Sun, 08 Feb 2009 16:27:57 +0100</pubDate>
      <guid isPermaLink="false">urn:uuid:f1396313-9735-4ac3-ba24-6876a114c733</guid>
      <link>http://blog.netherlabs.nl/articles/2009/01/27/powerdns-2-9-22-released-rfc-5452-assigned#comment-142601</link>
    </item>
    <item>
      <title>"PowerDNS 2.9.22 released, RFC 5452 assigned!" by Sean Leach</title>
      <description>Congrats Bert!</description>
      <pubDate>Wed, 28 Jan 2009 03:32:38 +0100</pubDate>
      <guid isPermaLink="false">urn:uuid:67c64242-a42e-4355-ad9b-c846a96a272c</guid>
      <link>http://blog.netherlabs.nl/articles/2009/01/27/powerdns-2-9-22-released-rfc-5452-assigned#comment-142600</link>
    </item>
    <item>
      <title>"The ultimate SO_LINGER page, or: why is my tcp not reliable" by Eelco</title>
      <description>I'm no expert at all, but "The best advice is to send length information, and to have the remote program actively acknowledge that all data was received." will this not create the possibility of malicious 'socket attacks' in which the server get overflown with length faulty requests?

 </description>
      <pubDate>Sat, 24 Jan 2009 15:34:26 +0100</pubDate>
      <guid isPermaLink="false">urn:uuid:80c29508-9c67-498a-8f96-6ef8ddf103d3</guid>
      <link>http://blog.netherlabs.nl/articles/2009/01/18/the-ultimate-so_linger-page-or-why-is-my-tcp-not-reliable#comment-142598</link>
    </item>
    <item>
      <title>"The ultimate SO_LINGER page, or: why is my tcp not reliable" by NG</title>
      <description>wow, you just discovered why TCP is not on top of the IP network stack... gratz! :)
</description>
      <pubDate>Fri, 23 Jan 2009 14:34:39 +0100</pubDate>
      <guid isPermaLink="false">urn:uuid:7d481eee-0208-484c-87b4-293bf261b026</guid>
      <link>http://blog.netherlabs.nl/articles/2009/01/18/the-ultimate-so_linger-page-or-why-is-my-tcp-not-reliable#comment-142597</link>
    </item>
    <item>
      <title>"The ultimate SO_LINGER page, or: why is my tcp not reliable" by piotr</title>
      <description>Very interesting article, although this is not so surprising if you have carefully read W. Richard Stevens' UNIX Network Programming. I didn't know about  SIOCOUTQ though. In my distributed search engine project I used O_NONBLOCK with epoll and length information in my protocol. I don't use shutdown, since I find reading 0, 0 or reading the required lengths of the messages is sufficient.

All my IO is asyncrhonous and first I read a predefined size with the minimum record size which has lenght information about record's data,
then to read data:

// async read handler
res = read (m_fd, readptr, readleft);
if (res  0) {
    if (errno != EAGAIN) {
        on_error ();
        return;
    } else {
        return;
    }
} else if (res == 0) {
    on_eof ();
    return;
} else {
    readptr += res;
    readleft -= res;
    stats_read_cnt +=res;
}
if (readleft == 0) {
// process data
...
}

And of course, these records should be acknowledged (and checksummed even) if you want the sender to be sure they were recieved.

In the end programming asyncrhonously is very tricky and takes a lot of effort, but when got right it's very effective and easier to debug than threadhell.</description>
      <pubDate>Wed, 21 Jan 2009 17:31:08 +0100</pubDate>
      <guid isPermaLink="false">urn:uuid:2994ff5a-3487-4f02-bba3-28622f6e6a33</guid>
      <link>http://blog.netherlabs.nl/articles/2009/01/18/the-ultimate-so_linger-page-or-why-is-my-tcp-not-reliable#comment-142596</link>
    </item>
    <item>
      <title>"Calculating the chance of spoofing an agile source port randomised resolver" by Lennie</title>
      <description>Getting them to apply patches is hard ? I still see a lot of queries on our authoritive servers with a source-port of 53. Even a large dutch access-provider.</description>
      <pubDate>Sun, 17 Aug 2008 15:46:13 +0200</pubDate>
      <guid isPermaLink="false">urn:uuid:dc1f9b77-5d43-4ffd-93d5-bb795f6ff57a</guid>
      <link>http://blog.netherlabs.nl/articles/2008/08/05/calculating-the-chance-of-spoofing-an-agile-source-port-randomised-resolver#comment-142591</link>
    </item>
    <item>
      <title>"Some thoughts on the recent DNS vulnerability" by SIGLAZY</title>
      <description>About DNSSEC, oh well, this is another "good solution to the wrong problem".

(DNSSEC uses DNS protocol to propagate keys through DNS caches &amp;&amp; DNS caches are vulnerables to cache poisoning = DNS keys may be forged ...)

and

If DJB was not listened at _on this specific point_  it is not only because he has a big social interface problem but also because IETF DNS-EXT WG people were... how to say? deaf or stupid.
</description>
      <pubDate>Thu, 17 Jul 2008 09:13:56 +0200</pubDate>
      <guid isPermaLink="false">urn:uuid:7ecbcbe3-2b1f-4775-9900-0c50aa56d976</guid>
      <link>http://blog.netherlabs.nl/articles/2008/07/09/some-thoughts-on-the-recent-dns-vulnerability#comment-142589</link>
    </item>
    <item>
      <title>"Some thoughts on the recent DNS vulnerability" by grin</title>
      <description>But it should be noted that djb is a real &lt;i&gt;PITA&lt;/i&gt;, so if there's something he try to push it's very probable that people try to avoid it. And him. Don't get me wrong: this is all about behaviour and not about his programming abilities at all. 
&lt;br /&gt;&lt;br /&gt;

About DNSSEC, oh well, would be nice to have seen it finalised and implemented. </description>
      <pubDate>Thu, 10 Jul 2008 13:45:20 +0200</pubDate>
      <guid isPermaLink="false">urn:uuid:6619294f-3c7d-443d-a920-51208e0e9018</guid>
      <link>http://blog.netherlabs.nl/articles/2008/07/09/some-thoughts-on-the-recent-dns-vulnerability#comment-142588</link>
    </item>
    <item>
      <title>"Some thoughts on the recent DNS vulnerability" by bert hubert</title>
      <description>Roy - many of the points you raise are valid. But if people would have implemented this years ago, we would be having a totally different discussion right now.

And I sincerely hope that this vulnerability opens people's eyes and that we can fix DNS to be secure enough.
</description>
      <pubDate>Thu, 10 Jul 2008 13:15:09 +0200</pubDate>
      <guid isPermaLink="false">urn:uuid:c16cfdfd-5379-4879-b9ed-db2a3ceba397</guid>
      <link>http://blog.netherlabs.nl/articles/2008/07/09/some-thoughts-on-the-recent-dns-vulnerability#comment-142587</link>
    </item>
  </channel>
</rss>
