diff options
author | wpaul <wpaul@FreeBSD.org> | 1997-05-28 16:01:17 +0000 |
---|---|---|
committer | wpaul <wpaul@FreeBSD.org> | 1997-05-28 16:01:17 +0000 |
commit | 8bedcb5e1e2a5d94eb655ebfd12d228dde1891a9 (patch) | |
tree | c120750ade5926a08178887f88469f2378b4cbe7 /usr.bin/keylogout | |
parent | fe00e3fc910b0654062d41f95bf2c9bc7ed8a652 (diff) | |
parent | 131e1e52d5450a64a79ae72225b5c4ca92e7ca1f (diff) | |
download | FreeBSD-src-8bedcb5e1e2a5d94eb655ebfd12d228dde1891a9.zip FreeBSD-src-8bedcb5e1e2a5d94eb655ebfd12d228dde1891a9.tar.gz |
This commit was generated by cvs2svn to compensate for changes in r26244,
which included commits to RCS files with non-trunk default branches.
Diffstat (limited to 'usr.bin/keylogout')
-rw-r--r-- | usr.bin/keylogout/Makefile | 10 | ||||
-rw-r--r-- | usr.bin/keylogout/keylogout.1 | 44 | ||||
-rw-r--r-- | usr.bin/keylogout/keylogout.c | 68 |
3 files changed, 122 insertions, 0 deletions
diff --git a/usr.bin/keylogout/Makefile b/usr.bin/keylogout/Makefile new file mode 100644 index 0000000..c5bd6f5 --- /dev/null +++ b/usr.bin/keylogout/Makefile @@ -0,0 +1,10 @@ +# @(#)Makefile 8.1 (Berkeley) 6/6/93 + +PROG= keylogout +SRCS= keylogout.c + +MAN1= keylogout.1 + +LDADD+= -lrpcsvc + +.include <bsd.prog.mk> diff --git a/usr.bin/keylogout/keylogout.1 b/usr.bin/keylogout/keylogout.1 new file mode 100644 index 0000000..cbc5613 --- /dev/null +++ b/usr.bin/keylogout/keylogout.1 @@ -0,0 +1,44 @@ +.\" @(#)keylogout.1 1.4 91/03/11 TIRPC 1.0; from 1.3 89/07/26 SMI; +.TH KEYLOGOUT 1 "15 April 1989" +.SH NAME +keylogout \- delete stored secret key +.SH SYNOPSIS +.B keylogout +[ +.B \-f +] +.SH DESCRIPTION +.IX "keylogout command" "" "\fLkeylogout\fR command" +.LP +.B keylogout +deletes the key stored by the key server process +.BR keyserv (8C) +to be used by any secure network services, such as +.SM NFS\s0. +Further access to the key is revoked, +however current session keys may remain valid till they expire, +or are refreshed. +This option will cause any background jobs that need secure +.SM RPC +services to fail, and any scheduled +.B at +jobs that need the key to fail. +Also since only one copy is kept on a machine of the key, +it is a bad idea to place this in your +.B .logout +file since it will affect other sessions on the same machine. +.SH OPTIONS +.TP +.B \-f +Forget the rootkey. +This will break secure +.SM NFS\s0 +if it is done on a server. +.LP +.SH "SEE ALSO" +.BR chkey (1), +.BR login (1), +.BR keylogin (1), +.BR publickey (5), +.BR keyserv (8C), +.BR newkey (8) diff --git a/usr.bin/keylogout/keylogout.c b/usr.bin/keylogout/keylogout.c new file mode 100644 index 0000000..51c03b1 --- /dev/null +++ b/usr.bin/keylogout/keylogout.c @@ -0,0 +1,68 @@ +/* + * Sun RPC is a product of Sun Microsystems, Inc. and is provided for + * unrestricted use provided that this legend is included on all tape + * media and as a part of the software program in whole or part. Users + * may copy or modify Sun RPC without charge, but are not authorized + * to license or distribute it to anyone else except as part of a product or + * program developed by the user or with the express written consent of + * Sun Microsystems, Inc. + * + * SUN RPC IS PROVIDED AS IS WITH NO WARRANTIES OF ANY KIND INCLUDING THE + * WARRANTIES OF DESIGN, MERCHANTIBILITY AND FITNESS FOR A PARTICULAR + * PURPOSE, OR ARISING FROM A COURSE OF DEALING, USAGE OR TRADE PRACTICE. + * + * Sun RPC is provided with no support and without any obligation on the + * part of Sun Microsystems, Inc. to assist in its use, correction, + * modification or enhancement. + * + * SUN MICROSYSTEMS, INC. SHALL HAVE NO LIABILITY WITH RESPECT TO THE + * INFRINGEMENT OF COPYRIGHTS, TRADE SECRETS OR ANY PATENTS BY SUN RPC + * OR ANY PART THEREOF. + * + * In no event will Sun Microsystems, Inc. be liable for any lost revenue + * or profits or other special, indirect and consequential damages, even if + * Sun has been advised of the possibility of such damages. + * + * Sun Microsystems, Inc. + * 2550 Garcia Avenue + * Mountain View, California 94043 + */ +/* + * Copyright (C) 1986, Sun Microsystems, Inc. + */ + +/* + * unset the secret key on local machine + */ +#include <stdio.h> +#include <string.h> +#include <unistd.h> +#include <sys/types.h> +#include <rpc/rpc.h> +#include <rpc/key_prot.h> + +int +main(argc,argv) + int argc; + char *argv[]; +{ + static char secret[HEXKEYBYTES + 1]; + + if (geteuid() == 0) { + if ((argc != 2 ) || (strcmp(argv[1], "-f") != 0)) { + fprintf(stderr, +"keylogout by root would break all servers that use secure rpc!\n"); + fprintf(stderr, +"root may use keylogout -f to do this (at your own risk)!\n"); + exit(-1); + } + } + + if (key_setsecret(secret) < 0) { + fprintf(stderr, "Could not unset your secret key.\n"); + fprintf(stderr, "Maybe the keyserver is down?\n"); + exit(1); + } + exit(0); + /* NOTREACHED */ +} |