亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频

? 歡迎來(lái)到蟲(chóng)蟲(chóng)下載站! | ?? 資源下載 ?? 資源專(zhuān)輯 ?? 關(guān)于我們
? 蟲(chóng)蟲(chóng)下載站

?? slist.m

?? Novell Slist 源代碼
?? M
?? 第 1 頁(yè) / 共 2 頁(yè)
字號(hào):
				strcpy(serverList[j].name,	 serverList[j+1].name	);
				strcpy(serverList[j+1].name, tempName				);

				/*
					Switch the server addresses
				*/
				strcpy(tempAddr, 			 serverList[j].addr		);
				strcpy(serverList[j].addr,	 serverList[j+1].addr	);
				strcpy(serverList[j+1].addr, tempAddr				);
			}

	return;

}

/****************************************************************************/

/*
	Description:	Print the list of servers and there addresses
	
	Called by:		Main
*/

void PrintServerNames(serverList, numServers, defaultConnection)

	SERVER	serverList[];		/* List of servers and there addresses		*/
	int		numServers;			/* Number of servers found					*/
	WORD	defaultConnection;	/* Default connection						*/

{

	int		i,					/* Loop counter								*/
			status;				/* Status message for this server			*/
	WORD	connection;			/* Connection ID to a server in the list	*/

	/*
		Clear the message that says we are reading server names
	*/
	fprintf(stderr, GetMessage(ERASE_LINE));

	/*
		If output is being sent to a file, tell user that we are doing so
	*/
	if (outputToFile)
		fprintf(stderr, GetMessage(WRITING_TO_FILE));

	/*
		Now print out all the servers
	*/
	for ( i = 0 ; i <= numServers-1 ; i++ )
	{
		/*
			See if its time to print a header
		*/
		if (((i % (linesPerScreen - 2) == 0) && pause) || i == 0)
		{
			Print(GetMessage(HEADER_1));
			Print(GetMessage(HEADER_2));
		}

		/*
			See if we are attached to this server
		*/
		status = STATUS_UNATTACHED;
		if (!NWGetConnectionID(serverList[i].name, MY_SESSION,
							   &connection, NULL))
		{
			if (connection == defaultConnection)
				status = STATUS_DEFAULT;
			else
				status = STATUS_ATTACHED;
		}

		/*
			Print the server name and address
		*/
		Print("%-47.47s%-24.24s%-8.8s\n", serverList[i].name,
			  serverList[i].addr, GetMessage(status));
	}

	/*
		Tell how many servers were found
	*/
	if (numServers)
		Print(GetMessage(NUMBER_OF_SERVERS_FOUND), numServers);
	else
	{
		if (IsWild(targetServer))
			Print(GetMessage(NO_MATCHING_SERVER), targetServer);
		else
			Print(GetMessage(NO_SUCH_SERVER), targetServer);
	}

	/*
		If data was being written to a file, erase the line that
		tells him we are writing to the file
	*/
	if (outputToFile)
		fprintf(stderr, GetMessage(ERASE_LINE));

	/*
		Return to caller
	*/
	return;

}

/****************************************************************************/

/*
	Description:	Print some data to standard output, pausing if needed
					after each screen full
				
	Called by:		PrintServerNames
*/

void Print(formatString, ...)

	char	*formatString;		/* Format control string					*/

{

	int		 c;					/* Character input from keyboard			*/
	va_list	 args;				/* Pointer to variable arguments			*/
	static int					/* Lines printed so far						*/
			 lines = 0;

	/*
		Figure out where all those other parameters are
	*/
	va_start(args, formatString);

	/*
		Print the text required
	*/
	vprintf(formatString, args);

	/*
		Increment number of lines printed
	*/
	lines++;

	/*
		If we have printed enough lines, and pause is in effect, wait for
		a keypress
	*/
	if (lines == linesPerScreen && pause)
	{
		printf(GetMessage(PRESS_A_KEY));
		c = getch();

		/*
			Make sure it wasn't some sort of funky key
		*/
		if (c == 0 || c == 224)
			getch();

		/*
			If they don't want any more pauses, then don't
		*/
		if (c == 'C' || c == 'c')
			pause = FALSE;

		printf(GetMessage(ERASE_LINE));
		lines = 0;
	}
}

/****************************************************************************/

/*
	Description:	Print an error message, with optional numeric output
					and exit the program
	
	Called by:		Main
					ReadServerNames
*/
		
