RAW SOCKET에 대해 질문이 있습니다. ^^
      글쓴이: dong1036 / 작성시간: 화, 2008/07/22 - 1:28오후    
  
  sock = socket(PF_INET, SOCK_RAW, IPPROTO_TCP);
    if(sock == INVALID_SOCKET) {
        errorHandling("socket() error");
    }
 
    setsockopt(sock,  IPPROTO_IP, IP_HDRINCL, (char *)&flag, sizeof(flag));
    addr_len = sizeof(servAddr);
 
    memset(&servAddr, 0x00, sizeof(servAddr));
 
    while(1) {
        memset(&servAddr, 0x00, sizeof(servAddr));
        memset(packet, 0x00, 1024);
        readLen = recvfrom(sock, packet, BUFSIZE, 0, (SOCKADDR *)&servAddr, &addr_len);
        if(readLen == SOCKET_ERROR) {
            errorHandling("recvfrom() errror");
        }
        ip = (IPHDR *)packet;
        printf("src ip : %s\n", inet_ntoa(ip->source));
        printf("dst ip : %s\n", inet_ntoa(ip->dest));
    }간단하게 컴퓨터로 날라오는 패킷들을 캡쳐해서 IP보여주는 것인데요 ㅡ,.ㅡ
계속 recvfrom 에서 에러가 나네요 ㅡ,.ㅡ ㅋ
리눅스에서는 잘 받아지던데 ... 윈도우로 포팅할려니깐.. 안되네요...
참고로 OS는 윈도우 XP 프로페셔날입니다.
답변 부탁드립니다.
Forums: 


에러내용도
에러가 발생후 GetLastError의 값을 올려주시기 바랍니다.
10022 입니다.
10022 입니다.
음 냐냐~
msdn 에 보시면 모든 error code에 관한 문서가 있습니다.
목록입니다. 첫페이지라고 할 수 있겠죠.
http://msdn.microsoft.com/en-us/library/ms681381(VS.85).aspx
10022 WSAEINVAL An invalid argument was supplied.
WSAEINVAL 이라..
윈도우 曰 "이유를 가르쳐주지 못하겠다" ㅋㅋ
수고하시길~
===============
Vas Rel Por
===============
Vas Rel Por
댓글 달기