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

📄 dceconf.l

📁 Ho Chi Minh City University of Technology Computer Science Department Distributed Computing E
💻 L
字号:
%{#include <stdlib.h>#include <sys/types.h>#include <sys/socket.h>#include <netinet/in.h>#include <arpa/inet.h>#include "dce_def.h"#define PORT  1#define MADDR 2#define EQUAL 3#define NUM   4#define ADDR  5#define TIME  6int  TIMEOUT_IAMALIVE;%}%%\#  while (input()!='\n');\=  return EQUAL;maddr return MADDR;mport return PORT;time  return TIME;[0-9]+\.[0-9]+\.[0-9]+\.[0-9]+  return ADDR;[0-9]+   return NUM;[\b|\n|\t]* {}%%intdce_readconf (u_long * maddr, int *mport){  static int nPort;  static u_long uAddr;  int nToken;  char buf[256];  if (nPort)    {      *maddr = uAddr;      *mport = nPort;      return 1;    }  sprintf (buf, "%s/dce.conf", getenv ("DCE_ROOT"));  if ((yyin = fopen (buf, "rt")))    while ((nToken = yylex ()) > 0)      switch (nToken)	{	case MADDR:	  if ((yylex () == EQUAL) && (yylex () == ADDR))	    uAddr = inet_addr (yytext);	  break;	case PORT:	  if ((yylex () == EQUAL) && (yylex () == NUM))	    nPort = atol (yytext);	  break;	case TIME:  	  if ((yylex()==EQUAL) && (yylex () == NUM))	  TIMEOUT_IAMALIVE = atoi (yytext);	  break;  	}  if (yyin)    fclose (yyin);  if ((IN_MULTICAST (ntohl (uAddr))) && (nPort > 1024))    {      *maddr = uAddr;      *mport = nPort;      if (TIMEOUT_IAMALIVE<_TIMEOUT_IAMALIVE) TIMEOUT_IAMALIVE=_TIMEOUT_IAMALIVE;      return 1;    }  fprintf (stderr, "Error in Read file %s or DCE_ROOT variable not found\n", buf);  exit (-1);}

⌨️ 快捷键说明

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