⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 mpdleft.cpp

📁 MPICH是MPI的重要研究,提供了一系列的接口函数,为并行计算的实现提供了编程环境.
💻 CPP
📖 第 1 页 / 共 3 页
字号:
	}	else	{	    // no host provided, send fail result	    GetStringOpt(p->pszIn, "src", pszHost);	    _snprintf(pszStr, MAX_CMD_LENGTH, "result src=%s dest=%s sock=%s result=-1", g_pszHost, pszHost, pszBfd);	    ContextWriteString(g_pRightContext, pszStr);	}    }    else if (strnicmp(p->pszIn, "stopforwarder ", 14) == 0)    {	char pszBfd[10];	GetStringOpt(p->pszIn, "sock", pszBfd);	if (GetStringOpt(p->pszIn, "host", pszHost))	{	    if ((stricmp(pszHost, g_pszHost) == 0) || (strcmp(pszHost, g_pszIP) == 0))	    {		char pszPort[10];		char pszAbort[10];		bool bAbort = true;		if (GetStringOpt(p->pszIn, "port", pszPort))		{		    if (GetStringOpt(p->pszIn, "abort", pszAbort))			bAbort = (stricmp(pszAbort, "yes") == 0);		    StopIOForwarder(atoi(pszPort), !bAbort);		}	    }	    else	    {		GetStringOpt(p->pszIn, "src", pszHost);		if ((stricmp(pszHost, g_pszHost) == 0) || (strcmp(pszHost, g_pszIP) == 0))		{		    char pszTry[10];		    char pszPort[10];		    char pszAbort[10];		    bool bAbort = true;		    if (GetStringOpt(p->pszIn, "port", pszPort))		    {			if (GetStringOpt(p->pszIn, "abort", pszAbort))			    bAbort = (stricmp(pszAbort, "yes") == 0);			if (!GetStringOpt(p->pszIn, "try", pszTry))			{			    GetStringOpt(p->pszIn, "host", pszHost);			    GetIPString(pszHost, pszHost);			    _snprintf(pszStr, MAX_CMD_LENGTH, "stopforwarder src=%s host=%s sock=%s try=2 port=%s", g_pszHost, pszHost, pszBfd, pszPort);			    if (!bAbort)			    {				strncat(pszStr, " abort=no", MAX_CMD_LENGTH - 1 - strlen(pszStr));			    }			    ContextWriteString(g_pRightContext, pszStr);			}		    }		}		else		{		    // forward command		    ContextWriteString(g_pRightContext, p->pszIn);		}	    }	}    }    else if (strnicmp(p->pszIn, "forwarders ", 11) == 0)    {	if (GetStringOpt(p->pszIn, "src", pszHost))	{	    if ((strcmp(pszHost, g_pszHost) == 0) || (strcmp(pszHost, g_pszIP) == 0))	    {		char pszBFD[10];		MPD_Context *pContext;				if (GetStringOpt(p->pszIn, "result", pszStr))		{		    // Chop off the trailing carriage return		    int nLength = strlen(pszStr);		    if (nLength > 2)		    {			if (pszStr[nLength-1] == '\r' || pszStr[nLength-1] == '\n')			    pszStr[nLength-1] = '\0';			if (pszStr[nLength-2] == '\r' || pszStr[nLength-2] == '\n')			    pszStr[nLength-2] = '\0';		    }		}		GetStringOpt(p->pszIn, "sock", pszBFD);		pContext = GetContext(atoi(pszBFD));		if (pContext != NULL)		{		    ContextWriteString(pContext, pszStr);		}		else		{		    err_printf("console context not found\n");		}	    }	    else	    {		strncpy(pszStr, p->pszIn, MAX_CMD_LENGTH);		pszStr[MAX_CMD_LENGTH-1] = '\0';		ConcatenateForwardersToString(pszStr);		ContextWriteString(g_pRightContext, pszStr);	    }	}	else	{	    err_printf("invalid forwarders command '%s' read\n", p->pszIn);	}    }    else if (strnicmp(p->pszIn, "killforwarders ", 15) == 0)    {	if (GetStringOpt(p->pszIn, "src", pszHost))	{	    AbortAllForwarders();	    if ((strcmp(pszHost, g_pszHost) != 0) && (strcmp(pszHost, g_pszIP) != 0))	    {		ContextWriteString(g_pRightContext, p->pszIn);	    }	}	else	{	    err_printf("invalid killforwarders command '%s' read\n", p->pszIn);	}    }    else if (strnicmp(p->pszIn, "createtmpfile ", 14) == 0)    {	char pszBfd[10];	bool bDelete = true;	GetStringOpt(p->pszIn, "sock", pszBfd);	if (GetStringOpt(p->pszIn, "delete", pszStr))	{	    bDelete = (stricmp(pszStr, "no") != 0);	}	if (GetStringOpt(p->pszIn, "host", pszHost))	{	    if ((stricmp(pszHost, g_pszHost) == 0) || (strcmp(pszHost, g_pszIP) == 0))	    {		char pszTemp[MAX_PATH];		CreateTmpFile(pszTemp, bDelete);		GetStringOpt(p->pszIn, "src", pszHost);		_snprintf(pszStr, MAX_CMD_LENGTH, "result src=%s dest=%s sock=%s result=%s", g_pszHost, pszHost, pszBfd, pszTemp);		ContextWriteString(g_pRightContext, pszStr);	    }	    else	    {		GetStringOpt(p->pszIn, "src", pszHost);		if ((stricmp(pszHost, g_pszHost) == 0) || (strcmp(pszHost, g_pszIP) == 0))		{		    char pszTry[10];		    if (!GetStringOpt(p->pszIn, "try", pszTry))		    {			GetStringOpt(p->pszIn, "host", pszHost);			GetIPString(pszHost, pszHost);			_snprintf(pszStr, MAX_CMD_LENGTH, "createtmpfile src=%s host=%s sock=%s try=2", g_pszHost, pszHost, pszBfd);			ContextWriteString(g_pRightContext, pszStr);		    }		    else		    {			// command went full circle, send fail result			_snprintf(pszStr, MAX_CMD_LENGTH, "result src=%s dest=%s sock=%s result=FAIL - bad hostname", g_pszHost, pszHost, pszBfd);			ContextWriteString(g_pRightContext, pszStr);		    }		}		else		{		    // forward command		    ContextWriteString(g_pRightContext, p->pszIn);		}	    }	}	else	{	    // no host provided, send fail result	    GetStringOpt(p->pszIn, "src", pszHost);	    _snprintf(pszStr, MAX_CMD_LENGTH, "result src=%s dest=%s sock=%s result=FAIL - no host provided", g_pszHost, pszHost, pszBfd);	    ContextWriteString(g_pRightContext, pszStr);	}    }    else if (strnicmp(p->pszIn, "deletetmpfile ", 14) == 0)    {	char pszBfd[10];	GetStringOpt(p->pszIn, "sock", pszBfd);	if (GetStringOpt(p->pszIn, "host", pszHost))	{	    if ((stricmp(pszHost, g_pszHost) == 0) || (strcmp(pszHost, g_pszIP) == 0))	    {		char pszTemp[MAX_PATH];		if (GetStringOpt(p->pszIn, "file", pszTemp))		{		    if (DeleteTmpFile(pszTemp))			strcpy(pszTemp, "SUCCESS");		    else		    {			int error = GetLastError();			if (error == 0)			    _snprintf(pszTemp, MAX_PATH, "FAIL - file not found in list of created tmp files");			else			    _snprintf(pszTemp, MAX_PATH, "FAIL - error %d", error);		    }		}		else		    strcpy(pszTemp, "FAIL - no filename provided");		GetStringOpt(p->pszIn, "src", pszHost);		_snprintf(pszStr, MAX_CMD_LENGTH, "result src=%s dest=%s sock=%s result=%s", g_pszHost, pszHost, pszBfd, pszTemp);		ContextWriteString(g_pRightContext, pszStr);	    }	    else	    {		GetStringOpt(p->pszIn, "src", pszHost);		if ((stricmp(pszHost, g_pszHost) == 0) || (strcmp(pszHost, g_pszIP) == 0))		{		    char pszTry[10];		    if (!GetStringOpt(p->pszIn, "try", pszTry))		    {			GetStringOpt(p->pszIn, "host", pszHost);			GetIPString(pszHost, pszHost);			_snprintf(pszStr, MAX_CMD_LENGTH, "deletetmpfile src=%s host=%s sock=%s try=2", g_pszHost, pszHost, pszBfd);			ContextWriteString(g_pRightContext, pszStr);		    }		    else		    {			// command went full circle, send fail result			_snprintf(pszStr, MAX_CMD_LENGTH, "result src=%s dest=%s sock=%s result=FAIL - bad hostname", g_pszHost, pszHost, pszBfd);			ContextWriteString(g_pRightContext, pszStr);		    }		}		else		{		    // forward command		    ContextWriteString(g_pRightContext, p->pszIn);		}	    }	}	else	{	    // no host provided, send fail result	    GetStringOpt(p->pszIn, "src", pszHost);	    _snprintf(pszStr, MAX_CMD_LENGTH, "result src=%s dest=%s sock=%s result=FAIL - no host provided", g_pszHost, pszHost, pszBfd);	    ContextWriteString(g_pRightContext, pszStr);	}    }    else if (strnicmp(p->pszIn, "mpich1readint ", 14) == 0)    {	char pszBfd[10];	char pszPid[10] = "0";	GetStringOpt(p->pszIn, "sock", pszBfd);	GetStringOpt(p->pszIn, "pid", pszPid);	if (GetStringOpt(p->pszIn, "host", pszHost))	{	    if ((stricmp(pszHost, g_pszHost) == 0) || (strcmp(pszHost, g_pszIP) == 0))	    {		char pszTemp[MAX_PATH];		if (GetStringOpt(p->pszIn, "file", pszTemp))		{		    int nPort, nError;		    nError = GetPortFromFile(pszTemp, atoi(pszPid), &nPort);		    if (nError == 0)			sprintf(pszTemp, "%d", nPort);		    else		    {			//sprintf(pszTemp, "FAIL - error %d", nError);			if (nError == -1)			{			    strcpy(pszTemp, "FAIL - timed out");			}			else if (nError == -2)			{			    strcpy(pszTemp, "FAIL - missing dll");			}			else if (nError == -3)			{			    _snprintf(pszTemp, MAX_PATH, "FAIL - process exited with code %d", nPort);			}			else			{			    Translate_Error(nError, pszTemp, "FAIL - ");			}		    }		}		else		    strcpy(pszTemp, "FAIL - no filename provided");		GetStringOpt(p->pszIn, "src", pszHost);		_snprintf(pszStr, MAX_CMD_LENGTH, "result src=%s dest=%s sock=%s result=%s", g_pszHost, pszHost, pszBfd, pszTemp);		ContextWriteString(g_pRightContext, pszStr);	    }	    else	    {		GetStringOpt(p->pszIn, "src", pszHost);		if ((stricmp(pszHost, g_pszHost) == 0) || (strcmp(pszHost, g_pszIP) == 0))		{		    char pszTry[10];		    char pszTemp[MAX_PATH];		    if (!GetStringOpt(p->pszIn, "try", pszTry))		    {			GetStringOpt(p->pszIn, "file", pszTemp);			GetStringOpt(p->pszIn, "host", pszHost);			GetIPString(pszHost, pszHost);			_snprintf(pszStr, MAX_CMD_LENGTH, "mpich1readint src=%s host=%s sock=%s try=2 pid=%s file=%s", g_pszHost, pszHost, pszBfd, pszPid, pszTemp);			ContextWriteString(g_pRightContext, pszStr);		    }		    else		    {			// command went full circle, send fail result			_snprintf(pszStr, MAX_CMD_LENGTH, "result src=%s dest=%s sock=%s result=FAIL - bad hostname", g_pszHost, pszHost, pszBfd);			ContextWriteString(g_pRightContext, pszStr);		    }		}		else		{		    // forward command		    ContextWriteString(g_pRightContext, p->pszIn);		}	    }	}	else	{	    // no host provided, send fail result	    GetStringOpt(p->pszIn, "src", pszHost);	    _snprintf(pszStr, MAX_CMD_LENGTH, "result src=%s dest=%s sock=%s result=FAIL - no host provided", g_pszHost, pszHost, pszBfd);	    ContextWriteString(g_pRightContext, pszStr);	}    }    else if (strnicmp(p->pszIn, "stat ", 5) == 0)    {	char pszBfd[10];	char pszParam[100];	GetStringOpt(p->pszIn, "sock", pszBfd);	GetStringOpt(p->pszIn, "param", pszParam);	if (GetStringOpt(p->pszIn, "host", pszHost))	{	    if ((stricmp(pszHost, g_pszHost) == 0) || (strcmp(pszHost, g_pszIP) == 0))	    {		_snprintf(pszStr, MAX_CMD_LENGTH, "result src=%s dest=%s sock=%s result=", g_pszHost, pszHost, pszBfd);		statMPD(pszParam, &pszStr[strlen(pszStr)], MAX_CMD_LENGTH - strlen(pszStr));		ContextWriteString(g_pRightContext, pszStr);	    }	    else	    {		GetStringOpt(p->pszIn, "src", pszHost);		if ((stricmp(pszHost, g_pszHost) == 0) || (strcmp(pszHost, g_pszIP) == 0))		{		    char pszTry[10];		    GetStringOpt(p->pszIn, "host", pszHost);		    if (!GetStringOpt(p->pszIn, "try", pszTry))		    {			if (GetStringOpt(p->pszIn, "param", pszParam))			{			    GetIPString(pszHost, pszHost);			    _snprintf(pszStr, MAX_CMD_LENGTH, "stat src=%s host=%s sock=%s try=2 param=%s", g_pszHost, pszHost, pszBfd, pszParam);			}			else			{			    _snprintf(pszStr, MAX_CMD_LENGTH, "result src=%s dest=%s sock=%s result=FAIL - no stat param specified", g_pszHost, g_pszHost, pszBfd);			}			ContextWriteString(g_pRightContext, pszStr);		    }		    else		    {			// command went full circle, send fail result			char pszBadHost[MAX_HOST_LENGTH];			GetStringOpt(p->pszIn, "host", pszBadHost);			_snprintf(pszStr, MAX_CMD_LENGTH, "result src=%s dest=%s sock=%s result=FAIL - host '%s' not in the ring", g_pszHost, pszHost, pszBfd, pszBadHost);			ContextWriteString(g_pRightContext, pszStr);		    }		}		else		{		    // forward command		    ContextWriteString(g_pRightContext, p->pszIn);		}	    }	}	else	{	    // no host provided, send fail result	    GetStringOpt(p->pszIn, "src", pszHost);	    _snprintf(pszStr, MAX_CMD_LENGTH, "result src=%s dest=%s sock=%s result=FAIL - no host provided", g_pszHost, pszHost, pszBfd);	    ContextWriteString(g_pRightContext, pszStr);	}    }    else if (strnicmp(p->pszIn, "freecached ", 11) == 0)    {	char pszBfd[10];	GetStringOpt(p->pszIn, "sock", pszBfd);	if (GetStringOpt(p->pszIn, "host", pszHost))	{	    if ((stricmp(pszHost, g_pszHost) == 0) || (strcmp(pszHost, g_pszIP) == 0))	    {		RemoveAllCachedUsers();		_snprintf(pszStr, MAX_CMD_LENGTH, "result src=%s dest=%s sock=%s result=SUCCESS", g_pszHost, pszHost, pszBfd);		ContextWriteString(g_pRightContext, pszStr);	    }	    else	    {		GetStringOpt(p->pszIn, "src", pszHost);		if ((stricmp(pszHost, g_pszHost) == 0) || (strcmp(pszHost, g_pszIP) == 0))		{		    char pszTry[10];		    GetStringOpt(p->pszIn, "host", pszHost);		    if (!GetStringOpt(p->pszIn, "try", pszTry))		    {			if (GetIPString(pszHost, pszHost))			    _snprintf(pszStr, MAX_CMD_LENGTH, "freecached src=%s host=%s sock=%s try=2", g_pszHost, pszHost, pszBfd);			else			    _snprintf(pszStr, MAX_CMD_LENGTH, "result src=%s dest=%s sock=%s result=FAIL - invalid host '%s'", g_pszHost, g_pszHost, pszBfd, pszHost);			ContextWriteString(g_pRightContext, pszStr);		    }		    else		    {			// command went full circle, send fail result			char pszBadHost[MAX_HOST_LENGTH];			GetStringOpt(p->pszIn, "host", pszBadHost);			_snprintf(pszStr, MAX_CMD_LENGTH, "result src=%s dest=%s sock=%s result=FAIL - host '%s' not in the ring", g_pszHost, pszHost, pszBfd, pszBadHost);			ContextWriteString(g_pRightContext, pszStr);		    }		}		else		{		    // forward command		    ContextWriteString(g_pRightContext, p->pszIn);		}	    }	}	else	{	    // no host provided, send fail result	    GetStringOpt(p->pszIn, "src", pszHost);	    _snprintf(pszStr, MAX_CMD_LENGTH, "result src=%s dest=%s sock=%s result=FAIL - no host provided", g_pszHost, pszHost, pszBfd);	    ContextWriteString(g_pRightContext, pszStr);	}    }    else if (strnicmp(p->pszIn, "result ", 7) == 0)    {	char pszDest[MAX_HOST_LENGTH] = "";	char pszBfd[10];	GetStringOpt(p->pszIn, "dest", pszDest);	GetStringOpt(p->pszIn, "sock", pszBfd);	if ((stricmp(pszDest, g_pszHost) == 0) || (strcmp(pszDest, g_pszIP) == 0))	{	    char *token;	    token = strstr(p->pszIn, "result=");	    if (token != NULL)	    {		token = &token[7];		p = GetContext(atoi(pszBfd));		if (p)		{		    ContextWriteString(p, token);		}		else		{		    err_printf("GetContext failed for '%s'\n", pszBfd);		}	    }	    else	    {		err_printf("'result=' not found in result command\n");	    }	}	else	{	    ContextWriteString(g_pRightContext, p->pszIn);	}    }    else    {	err_printf("left socket %d read unknown command '%s'\n", p->sock, p->pszIn);    }}

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -