[질문] socket함수의 통신 도메인을 지정하는 부분에 AF_SECURITY의 역할과 ptrace함수의 PTRACE_ATTACH의 역할???
안녕하세요 ~ 소스분석 중 두 매크로 상수가 도데체 어떠한 역할을 하는지 알 수 가 없어서 질문을 올립니다..
첫번째로 socket(AF_SECURITY, SOCK_STREAM, 1); 이렇게 되어 있는데여 ~ SOCK_STREAM과 1은 TCP 통신에 관련된
내용이잖아여~ 그런데 AF_SECURITY는 도데체 뭐죠?? 책과 인터넷 등에서 찾아보면 '보안 콜백 주소 패밀리'라고만
나와있고 어떠한 일을 하는지 어떠한 의미를 담고 있는지 자세한 설명이나 예가 없어 도무지 이해를 할 수 가 없습니다.
더군다나 소스분석 중 socket함수 부분에서 어떠한 리턴값도 받지 않고 위에서 처럼 딱 한 줄만 쓰고 아래 부분에는 다른
여러 코딩들이 들어가 있거든여 ~ AF_SECURITY의 역할에 대해 설명을 부탁드립니다.
그리고 두번째로 ptrace(PTRACE_ATTACH, victim, 0, 0) 이런 부분이 있어서 맨페이지를 참조하여 해석해본 결과
PID로 지정된 프로세스(여기 함수에서는 victim입니다.)에 부착시키고, 현재 프로세스의 "child"를 추적하도록 한다라고
결론을 내렸는데여~ 그럼 PID로 지정된 프로세스가 child 프로세스를 추적한다는 의미가 무엇을 의미하는지 모르겠고여~
ptrace(PTRACE_SYSCALL, victim, 0, 0)이란 부분이 있는데여 맨페이지를 찾아본 결과 중지된 자식 프로세스를 다시 시작
한다고만 되어있습니다. 그렇다면 여기서 중지 된 자식프로세스란 victim을 가리키는 건가여?? 아니면 현재 진행되고 있는
프로세스의 fork()를 통한 자식프로세스를 이야기 하는건가여?? 만약 그렇다면 PID의 인자로 victim은 왜 넣은거죠??
이번 소스 분석을 통해 시스템, 네트워크 프로그래밍에 대한 저의 부족함을 많이 느끼고 있습니다. 많은 프로그램밍 고수님
들의 도움을 부탁드립니다...
그럼 여기까지 긴 글을 읽어주셔서 정말 감사합니다 ~
댓글 달기