リングバッファ
usr.bin/telnet/ring.c 1.13 74 75 #define ring_decrement(d,a,c) (((a)-(c) >= (d)->bottom)? \ 76 (a)-(c) : (((a)-(c))-(d)->size)) 77
は、
74 75 #define ring_decrement(d,a,c) (((a)-(c) >= (d)->bottom)? \ 76 (a)-(c) : (((a)-(c))+(d)->size)) 77
じゃないかな。
(ring_decrement()を使っている)dosynch()が
ring->supply == ring->buttomのときに呼ばれるとやばいと思う。
(そんなタイミングで呼ばれるのかどうかよくわからんけど。)