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

📄 wintest.c

📁 gsm map协议源代码
💻 C
字号:
#ifdef WIN32
#include "envopt.h"        /* environment options */
#include "envdep.h"        /* environment dependent */
#include "envind.h"        /* environment independent */

#include "gen.h"           /* general layer */
#include "ssi.h"           /* system services */
#include "lns.h"           /* NTSS layer mgmt */

#include "ss_err.h"        /* errors */
#include "ss_dep.h"        /* implementation-specific */
#include "ss_queue.h"      /* queues */
#include "ss_task.h"       /* tasking */
#include "ss_msg.h"        /* messaging */
#include "ss_mem.h"        /* memory management interface */
#include "ss_gen.h"        /* general */
#include "cm_lib.x"
#ifdef SSI_WITH_CLI_ENABLED
#include "xosshell.h"
#endif
#ifdef NM_OAM_SUPPORT
#include "ma_nms.h"
#endif

#ifdef MAP_TEST_TYPE
extern PUBLIC S16 tst(void);
#endif
extern PUBLIC S16 ssiInit();
extern PUBLIC Void ssdStart(void);
extern PUBLIC Void ssdDeinitFinal(void);
extern PUBLIC S16 SPrint(S8 *buf);

#ifdef SSI_WITH_CLI_ENABLED

t_XOSLOGINLIST *LoginList = NULLP;

PUBLIC S8 XOS_InfoReg()
{
    /*LoginList 是一个全局变量,由平台定义,提供给业务用户,由用户来分配空间 */ 

	return XSUCC;
}
#endif /*SSI_WITH_CLI_ENABLED*/

#ifdef NM_OAM_SUPPORT

extern parseFile();
extern unsigned char g_maRegisterFlag;
extern Bool g_taskRegComp;
DWORD WINAPI ThreadOamTest(
						  LPVOID lpParameter   // thread data
						  )
{
	S16 ret;
	S32 threadId;
	tb_record * prow = NULL;

	threadId = GetCurrentThread();
	printf("OAM thread test, thread is %x\n",threadId);

	ret = parseFile();
	if(ret != 0)
	{
		printf("read cfg file fialed\r\n");
	}

	for(;;)
	{
		if((TRUE == g_maRegisterFlag)&&(TRUE == g_taskRegComp))
		{
			oamTblProc(&prow);
			maNmSyncCallback(NMMSG_SYNC, 1, 1, prow);
			break;
		}
		else
		{
			Sleep(500);
			continue;
		}
	}

	freeOamTblRow(prow);
	return TRUE;
}

#endif /*NM_OAM_SUPPORT*/

#ifdef ANSI
int main
(
int argc,					/* argument count */
char **argv					/* argument values */
)
#else
int main(argc, argv)
int argc;					/* argument count */
char **argv;				/* argument values */
#endif
{
	EXTERN S8 **msArgv;            /* UNTSS argument vector */
	EXTERN S16 msArgc;              /* UNTSS argument count */
	EXTERN S16 msOptInd;            /* SGetOpt vars */

	int params = 0;
	S16 rc;
	U32 *func=NULLP;
	msOptInd = 1;
	msArgv = argv;
	msArgc = argc;
	
#ifdef NM_OAM_SUPPORT
	func = ThreadOamTest;
	if (func != NULLP)
	{
		CreateThread( NULL,	 // pointer to security attributes
					  20000,						 // initial thread stack size
					  func,		// pointer to thread function
					  (void *)&params,						  // argument for new thread
					  0,					 // creation flags
					  NULL						   // pointer to receive thread ID
					);
	}
#endif

#ifdef SSI_WITH_CLI_ENABLED

    XOS_Root();
		
    XOS_CliPause();

#else /*SSI_WITH_CLI_ENABLED*/

	rc = SInit();
	if (rc!=ROK)
	{
		printf(" SSI Init Failed!\n");
		return(RFAILED);
	}

/*	SuspendThread(GetCurrentThread());*/

#endif /*SSI_WITH_CLI_ENABLED*/

	RETVALUE(OK);
} /* end of main */


S16 mgAccGetHexValue(U8 *cmd, U16 len, U32 *val)
{
	U8 hexcode;
	U32 pPtr=0;
	U16 index = 0;
	hexcode = cmd[index++];
	if ((hexcode != 'X') && (hexcode != 'x'))
		RETVALUE(RFAILED);
	while (index<len)
	{

		hexcode = cmd[index++];

		if ( (hexcode>='0' )&&(hexcode<='9'))
		{
			hexcode -= '0';
		}
		else
		{
			if ( (hexcode>='a' )&&(hexcode<='f'))
			{
				hexcode = hexcode - 'a' + 0xa;
			}
			else
			{
				RETVALUE(RFAILED);
			}

		}
		pPtr = pPtr*16 + hexcode;
	}
	*val = pPtr;
	RETVALUE(ROK);
}

Void mgAccCommonParse(char *cmd,    U16 len)
{
	SPrint(" cmd:  \n");

}

Void mgAccParseInputKey(Void)
{
	char cmd[255];
	U16 len;
	U16 num;
	while (1)
	{
		gets(cmd);
		len  = cmStrlen(cmd);
		mgAccCommonParse(cmd,len);
	}   
}

#endif

⌨️ 快捷键说明

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