void Error(errorMessageID, ...)

	int		errorMessageID;		/* Error message ID to be printed			*/
								/* Variable arguments may follow			*/

{

	va_list	args;				/* Pointer to variable arguments			*/

	/*
		Figure out where all those other parameters are
	*/
	va_start(args, errorMessageID);

	/*
		Print the error message, beep, append a return and exit
	*/
	fprintf(stderr, GetMessage(ERASE_LINE));
	vfprintf(stderr, GetMessage(errorMessageID), args);
	fprintf(stderr, "\7\n");
	exit(1);

}

/****************************************************************************/

/*
	M Code for SList
*/

%

Keyword
	CONTINUE
	CONTINU
	CONTIN
	CONTI
	CONT
	CON
	CO
	C
	CONTINUOUS
	CONTINUOU
	CONTINUO

DomainOption
	DOMAIN
	DOMAI
	DOM
	DO
	D

%

Spaces:		[ ] min 1													;

Slash:		<\\/>														;

Continue:	Slash Keyword						`pause = FALSE;		`	;

Domain:	Slash DomainOption						`doDomain = TRUE;		`	;

Server:		[~ \\/]	min 1 max 47				`GetServer();       `	;

Session:	EOL															|
			Continue EOL										|
			Domain EOL										|
			Server EOL													|
			Server Spaces Continue EOL							;

%

/****************************************************************************/

/*
	Description:	Get the name of the server to be listed, or the
					pattern of servers to search for
					
	Called by:		M Parser
*/

void GetServer()

{

   memcpy(targetServer, TChP(0), TVal(0));
   targetServer[TVal(0)] = '\0';

}
/****************************************************************************/

int WildMatch(pattern, string)
char *pattern, *string;
{
    char p, s;
    int l;
    char MatchPeriod;

    while ((p = (*pattern & 0x7F)) != '*')
    {
        s = *string & 0x7F;
        if (p == '?')
        {
            if ((*pattern == SQUESTION)
                    && ((s == 0) || (s == '.')))
            {
                /*special question skip period or end*/
                pattern++;
            }
            else
            {
                if (s == 0)
                    return (0); /*no char to match*/
                pattern++;	/*succeed on ? match*/
                string++;
            }
        }
        else if ((*pattern == SPERIOD) && (s == 0))
        {
            /*match  special period to end-of-string*/
            pattern++;
        }
        else if (p != s)
            return (0); /*failure on non-match*/
        else if (p == 0)
            return (1);	/*success on match to nulls*/
        else
        {
            /*chars match, but not end yet*/
            pattern++;
            string++;
        }
    }

    /* MUST MATCH AN ASTERISK WILDCARD */
    MatchPeriod = 0;
    while ((*pattern & 0x7F) == '*')
    {
        /* step over asterisks */
        if ((*pattern & 0x80) == 0)
            MatchPeriod = 0xFF;
        pattern++;
    }
    for (l = 0; (string[l] != 0) && ((string[l] != '.') || MatchPeriod);
            l++);	/*count max characters that may be skipped*/
    p = *pattern & 0x7F;
    while (l >= 0)
    {
        s = string[l] & 0x7F;
        if (((p == s) || (p == '?') || (p == '.'))
                && WildMatch(pattern, &string[l]))
            return (1);	/*success*/
        l--;
    }
    return (0);
}

/****************************************************************************/

int IsWild (s)
char *s;
{
    char ch;

    while ((ch = *s++ & 0x7F) != 0)
    {
        switch(ch)
        {
        case ASTERISK:
        case QUESTION:
        case SPERIOD:
        case SASTERISK:
        case SQUESTION:
            return(1);
        }
    }
    return (0);
}

/* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * */
void IsServerInADomain(
						WORD connectionID,	/* connection ID of server to change */
						int *isInADomain,		/* flag returns TRUE if in a domain */
						char *domainName )	/* name of the domain if isInDomain is TRUE */

{
	int ccode = TRUE;
	long tmpDummy;
	char serverName[SERVER_NAME_SIZE];
	NWGetFileServerName(connectionID, serverName);

	*isInADomain = FALSE;

	*domainName = 0; 
	if (serverName[0] != '\0')
		ccode = NWReadPropertyValue( (WORD) connectionID, serverName,
					OT_FILE_SERVER, (char far *)"DOMAIN_NAME", 1, (BYTE far *) domainName,
					(BYTE far *)&tmpDummy, (BYTE far *)&tmpDummy);

	if ( ccode==0 )
		*isInADomain = TRUE;

}	/* end IsServerInADomain */

