item構造体

memcachedのitem構造体って任意サイズのデータを入れるために後ろの方が可変長になってて、マクロでアクセスしてるっぽいんだけど、まとめるとこんな感じに使ってるようだ。

[header|(cas)|key|suffix|data]

headerは普通にit->nsuffixのようにアクセス出来る固定長のデータ。
casはit->it_flagsにITEM_CASが立っている時のみ使用されるCASオペレーション用のフィールドっぽい。
keyはキー名。
suffixは、snprintf(suffix, 40, " %d %d\r\n", flags, nbytes - 2)で作られる文字列なんだけど、どこで使ってるんだろう。
dataはこのitemのデータ部。