date and time created 91/01/17 18:24:03 by bostic
[unix-history] / usr / src / usr.bin / rlogin / krcmd.c
CommitLineData
f788ac26
KF
1/*
2 * Copyright (c) 1989 The Regents of the University of California.
3 * All rights reserved.
4 *
6d936b27 5 * %sccs.include.redist.c%
f788ac26
KF
6 */
7
8#ifndef lint
7ade1fbd 9static char sccsid[] = "@(#)krcmd.c 1.6.1.1 (Berkeley) %G%";
f788ac26
KF
10#endif /* not lint */
11
86dc635c
KB
12/*
13 * $Source: /mit/kerberos/ucb/mit/kcmd/RCS/krcmd.c,v $
14 * $Header: /mit/kerberos/ucb/mit/kcmd/RCS/krcmd.c,v 5.1
15 * 89/07/25 15:38:44 kfall Exp Locker: kfall $
16 * static char *rcsid_kcmd_c =
17 * "$Header: /mit/kerberos/ucb/mit/kcmd/RCS/krcmd.c,v 5.1 89/07/25 15:38:44
18 * kfall Exp Locker: kfall $";
19 */
20
8293b217 21#ifdef KERBEROS
f788ac26
KF
22#include <sys/types.h>
23#include <stdio.h>
4f10ae0d 24#include <kerberosIV/des.h>
308c0e0f 25#include <kerberosIV/krb.h>
f788ac26
KF
26
27#define SERVICE_NAME "rcmd"
28
308c0e0f
KB
29/*
30 * krcmd: simplified version of Athena's "kcmd"
31 * returns a socket attached to the destination, -1 or krb error on error
32 * if fd2p is non-NULL, another socket is filled in for it
33 */
34
f788ac26
KF
35int
36krcmd(ahost, rport, remuser, cmd, fd2p, realm)
37 char **ahost;
38 u_short rport;
39 char *remuser, *cmd;
40 int *fd2p;
41 char *realm;
42{
308c0e0f 43 int sock = -1, err = 0;
f788ac26 44 KTEXT_ST ticket;
308c0e0f 45 long authopts = 0L;
f788ac26
KF
46
47 err = kcmd(
48 &sock,
49 ahost,
50 rport,
51 NULL, /* locuser not used */
52 remuser,
53 cmd,
54 fd2p,
55 &ticket,
56 SERVICE_NAME,
57 realm,
308c0e0f
KB
58 (CREDENTIALS *) NULL, /* credentials not used */
59 (bit_64 *) NULL, /* key schedule not used */
60 (MSG_DAT *) NULL, /* MSG_DAT not used */
61 (struct sockaddr_in *) NULL, /* local addr not used */
62 (struct sockaddr_in *) NULL, /* foreign addr not used */
f788ac26
KF
63 authopts
64 );
65
308c0e0f 66 if (err > KSUCCESS && err < MAX_KRB_ERRORS) {
f788ac26
KF
67 fprintf(stderr, "krcmd: %s\n", krb_err_txt[err]);
68 return(-1);
69 }
308c0e0f
KB
70 if (err < 0)
71 return(-1);
f788ac26
KF
72 return(sock);
73}
74
8293b217 75#endif /* KERBEROS */