/***************************************************************************/
void DisplayUsageLine(void)
{
	int isInADomain, jj;
	char domainName[PROPERTY_NAME_SIZE];
	WORD maxConnects;
	NWGetMaximumConnections(&maxConnects);
	for (jj=1; jj<=maxConnects; jj++)
		{
		IsServerInADomain( jj, &isInADomain,
							 domainName );
		if (isInADomain) break;
		}
	if (isInADomain)
		 Error(E_NNS_USAGE);
	else
		Error(E_USAGE);
}
/**************************************************************************/

/**** SetScrollParms  ****************************************************
 *
 * Input:	None;
 *
 * Output:	none
 *
 * Comment:	This routine will detect if output is redirected to a 
 *				file and will enable or disable pausing accordingly.  Also
 *				this routine will detect the number of rows in the current
 *				video mode so that scrolling will work properly.
 *
 ****/
void SetScrollParms()
{

#ifdef DOS
	union REGS inregs, outregs;
#endif

	
	/*	Assume that we are going to pause after each screen full	*/
	pause = TRUE;

	
	/* Has output been redirected to a file? If so, don't pause! */
	if ( isatty( fileno( stdout ) ) )
		{
		pause = TRUE;
		outputToFile = FALSE;
		}
	else
		{
		pause = FALSE;
		outputToFile = TRUE;
		}

#ifdef DOS
	/* Issue BIOS call to get current # of screen lines */
	inregs.x.ax = 0x1130;
	inregs.h.bh = 0;
	inregs.x.dx = 0;
	int86( VIDEO_INT, &inregs, &outregs );
	if( outregs.x.dx != 0 )
		linesPerScreen = (BYTE)outregs.h.dl;
	else
#endif
		linesPerScreen = MIN_LINES;
}
/****************************************************************************/

?? 快捷鍵說(shuō)明

復(fù)制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號(hào) Ctrl + =
減小字號(hào) Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
欧美久久一区二区| 亚洲bt欧美bt精品777| 日韩一级免费一区| 精品视频在线看| 欧美日韩和欧美的一区二区| 欧美视频一区二区三区四区 | 99久久精品国产麻豆演员表| 国产东北露脸精品视频| 国产suv一区二区三区88区| 国产麻豆一精品一av一免费 | 成人激情校园春色| 99这里都是精品| 91美女片黄在线| 欧美在线观看一区| 欧美美女一区二区在线观看| 欧美精品自拍偷拍| 日韩欧美亚洲国产精品字幕久久久| 欧美顶级少妇做爰| 精品国精品国产| 久久精品亚洲一区二区三区浴池| 欧美激情一二三区| 亚洲精品老司机| 亚洲成av人片一区二区| 美洲天堂一区二卡三卡四卡视频| 久久国产精品第一页| 国产九色精品成人porny| 成人av资源下载| 欧美网站大全在线观看| 91精品国产一区二区三区蜜臀| 欧美变态口味重另类| 国产亚洲精品bt天堂精选| 国产精品人妖ts系列视频| 一区二区欧美精品| 免费日本视频一区| 成人午夜激情影院| 欧美色图天堂网| 日韩精品一区在线| 国产精品视频观看| 亚洲成人激情av| 国产永久精品大片wwwapp| av一本久道久久综合久久鬼色| 欧美日韩高清影院| 久久久欧美精品sm网站| 一区二区三区在线免费播放| 免费看欧美女人艹b| www.日韩大片| 日韩一区二区三区四区五区六区| 国产亚洲精品久| 午夜av一区二区三区| 国产成人精品一区二| 欧美日韩黄视频| 欧美高清在线精品一区| 午夜影视日本亚洲欧洲精品| 国产风韵犹存在线视精品| 亚洲国产cao| 福利一区福利二区| 欧美一个色资源| 亚洲人123区| 激情综合五月天| 在线观看免费亚洲| 国产欧美精品在线观看| 日韩成人dvd| 色婷婷久久99综合精品jk白丝| 久久一区二区三区四区| 亚洲小说春色综合另类电影| 成人激情文学综合网| 日韩亚洲欧美高清| 亚洲精品高清在线| 国产999精品久久久久久绿帽| 7878成人国产在线观看| 亚洲欧美激情小说另类| 国产精品888| 日韩一区二区三区av| 樱花草国产18久久久久| 岛国av在线一区| 欧美成人午夜电影| 午夜欧美在线一二页| 色av一区二区| 成人欧美一区二区三区白人| 国产一区二区网址| 欧美一级夜夜爽| 午夜久久久久久电影| 91久久一区二区| 国产精品短视频| 国产精品99久久久久久宅男| 日韩美一区二区三区| 偷拍一区二区三区| 精品视频1区2区3区| 一区二区三区免费观看| 99国产精品视频免费观看| 国产农村妇女毛片精品久久麻豆| 精品一区二区三区香蕉蜜桃 | 亚洲自拍偷拍av| 91视频观看视频| 中文字幕视频一区| 9i在线看片成人免费| 国产精品九色蝌蚪自拍| 不卡一区二区中文字幕| 日本一区二区三区dvd视频在线| 国产伦精品一区二区三区免费| 日韩精品一区二区三区在线观看 | 国内精品写真在线观看| 日韩欧美一二三区| 九九精品一区二区| 欧美va在线播放| 精品一二三四在线| 久久尤物电影视频在线观看| 国产久卡久卡久卡久卡视频精品| 久久久精品影视| 粉嫩欧美一区二区三区高清影视| 欧美激情一区二区三区在线| 成人美女视频在线看| 亚洲欧洲日韩一区二区三区| 91丨九色丨蝌蚪富婆spa| 亚洲精品中文字幕乱码三区| 在线亚洲高清视频| 视频一区中文字幕| 日韩免费视频一区| 国产成人啪午夜精品网站男同| 欧美国产激情二区三区| 97精品久久久午夜一区二区三区| 亚洲免费观看高清| 在线国产亚洲欧美| 日本免费在线视频不卡一不卡二 | 亚洲午夜羞羞片| 欧美日韩国产高清一区二区| 免费观看30秒视频久久| 久久久不卡网国产精品二区| 91亚洲午夜精品久久久久久| 亚洲18女电影在线观看| 日韩你懂的在线播放| 国产东北露脸精品视频| 亚洲美女在线一区| 欧美一区二区成人6969| 国产91精品一区二区| 一二三区精品视频| 日韩欧美国产一二三区| 成人av网址在线| 亚洲第一av色| 精品91自产拍在线观看一区| www.一区二区| 日本视频在线一区| 国产欧美日韩在线看| 欧美吻胸吃奶大尺度电影| 国内精品国产成人国产三级粉色 | 中文字幕的久久| 欧美色视频在线观看| 韩国精品一区二区| 亚洲精品写真福利| 精品日产卡一卡二卡麻豆| 91香蕉视频黄| 极品销魂美女一区二区三区| 亚洲男人的天堂av| www久久精品| 欧美日韩国产综合一区二区| 大胆亚洲人体视频| 男男视频亚洲欧美| 一区二区三区小说| 久久综合九色综合欧美98| 色网综合在线观看| 国产乱理伦片在线观看夜一区| 一区二区三区波多野结衣在线观看| 久久人人爽人人爽| 在线综合视频播放| 色综合激情久久| 国产精品一区在线| 日韩中文字幕麻豆| 亚洲激情在线激情| 中文字幕国产精品一区二区| 日韩欧美二区三区| 欧美日韩视频在线一区二区| 春色校园综合激情亚洲| 毛片一区二区三区| 亚洲第一会所有码转帖| 中文字幕一区二区不卡| 2020国产精品| 欧美一三区三区四区免费在线看 | 中文字幕在线观看一区| 精品处破学生在线二十三| 欧美日韩三级在线| 91丝袜美腿高跟国产极品老师| 久久日韩粉嫩一区二区三区| 日韩手机在线导航| 欧美日韩国产综合视频在线观看| 91欧美一区二区| thepron国产精品| 国产黄色91视频| 久久精品理论片| 日韩电影免费在线| 亚洲高清视频中文字幕| 亚洲精品高清视频在线观看| 中文字幕在线不卡一区| 久久久99免费| 久久久精品国产免费观看同学| 日韩精品在线看片z| 日韩三级.com| 欧美一级二级在线观看| 91精品国产综合久久久久久久 | 精品国产乱码久久久久久牛牛 | 久久久久综合网|