The OpenNET Project / Index page

[ новости /+++ | форум | wiki | теги | ]

форумы  помощь  поиск  регистрация  майллист  ВХОД  слежка  RSS
"Проблемма с  SOCK_RAW"
Вариант для распечатки Архивированная нить - только для чтения! 
Пред. тема | След. тема 
Форумы Программирование под UNIX (Public)
Изначальное сообщение [Проследить за развитием треда]

"Проблемма с  SOCK_RAW"
Сообщение от Mihail emailИскать по авторуВ закладки on 07-Авг-02, 17:20  (MSK)
Следующий текст кода вызывает возмущение! При запуске программы смотрю Tcpdump и вижу следующую картину

tcpdump: listening on lo0
17:21:54.132477 127.0.0.1 > 127.0.0.1: icmp: echo request (ttl 64, id 5424, len
1044)

а при запуске Ping на 127.0.0.1

tcpdump: listening on lo0
17:23:07.147881 127.0.0.1 > 127.0.0.1: icmp: echo request (ttl 64, id 5651, len84)
17:23:07.147974 127.0.0.1 > 127.0.0.1: icmp: echo reply (ttl 64, id 5652,len 84)

Может кто нибудь объяснить почему я не получаю ответ (echo reply)????Программа подвисает на выполнении recv()
Заранее благодарен.

int main(void)
{
  int sockfd,i,hold;
  struct sockaddr_in to;
  struct icmp *icmp_h;
  char *buffer=(char *)calloc(1024,sizeof(char));

  sockfd = socket(AF_INET, SOCK_RAW, IPPROTO_ICMP);
hold=48*1024;
        (void)setsockopt(sockfd, SOL_SOCKET, SO_RCVBUF, (char *)&hold,
            sizeof(hold));
  icmp_h = (struct icmp*) buffer;
  bzero(icmp_h, sizeof(struct icmp));
  icmp_h->icmp_type = ICMP_ECHO;
  icmp_h->icmp_code = 0;
  icmp_h->icmp_id = 4242;
  icmp_h->icmp_seq = 0;

  bzero(&to,sizeof(to));
  to.sin_family=AF_INET;
  inet_pton(AF_INET,"127.0.0.1",&to.sin_addr);
  sendto(sockfd, buffer, 1024, 0,(struct sockaddr *) &to, sizeof(to));
  i=recv(sockfd, buffer, 1024, 0);
}

  Рекомендовать в FAQ | Cообщить модератору | Наверх

 Оглавление

Индекс форумов | Темы | Пред. тема | След. тема
Сообщения по теме

1. "RE: Проблемма с  SOCK_RAW"
Сообщение от Mihail emailИскать по авторуВ закладки on 08-Авг-02, 11:34  (MSK)
Спасибо надобность отпала! (Не правильно считал контрольную сумму:-))
  Рекомендовать в FAQ | Cообщить модератору | Наверх


Удалить

Индекс форумов | Темы | Пред. тема | След. тема
Пожалуйста, прежде чем написать сообщение, ознакомьтесь с данными рекомендациями.




Спонсоры:
PostgresPro
Inferno Solutions
Hosting by Hoster.ru
Хостинг:

Закладки на сайте
Проследить за страницей
Created 1996-2022 by Maxim Chirkov
Добавить, Поддержать, Вебмастеру