소켓 연결 상대측에 에러 유발하기
글쓴이: Rica / 작성시간: 화, 2007/12/25 - 11:38오전
윈도우용 데스크탑 웹서버를 만들고 있습니다. 연결 목록을 관리자가 보고 강제로 끊어버리는 기능을 지원하는데, 이때 클라이언트측 (즉 웹브라우저지요) 에서는, 파일이 일부만 받아진 채로, 마치 전송이 완료된 것처럼 보이게 됩니다. 대신에, 클라이언트가 에러를 감지하고 다운로드를 중단하게 하고 싶습니다.
사용해 본 강제 종료 방법은 SO_LINGER, opt=0 으로 소켓 옵션을 설정한 뒤 closesocket() 을 부르는 거였습니다.
헤더에 파일 크기는 보내고 있는데, 거기까지 전송이 완료되지 않은 채로 접속이 끊겨도 웹브라우저가 그것을 에러로 인식하진 않더군요.
뭔가 참 사람들이 많이 안 겪는 상황인 듯해서 검색하기 어렵네요. 꼭 MS쪽이 아니더라도 비슷한 상황을 해결해 보신 분의 조언 부탁드립니다.
Forums:
댓글 달기