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

📄 getxnsuser.c

📁 早期freebsd实现
💻 C
字号:
/* $Header: getXNSuser.c,v 1.2 87/07/28 08:39:23 ed Exp $ *//* * Copyright (c) 1986, 1987 Xerox Corporation. *//* $Log:	getXNSuser.c,v $ * Revision 1.2  87/07/28  08:39:23  ed * fprintf to stderr instead of stdin (how did it work?). *  * Revision 1.1  87/03/23  10:26:08  ed * Initial revision *  */#include <stdio.h>#include <xnscourier/Authentication2.h>#include <xnscourier/Clearinghouse2.h>#include <ctype.h>			/* This should be constant somewhere ?? */static char name[85];	/* 80 is max three part name + 3 for separators(:) */static Cardinal passwd;getXNSuser(xnsname, xnspwd)char **xnsname;Cardinal **xnspwd;{	char *pwd, *cp, *username;	char *getXNSpass(), *getenv(), *index();	FILE *tty, *fopen();	if ( ((username= getenv("XNSNAME")) == NULL) || (username[0] == '\0') ) {		if ( (tty= fopen("/dev/tty", "r+")) == NULL ) {			tty= stdin;		} else {			setbuf(tty, (char *)NULL);		}		fprintf(stderr, "Enter XNS name: ");		fgets(name, sizeof(name), tty);		if ( (cp= index(name, '\n')) )			*cp= '\0';		if ( name[0] == '\0' )			*xnsname= "Unknown";		else			*xnsname= name;		fclose(tty);	} else {		*xnsname= username;	}	if ( ((pwd= getenv("XNSPASSWD")) == NULL) || (*pwd == '\0') ) {		pwd= getXNSpass("Enter XNS password: ");		passwd= hashpass(pwd);	} else {		passwd= atoi(pwd);	}	*xnspwd= &passwd;}

⌨️ 快捷键说明

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