본문 바로가기

[Linux]C언어 Gateway 정보 가져오기 출처 : http://www.linuxquestions.org/questions/linux-networking-3/howto-find-gateway-address-through-code-397078/Gateway의 정보는 ioctl을 사용하지 않고, socket의 send(), recv()함수를 이용하여, 구할 수 있다.#include #include #include #include #include #include #include #include #define BUFSIZE 8192 struct route_info{struct in_addr dstAddr;struct in_addr srcAddr;struct in_addr gateWay;char ifName[IF_NAMESIZE];}; int readNl.. 더보기
[Linux] ioctls request 목록 '/usr/include/bits/ioctls.h'에 정의되어 있다. /* Routing table calls. */#define SIOCADDRT 0x890B /* add routing table entry */#define SIOCDELRT 0x890C /* delete routing table entry */#define SIOCRTMSG 0x890D /* call to routing system */ /* Socket configuration controls. */#define SIOCGIFNAME 0x8910 /* get iface name */#define SIOCSIFLINK 0x8911 /* set iface channel */#define SIOCGIFCONF 0x8912 /* get i.. 더보기
[Linux] ioctl 출처 : http://blog.naver.com/jmlee402/120005131921 3.1절. ioctl에 대해서 ioctl()은 입출력(Input/Oupt)장치의 제어(Contol)을 위해서 사용되는 함수로 장치에 접근해서 장치 정보를 얻어오거나 장치의 값을 변경하기 위한 용도로 사용된다. 여기에서는 네트워크 장치중 일부분의 정보를 가져오는 것만 다루고 있지만, 터미널, 소켓, cdrom, floppy, 프린터, 사운드카드.. 등 모든 입출력과 관련된 장치를 제어할 수 있다. 예를 들어 여러분이 오디오 CD를 재생하는 애플리케이션을 제작하길 원한다면 ioctl()을 이용해서 장치를 제어하고 CD에 있는 데이터를 읽어와야 한다. 다음은 ioctl()함수 선언이다. #include int ioctl(i.. 더보기
[Linux] C작성 IP, Broadcast, Subnetmask, MAC address, NIC 가져오기 헤더파일 -- 이 중 사용하지 않는 것도 있으나, 잊어버림 #include #include #include #include #include #include #include #include #include #include #include #include #include //debug define#define DEBUG_LEVEL_3 #ifdef DEBUG_LEVEL_#define dp(n, fmt, args...)if (DEBUG_LEVEL_ sin_addr));close(sock);return 1;} Mac address 정보 가져오기int getMacAddress(char *mac){int sock;struct ifreq ifr;char mac_adr[18] = {0,};sock = socket(AF_.. 더보기
Visual Studio 소스파일에 매칭되는 헤더파일 찾기 매크로 Alt + o에 할당해 놓고 사용하면 편하다..VisualStudio 매크로 탐색기를 실행한 후, '새 매크로 프로젝트'를 이용하여, 매크로를 만든다. ' if this file is a .cpp then open up the .h ' or vice versa Sub OpenPartnerFile() Dim filename As String Dim partnerFilename As String filename = DTE.ActiveDocument.FullName If (filename.EndsWith(".h")) Then partnerFilename = filename.Substring(0, filename.Length() - 2) + ".cpp" End If If (filename.EndsWith(".c.. 더보기