본문 바로가기

전체 글143

PF_INET와 AF_INET 소켓 프로그래밍을 할 때 socket()함수에서는 PF_INET으로 ipv4 프로토콜을 표현하고 struct sockaddr_in 의 sin_family에는 AF_INET으로 ipv4를 표현했었습니다. 그런데 PF_INET와 AF_INET의 차이는 무엇일까요? socket(PF_INET, ~~, ~~); struct sockaddr_in의 sin_family멤버에 = AF_INET 리눅스에서 아래와 같은 프로그램을 만들어서 실행해보면 #include #include int main() { printf("PF_INET : %d \n", PF_INET); printf("AF_INET : %d \n", AF_INET); } PF_INET와 AF_INET 둘다 2라는 상수를 가지는 것을 확인 할 수 있습니다. .. 2012. 4. 30.
헤더파일 중복 방지( inclusion guard / #pragma once ) 대형 소프트웨어 개발 프로젝드들에서 소스파일이나 헤더파일에서 헤더 파일을 중복해서 포함시키는 경우 컴파일 에러가 발생하게 됩니다. 이 문제를 해결하기 위한 방법으로 1. inclusion guard 2. #pragma once 를 사용할 수 있습니다. 1. inclusion guard #ifndef AAA_H #define AAA_H ..(헤더 파일 내용).. #endif 만약 AAA가 정의되어 있지않으면(현재 헤더파일이 한번도 포함되지 않았을 경우) AAA를 정의하고(헤더파일이 한번 포함됨을 정의) 헤더 파일을 포함하게 됩니다. 2. #pragma once #pragma once ...(헤더 파일 내용)... #pragma once는 한 번만 include 하라는 옵션입니다. 첫 번째 방법은 한번 in.. 2012. 4. 23.
cin.fail cin.clear cin.ignore cin.fail() -> i/o 에러가 발생하면 true cin.clear() -> cin객체의 내부 상태 플래그 초기화 cin.ignore(무시 문자 최대길이, 종료 문자) -> 현재 버퍼안에 있는 내용 무시 - cin.fail()이 true인 경우 - 1) #include using namespace std; void main() { int test; cout > test; cout 2012. 4. 20.
해커의 등급 해커 등급 길버트 아라베디언 기법의 해커분류 1. 레이머(Lamer) 해커가 되고 싶긴하나 경험도 없고, 컴퓨터 관련 지식도 많지않은 해커. 네트워크나 운영체제에 대한 지식도 없다. 와레즈사이트에서 트로이안 목마프로그램이나 DoS공격 툴등을 내려받아 이용하면서 실력있는 해커인것처럼 생각한다. 컴퓨터에 지식이 없는채 단순히 해커를 동경하는 사람. 2. 스크립트 키디(Script Kiddie) 네트워크와 운영체제에 대한 약간의 기술적인 지식을 갖고 있는 해커. 다만 GUI환경의 운영체제에만 익숙하며 공격 기법도 기존에 잘 알려진 툴 이용하여 인터넷사용자들을 괴롭히는것이 전부. 3. 디벨롭트 키디(Developed Kiddie) 대부분의 해킹 기법을 알고 있다. 해킹 수행 코드가 적용될수 있는 취약점을 발견할.. 2012. 4. 12.