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

📄 authtis.c

📁 这是一个同样来自贝尔实验室的和UNIX有着渊源的操作系统, 其简洁的设计和实现易于我们学习和理解
💻 C
字号:
#include "ssh.h"static intauthtisfn(Conn *c){	int fd, n;	char *chal, resp[256];	Msg *m;	if(!c->interactive)		return -1;	debug(DBG_AUTH, "try TIS\n");	sendmsg(allocmsg(c, SSH_CMSG_AUTH_TIS, 0));	m = recvmsg(c, -1);	switch(m->type){	default:		badmsg(m, SSH_SMSG_AUTH_TIS_CHALLENGE);	case SSH_SMSG_FAILURE:		free(m);		return -1;	case SSH_SMSG_AUTH_TIS_CHALLENGE:		break;	}	chal = getstring(m);	free(m);	if((fd = open("/dev/cons", ORDWR)) < 0)		error("can't open console");	fprint(fd, "TIS Authentication\n%s", chal);	n = read(fd, resp, sizeof resp-1);	if(n < 0)		resp[0] = '\0';	else		resp[n] = '\0';	if(resp[0] == 0 || resp[0] == '\n')		return -1;	m = allocmsg(c, SSH_CMSG_AUTH_TIS_RESPONSE, 4+strlen(resp));	putstring(m, resp);	sendmsg(m);		m = recvmsg(c, -1);	switch(m->type){	default:		badmsg(m, 0);	case SSH_SMSG_SUCCESS:		free(m);		return 0;	case SSH_SMSG_FAILURE:		free(m);		return -1;	}}Auth authtis ={	SSH_AUTH_TIS,	"tis",	authtisfn,};

⌨️ 快捷键说明

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