recvfromで第3引数の受信バイト数を実際に溜まってるデータ数より
小さい値にすると受信したデータ数じゃなくてSOCKET_ERRORが返ってきます。
これちゃんと受信したバイト数って返してくれないんですか?
受信バッファにはちゃんと受信した分のデータは入ってるのですが