--- /dev/null
+// CasProxy.cpp: CCasProxy \83N\83\89\83X\82Ì\83C\83\93\83v\83\8a\83\81\83\93\83e\81[\83V\83\87\83\93\r
+//\r
+//////////////////////////////////////////////////////////////////////\r
+\r
+\r
+#include "CasProxy.h"\r
+#include <stdio.h>\r
+\r
+#define TCP_TIMEOUT 1000UL // 1\95b\r
+\r
+\r
+DWORD CCasProxy::dwErrorDelayTime = 0UL;\r
+\r
+\r
+CCasProxy::CCasProxy(void)\r
+{\r
+\r
+}\r
+\r
+CCasProxy::~CCasProxy(void)\r
+{\r
+ // \83T\81[\83o\82©\82ç\90Ø\92f\r
+ m_Socket.Close();\r
+}\r
+\r
+const BOOL CCasProxy::Connect(void)\r
+{\r
+/*
+ // \83G\83\89\81[\94\90¶\8e\9e\82Ì\83K\81[\83h\83C\83\93\83^\81[\83o\83\8b\r
+ if(dwErrorDelayTime){\r
+ if((::GetTickCount() - dwErrorDelayTime) < TCP_TIMEOUT)return FALSE;\r
+ else dwErrorDelayTime = 0UL;\r
+ }\r
+*/\r
+ // \83T\81[\83o\82É\90Ú\91±
+ char* env = getenv("B25_SERVER_IP");
+ LPCTSTR lpszHost;
+ WORD wPort;
+ if (env) {
+ lpszHost = env;
+ }
+ else {
+ lpszHost = "127.0.0.1";
+ }
+ env = getenv("B25_SERVER_PORT");
+ if (env) {
+ wPort = atoi(env);
+ }
+ else {
+ wPort = 6900;
+ }
+
+ if(m_Socket.Connect(lpszHost, wPort, TCP_TIMEOUT)){\r
+ return TRUE;\r
+ }\r
+ else{
+ //dwErrorDelayTime = ::GetTickCount();\r
+ return FALSE;\r
+ }\r
+}\r
+\r
+const DWORD CCasProxy::TransmitCommand(const BYTE *pSendData, const DWORD dwSendSize, BYTE *pRecvData)\r
+{\r
+ // \91\97\90M\83f\81[\83^\8f\80\94õ\r
+ BYTE SendBuf[256];\r
+ SendBuf[0] = (BYTE)dwSendSize;\r
+ memcpy(&SendBuf[1], pSendData, dwSendSize);\r
+\r
+ try{\r
+ // \83\8a\83N\83G\83X\83g\91\97\90M\r
+ if(!m_Socket.Send(SendBuf, dwSendSize + 1UL, TCP_TIMEOUT))throw (const DWORD)__LINE__;\r
+ \r
+ // \83\8c\83X\83|\83\93\83X\83w\83b\83_\8eó\90M\r
+ if(!m_Socket.Recv(SendBuf, 1UL, TCP_TIMEOUT))throw (const DWORD)__LINE__;\r
+\r
+ // \83\8c\83X\83|\83\93\83X\83f\81[\83^\8eó\90M\r
+ if(!m_Socket.Recv(pRecvData, SendBuf[0], TCP_TIMEOUT))throw (const DWORD)__LINE__;\r
+ }\r
+ catch(const DWORD dwLine){\r
+ // \92Ê\90M\83G\83\89\81[\94\90¶\r
+ m_Socket.Close();\r
+ return 0UL;\r
+ }\r
+ \r
+ return SendBuf[0];\r
+}
+