2011-03-19 4 views
1

SSL 소켓 (SSL 세션과 함께)을 다른 프로세스로 전달하려고합니다. 이것이 가능한가 ?OpenSSL 소켓을 다른 프로세스에 전달하는 방법

비 SSL 소켓 구현에서 WSADuplicateSocket (Windows API)을 사용하여 소켓 정보를 가져온 다음 다른 프로세스로 보내 중복 된 소켓을 만듭니다.

어떻게 SSL 소켓에서이 작업을 수행 할 수 있습니까? 중복 된 소켓을 만들고 첫 번째 프로세스에서 SSL 세션을 계속 진행할 수 있도록 두 번째 프로세스로 전달해야하는 정보는 무엇입니까? 소켓이 두 번째 프로세스로 전달되면 첫 번째 프로세스는 소켓 핸들을 닫습니다.

답변

2

아니요, 불가능합니다. 소켓은 OS 개체이므로 다른 프로세스에서 소켓 핸들을 복제 할 수 있습니다. 반면에 OpenSSL은 물리적 통신을 위해 사용하기로 결정한 연결 프레임 워크의 상단에있는 응용 프로그램 수준의 라이브러리입니다. 따라서 프로세스 경계를 ​​넘어서 공유 할 수 없으므로 원본 소켓에 연결된 SSL 구조와 상태 시스템을 복제 할 수 없습니다.

관련 문제