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

📄 rls.c

📁 早期freebsd实现
💻 C
字号:
/* @(#)rls.c	2.2 88/08/12 4.0 RPCSRC *//* * rls.c: Remote directory listing client */#include <stdio.h>#include <rpc/rpc.h>		/* always need this */#include "dir.h"		/* need this too: will be generated by rpcgen*/extern int errno;main(argc, argv)	int argc;	char *argv[];{	CLIENT *cl;	char *server;	char *dir;	readdir_res *result;	namelist nl;		if (argc != 3) {		fprintf(stderr, "usage: %s host directory\n", argv[0]);		exit(1);	}	/*	 * Remember what our command line arguments refer to	 */	server = argv[1];	dir = argv[2];	/*	 * Create client "handle" used for calling DIRPROG on the	 * server designated on the command line. We tell the rpc package	 * to use the "tcp" protocol when contacting the server.	 */	cl = clnt_create(server, DIRPROG, DIRVERS, "tcp");	if (cl == NULL) {		/*		 * Couldn't establish connection with server.		 * Print error message and die.		 */		clnt_pcreateerror(server);		exit(1);	}		/*	 * Call the remote procedure "readdir" on the server	 */	result = readdir_1(&dir, cl);	if (result == NULL) {		/*		 * An error occurred while calling the server. 	 	 * Print error message and die.		 */		clnt_perror(cl, server);		exit(1);	}	/*	 * Okay, we successfully called the remote procedure.	 */	if (result->errno != 0) {		/*		 * A remote system error occurred.		 * Print error message and die.		 */		errno = result->errno;		perror(dir);		exit(1);	}	/*	 * Successfuly got a directory listing.	 * Print it out.	 */	for (nl = result->readdir_res_u.list; nl != NULL; nl = nl->next) {		printf("%s\n", nl->name);	}}

⌨️ 快捷键说明

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