<?xml version="1.0" encoding="utf-8"?>
<rss version="2.0"><channel><title>c / Drkcore</title><link>http://blog.kzfmix.com/c</link><description>Programming, Music, Snowboarding</description><language>ja</language><lastBuildDate>Mon, 02 Jan 2012 08:22:40 +0919</lastBuildDate><item><title>cでパケットキャプチャを書いてみる</title><link>http://blog.kzfmix.com/entry/1325457483</link><description>&lt;p&gt;&lt;p&gt;&lt;div class="awsxom"&gt;
    &lt;a href="http://www.amazon.co.jp/exec/obidos/ASIN/4774147451/ref=nosim/kaerutyuuihou-22"&gt;
    &lt;img src="http://ecx.images-amazon.com/images/I/51VqNMNcENL._SL160_.jpg" align="left" hspace="5" border="0" alt="ProductName" class="image" /&gt;
    &lt;strong&gt;ルーター自作でわかるパケットの流れ&lt;/strong&gt;&lt;/a&gt;&lt;br /&gt;
    小俣　光之&lt;br /&gt;
    技術評論社 / 1974円 ( 2011-07-09 )&lt;br /&gt;
    &lt;br /&gt;
    &lt;br clear="all" /&gt;
    &lt;/div&gt;&lt;/p&gt;&lt;/p&gt;
&lt;p&gt;同じようなコードの繰り返しで途中で飽きてきたが写経をやり遂げて、パケットキャプチャが動いたらちょっと嬉しい。&lt;/p&gt;
&lt;p&gt;チェックサムの計算のしかた&lt;/p&gt;
&lt;blockquote&gt;
&lt;p&gt;対象となるパケットに対して、16ビットごとの1の補数和ををとり、さらにその1の補数をとる&lt;/p&gt;
&lt;/blockquote&gt;
&lt;p&gt;となっているんだが、なんでコレでうまくいくのか理解できていない&lt;/p&gt;
&lt;div class="codehilite"&gt;&lt;pre&gt;&lt;span class="n"&gt;sum&lt;/span&gt; &lt;span class="o"&gt;=&lt;/span&gt; &lt;span class="mi"&gt;0&lt;/span&gt;&lt;span class="p"&gt;;&lt;/span&gt;
&lt;span class="n"&gt;ptr&lt;/span&gt; &lt;span class="o"&gt;=&lt;/span&gt; &lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="n"&gt;u_int16_t&lt;/span&gt; &lt;span class="o"&gt;*&lt;/span&gt;&lt;span class="p"&gt;)&lt;/span&gt; &lt;span class="n"&gt;data&lt;/span&gt;&lt;span class="p"&gt;;&lt;/span&gt;
&lt;span class="k"&gt;for&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="n"&gt;c&lt;/span&gt; &lt;span class="o"&gt;=&lt;/span&gt; &lt;span class="n"&gt;len&lt;/span&gt;&lt;span class="p"&gt;;&lt;/span&gt; &lt;span class="n"&gt;c&lt;/span&gt; &lt;span class="o"&gt;&amp;gt;&lt;/span&gt; &lt;span class="mi"&gt;1&lt;/span&gt;&lt;span class="p"&gt;;&lt;/span&gt; &lt;span class="n"&gt;c&lt;/span&gt; &lt;span class="o"&gt;-=&lt;/span&gt; &lt;span class="mi"&gt;2&lt;/span&gt;&lt;span class="p"&gt;){&lt;/span&gt;
  &lt;span class="n"&gt;sum&lt;/span&gt; &lt;span class="o"&gt;+=&lt;/span&gt; &lt;span class="n"&gt;ptr&lt;/span&gt;&lt;span class="p"&gt;;&lt;/span&gt;
  &lt;span class="k"&gt;if&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="n"&gt;sum&lt;/span&gt; &lt;span class="o"&gt;&amp;amp;&lt;/span&gt; &lt;span class="mh"&gt;0x80000000&lt;/span&gt;&lt;span class="p"&gt;){&lt;/span&gt;
    &lt;span class="n"&gt;sum&lt;/span&gt; &lt;span class="o"&gt;=&lt;/span&gt; &lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="n"&gt;sum&lt;/span&gt; &lt;span class="o"&gt;&amp;amp;&lt;/span&gt; &lt;span class="mh"&gt;0xFFFF&lt;/span&gt;&lt;span class="p"&gt;)&lt;/span&gt; &lt;span class="o"&gt;+&lt;/span&gt; &lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="n"&gt;sum&lt;/span&gt; &lt;span class="o"&gt;&amp;gt;&amp;gt;&lt;/span&gt; &lt;span class="mi"&gt;16&lt;/span&gt;&lt;span class="p"&gt;);&lt;/span&gt;
  &lt;span class="p"&gt;}&lt;/span&gt;
  &lt;span class="n"&gt;ptr&lt;/span&gt;&lt;span class="o"&gt;++&lt;/span&gt;&lt;span class="p"&gt;;&lt;/span&gt;
