Original Post
I want to ask several question about duplicating socket for sharing across processes... here what I've done : 1.[process A] create shared socket : WSASocket() and Listen for connection/request 2.[process B] connect to socket on process A requesting for duplicate shared socket 3.[process A] invoke WSADuplicateSocket() and reply process B request with WSAPROTOCOL_INFO data 4.[process B] invoke WSASocket(...,WSAPROTOCOL_DATA) using protocol data from process A (now process B has shared socket) 5.[process A] terminate and socket is closed 6.[process C] connect to socket on process B requesting for duplicate socket 7.[process B] invoke WSADuplicateSocket() and reply process C request with WSAPROTOCOL_INFO data here on step 7, WSADuplicateSocket() return WSAEMFILE error, why is that? is it not possible to duplicate socket from duplicated socket ?