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

📄 identd.c

📁 The major functionality added in this release includes: - Rootless mode in X11 - Widget Templt
💻 C
字号:
/* simple identd server for xchat under win32 */static int identd_is_running = FALSE;static intidentd (void *unused){	int sok, read_sok, len;	char *p;	char buf[256];	char outbuf[256];	struct sockaddr_in addr;	sok = socket (AF_INET, SOCK_STREAM, 0);	if (sok == INVALID_SOCKET)		return 0;	len = 1;	setsockopt (sok, SOL_SOCKET, SO_REUSEADDR, (char *) &len, sizeof (len));	memset (&addr, 0, sizeof (addr));	addr.sin_family = AF_INET;	addr.sin_port = htons (113);	if (bind (sok, (struct sockaddr *) &addr, sizeof (addr)) == SOCKET_ERROR)	{		closesocket (sok);		return 0;	}	if (listen (sok, 1) == SOCKET_ERROR)	{		closesocket (sok);		return 0;	}	len = sizeof (addr);	read_sok = accept (sok, (struct sockaddr *) &addr, &len);	closesocket (sok);	if (read_sok == INVALID_SOCKET)		return 0;	snprintf (outbuf, sizeof (outbuf), "%%\tServicing ident request from %s\n",				 inet_ntoa (addr.sin_addr));	PrintText (menu_sess, outbuf);	recv (read_sok, buf, sizeof (buf) - 1, 0);	buf[sizeof (buf) - 1] = 0;	  /* ensure null termination */	p = strchr (buf, ',');	if (p)	{		snprintf (outbuf, sizeof (outbuf) - 1, "%d, %d : USERID : UNIX : %s\r\n",					 atoi (buf), atoi (p + 1), prefs.username);		outbuf[sizeof (outbuf) - 1] = 0;	/* ensure null termination */		send (read_sok, outbuf, strlen (outbuf), 0);	}	sleep (1);	closesocket (read_sok);	identd_is_running = FALSE;	return 0;}static voididentd_start (void){	DWORD tid;	if (identd_is_running == FALSE)	{		identd_is_running = TRUE;		CloseHandle (CreateThread (NULL, 0, (LPTHREAD_START_ROUTINE) identd,						 NULL, 0, &tid));	}}

⌨️ 快捷键说明

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