/*
 *
 * dmtl.c
 *
 * Debug monitor transport layer
 *
 */

#include "dmp.h"

BOOL DmStartRmtSession(ULONG ulIPAddr)
{
    /* We need to establish the connection before we can successfully spin off
     * the debug thread */
	SOCKET sockMain;
	SOCKET sockPoll;
	struct sockaddr_in addr;

    _asm int 3

	addr.sin_family = AF_INET;
	addr.sin_addr.s_addr = htonl(ulIPAddr);

	/* Connect the main thread */
	sockMain = socket(AF_INET, SOCK_STREAM, IPPROTO_TCP);
    if(INVALID_SOCKET == sockMain) {
        _asm int 3
        return FALSE;
    }
	addr.sin_port = htons(0x801);
	if(0 != connect(sockMain, (struct sockaddr *)&addr, sizeof addr)) {
        _asm int 3
		closesocket(sockMain);
		return FALSE;
	}

	/* Connect the poll thread */
	sockPoll = socket(AF_INET, SOCK_STREAM, IPPROTO_TCP);
	if(INVALID_SOCKET == sockPoll) {
        _asm int 3
	    closesocket(sockMain);
	    return FALSE;
	}
	addr.sin_port = htons(0x802);
	if(0 != connect(sockPoll, (struct sockaddr *)&addr, sizeof addr)) {
        _asm int 3
		closesocket(sockPoll);
		closesocket(sockMain);
		return FALSE;
	}

	return TRUE;
}

void DmListenForRmtSession(void)
{
}