&lt;span class="p"&gt;}&lt;/span&gt;
&lt;/pre&gt;&lt;/div&gt;</description><pubDate>Mon, 02 Jan 2012 08:22:40 +0919</pubDate><category>c</category></item><item><title>プログラミングの力を生み出す本</title><link>http://blog.kzfmix.com/entry/1235739965</link><description>&lt;p&gt;アセンブラの本で、最近&lt;a href="http://blog.kzfmix.com/tag/OS%E8%87%AA%E4%BD%9C%E5%85%A5%E9%96%80"&gt;OS自作入門を読んでいる&lt;/a&gt;ので非常に気になった。&lt;/p&gt;

&lt;p&gt;&lt;div class="awsxom"&gt;
&lt;a href="http://www.amazon.co.jp/exec/obidos/ASIN/4274132072/ref=nosim/kaerutyuuihou-22"&gt;
&lt;img src="http://ecx.images-amazon.com/images/I/412BKEJ1A6L._SL160_.jpg" align="left" hspace="5" border="0" alt="ProductName" class="image" /&gt;
&lt;strong&gt;プログラミングの力を生み出す本―インテルCPUのGNUユーザへ&lt;/strong&gt;&lt;/a&gt;&lt;br /&gt;
橋本 洋志,松永 俊雄,冨永 和人,石井 千春 &lt;br /&gt;
オーム社 / ￥ 2,625 ()&lt;br /&gt;
&lt;br /&gt;
&lt;br clear="all" /&gt;
&lt;/div&gt;&lt;/p&gt;

&lt;p&gt;&lt;a href="http://www.amazon.co.jp/exec/obidos/ASIN/4274131343/ref=nosim/kaerutyuuihou-22"&gt;改訂版じゃなければ&lt;/a&gt;1円だった。&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;買いですよ奥さん!&lt;/strong&gt;みたいなオーラが漂ってたので即買い。&lt;/p&gt;

&lt;p&gt;来たらそのうち読む。&lt;/p&gt;
</description><pubDate>Fri, 27 Feb 2009 22:13:26 +0919</pubDate><category>as</category><category>c</category></item><item><title>再帰呼出</title><link>http://blog.kzfmix.com/entry/1181466857</link><description>&lt;p&gt;&lt;img alt="再帰呼出" src="http://www.kzfmix.com/images/blosxom/saiki.png" /&gt;&lt;/p&gt;
&lt;p&gt;&lt;a href="http://www.muzie.co.jp/cgi-bin/artist.cgi?id=a052360"&gt;聴いた&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;もうちょい低音強めのほうが好み。&lt;/p&gt;</description><pubDate>Sun, 10 Jun 2007 18:14:17 +0919</pubDate><category>music</category><category>c</category></item></channel></rss>