talkd.c

来自「操作系统源代码」· C语言 代码 · 共 55 行

C
55
字号
/* talkd.c Copyright Michael Temari 07/22/1996 All Rights Reserved */#include <sys/types.h>#include <stdio.h>#include <string.h>#include <unistd.h>#include <net/gen/in.h>#include "talk.h"#include "talkd.h"#include "net.h"#include "process.h"_PROTOTYPE(int main, (int argc, char *argv[]));int opt_d = 0;char myhostname[HOST_SIZE+1];int main(argc, argv)int argc;char *argv[];{struct talk_request request;struct talk_reply reply;   if(argc > 1)   	if(strcmp(argv[1], "-d") || argc > 2) {   		fprintf(stderr, "Usage: talkd [-d]\n");   		return(-1);   	} else		opt_d = 1;   if(getuid() != 0) {	fprintf(stderr, "talkd: Must be run as super user\n");	return(-1);   }   if(gethostname(myhostname, HOST_SIZE) < 0) {   	fprintf(stderr, "talkd: Error getting hostname\n");   	return(-1);   }   if(NetInit()) {   	fprintf(stderr, "talkd: Error in NetInit\n");   	return(-1);   }   while(getrequest(&request) == 0) {   	if(processrequest(&request, &reply)) break;   	if(sendreply(&request, &reply)) break;   }   return(-1);}

⌨️ 快捷键说明

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