реклама на сайте
подробности

 
 
> recvfrom() в visualDSP++ 5 не ловит пакеты
sse
сообщение Feb 19 2008, 11:16
Сообщение #1


Участник
*

Группа: Участник
Сообщений: 20
Регистрация: 8-03-05
Из: Россия, Суздаль
Пользователь №: 3 159



Железо: BF537 EZ-KIT LITE
проект в visualDSP++ 5

открыл два (передача и прием) RAW ICMP сокета
заполнил 2 sockaddr_in
создал ICMP ping пакет, посчитал CS и по кнопке отсылаю на комп по sendto(). Комп шлет ответ.
В while() до нажатия кнопки крутится recvfrom(), но на ответ на свой ping и на ping с компа возвращ 0.

В чем проблема может быть?
вот краткий исходник:

int socket_fd, socket_fd_tx;
struct sockaddr_in sa,ra;

#define SENDER_PORT_NUM 0
#define SENDER_IP_ADDR "192.168.10.70"
#define RECEIVER_PORT_NUM 0
#define RECEIVER_IP_ADDR "192.168.10.32"

memset(&sa, 0, sizeof(struct sockaddr_in));
sa.sin_family = AF_INET;
sa.sin_addr.s_addr = inet_addr(SENDER_IP_ADDR);
sa.sin_port = htons(SENDER_PORT_NUM);

memset(&ra, 0, sizeof(struct sockaddr_in));
ra.sin_family = AF_INET;
ra.sin_addr.s_addr = inet_addr(RECEIVER_IP_ADDR);
ra.sin_port = htons(RECEIVER_PORT_NUM);

socket_fd = socket(AF_INET, SOCK_RAW, 1);
socket_fd_tx = socket(AF_INET, SOCK_RAW, 1);

while(1)
{
while( ) //ждем кнопку
rec_data = recvfrom(socket_fd,(void*)&data_rec_buffer,100,0,(struct sockaddr*)&sa, &len);

send_data = sendto(socket_fd_tx, data_buffer,sizeof(icmp_pack),0,(struct sockaddr*)&ra,sizeof(ra));
}


--------------------
Serj
Go to the top of the page
 
+Quote Post



Reply to this topicStart new topic
1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0

 


RSS Текстовая версия Сейчас: 21st July 2025 - 12:44
Рейтинг@Mail.ru


Страница сгенерированна за 0.01329 секунд с 7
ELECTRONIX ©2004-2016