Задачка на интервью. Пакеты.
? ?????? ???????, ??????? ? ??? ???????????? ?? ??????????? ??????? ? ????? ???????? ??? ???, ???????. ???? ???????????? ???????:
char get_byte();
??????? ?????? ???? ?? ??????? ??????????. ??? ?????????????, ??????? ????, ???? ?? ?????? ????????? ????. ?? ?????????? ???????????? ?????? ?????????? ???????: ??? ????? ?????, ?? ???????? ??????? ??????. ????? ?????? ???????? ? ???? ????????? ??????, ?.?. ?? ????? ??? ?????.
????? ???????? ??????? recv, ?????????? ????????? ?????:
size_t recv(char* buf, size_t size);
? buf ?????????? ????????? ?? ?????, ???? ?????? ???? ??????? ????? (?????????, ??????? ?????????). size ????????? ?????? ????? ??????. ??????? ?????????? ?????? ????? ?????? (??????? ?????????) ???? ????? ??????? ???????. ? ?????? ?????? ???????????? 0.
??????????, ?? ???????? ???????????? ?????, ?? ????? ?????. ?????????? ??????? ????? ???? ?????? ? ?? ??????????? ?????. ??????? recv ?????????? ?? ??????? ???????. ?????? ??????? ???. ?????????? ???.
???????? ?? ????? ?????????? ??? ??? ???? ??????? ??????? ?? ?????, ??? ?????? ?? ???? ????????????. ?? ??????? ???? ?? ????????? ???? ???????.
Cross-posted from blog.not-a-kernel-guy.com.