Нашел в opennet статью про это дело. Начал её курить. Что в исходниках - понимаю. Вернее, понимал, пока не дошел до общение с сетевыми девайсами Конструкции типа Код (Text): BPF_STMT(BPF_LD+BPF_H+BPF_ABS, 12), BPF_JUMP(BPF_JMP+BPF_JEQ+BPF_IMM, ETH_P_IP, 0, 8), BPF_STMT(BPF_LD+BPF_W+BPF_ABS, 26), BPF_JUMP(BPF_JMP+BPF_JEQ+BPF_IMM, 0, 0, 6), BPF_STMT(BPF_LD+BPF_B+BPF_ABS, 23), BPF_JUMP(BPF_JMP+BPF_JEQ+BPF_IMM, IPPROTO_TCP, 0, 4), BPF_STMT(BPF_LDX+BPF_B+BPF_MSH, ETH_HLEN), BPF_STMT(BPF_LD+BPF_H+BPF_IND, ETH_HLEN), BPF_JUMP(BPF_JMP+BPF_JEQ+BPF_IMM, 0, 0, 1), BPF_STMT(BPF_RET+BPF_K,1500), BPF_STMT(BPF_RET+BPF_K,0), нифига мне не понятны. Мануалы для совсем тупых есть? Я даже либу почти создал... Ну, привел всю муть создания пакетного сокета к виду PacketSocket PS = createSocket (a); (описал 2 файла - Ethernet.h (там всякие typedef) и network_device.h). Дайте руководство по общению с сетевым девайсом!