/** * Helper routine used by both crNetConnectToServer() and crNetAcceptClient(). * Call the protocol-specific Init() and Connection() functions. * */ static void InitConnection(CRConnection *conn, const char *protocol, unsigned int mtu) { if (!crStrcmp(protocol, "devnull")) { crDevnullInit(cr_net.recv_list, cr_net.close_list, mtu); crDevnullConnection(conn); } else if (!crStrcmp(protocol, "file")) { cr_net.use_file++; crFileInit(cr_net.recv_list, cr_net.close_list, mtu); crFileConnection(conn); } else if (!crStrcmp(protocol, "swapfile")) { /* file with byte-swapping */ cr_net.use_file++; crFileInit(cr_net.recv_list, cr_net.close_list, mtu); crFileConnection(conn); conn->swap = 1; } else if (!crStrcmp(protocol, "tcpip")) { cr_net.use_tcpip++; crTCPIPInit(cr_net.recv_list, cr_net.close_list, mtu); crTCPIPConnection(conn); } else if (!crStrcmp(protocol, "udptcpip")) { cr_net.use_udp++; crUDPTCPIPInit(cr_net.recv_list, cr_net.close_list, mtu); crUDPTCPIPConnection(conn); } else { crError("Unknown protocol: \"%s\"", protocol); } }
/** * Helper routine used by both crNetConnectToServer() and crNetAcceptClient(). * Call the protocol-specific Init() and Connection() functions. * */ static void InitConnection(CRConnection *conn, const char *protocol, unsigned int mtu #if defined(VBOX_WITH_CRHGSMI) && defined(IN_GUEST) , struct VBOXUHGSMI *pHgsmi #endif ) { if (!crStrcmp(protocol, "devnull")) { crDevnullInit(cr_net.recv_list, cr_net.close_list, mtu); crDevnullConnection(conn); } else if (!crStrcmp(protocol, "file")) { cr_net.use_file++; crFileInit(cr_net.recv_list, cr_net.close_list, mtu); crFileConnection(conn); } else if (!crStrcmp(protocol, "swapfile")) { /* file with byte-swapping */ cr_net.use_file++; crFileInit(cr_net.recv_list, cr_net.close_list, mtu); crFileConnection(conn); conn->swap = 1; } else if (!crStrcmp(protocol, "tcpip")) { cr_net.use_tcpip++; crTCPIPInit(cr_net.recv_list, cr_net.close_list, mtu); crTCPIPConnection(conn); } else if (!crStrcmp(protocol, "udptcpip")) { cr_net.use_udp++; crUDPTCPIPInit(cr_net.recv_list, cr_net.close_list, mtu); crUDPTCPIPConnection(conn); } #ifdef VBOX_WITH_HGCM else if (!crStrcmp(protocol, "vboxhgcm")) { cr_net.use_hgcm++; crVBoxHGCMInit(cr_net.recv_list, cr_net.close_list, mtu); crVBoxHGCMConnection(conn #if defined(VBOX_WITH_CRHGSMI) && defined(IN_GUEST) , pHgsmi #endif ); } #endif #ifdef GM_SUPPORT else if (!crStrcmp(protocol, "gm")) { cr_net.use_gm++; crGmInit(cr_net.recv_list, cr_net.close_list, mtu); crGmConnection(conn); } #endif #ifdef TEAC_SUPPORT else if (!crStrcmp(protocol, "quadrics")) { cr_net.use_teac++; crTeacInit(cr_net.recv_list, cr_net.close_list, mtu); crTeacConnection(conn); } #endif #ifdef TCSCOMM_SUPPORT else if (!crStrcmp(protocol, "quadrics-tcscomm")) { cr_net.use_tcscomm++; crTcscommInit(cr_net.recv_list, cr_net.close_list, mtu); crTcscommConnection(conn); } #endif #ifdef SDP_SUPPORT else if (!crStrcmp(protocol, "sdp")) { cr_net.use_sdp++; crSDPInit(cr_net.recv_list, cr_net.close_list, mtu); crSDPConnection(conn); } #endif #ifdef IB_SUPPORT else if (!crStrcmp(protocol, "ib")) { cr_net.use_ib++; crDebug("Calling crIBInit()"); crIBInit(cr_net.recv_list, cr_net.close_list, mtu); crIBConnection(conn); crDebug("Done Calling crIBInit()"); } #endif #ifdef HP_MULTICAST_SUPPORT else if (!crStrcmp(protocol, "hpmc")) { cr_net.use_hpmc++; crHPMCInit(cr_net.recv_list, cr_net.close_list, mtu); crHPMCConnection(conn); } #endif else { crError("Unknown protocol: \"%s\"", protocol); } }