|
|
1.1 root 1: /*
2: * $Source: /usr/src/kerberosIV/src/lib/krb/RCS/krbglue.c,v $
3: * $Author: kfall $
4: * $Header: /usr/src/kerberosIV/src/lib/krb/RCS/krbglue.c,v 4.2 90/05/12 00:58:22 kfall Exp $
5: *
6: * Copyright 1988 by the Massachusetts Institute of Technology.
7: *
8: * For copying and distribution information, please see the file
9: * <mit-copyright.h>.
10: */
11:
12: #ifndef NCOMPAT
13: #ifndef lint
14: static char *rcsid_krbglue_c = "$Header: /usr/src/kerberosIV/src/lib/krb/RCS/krbglue.c,v 4.2 90/05/12 00:58:22 kfall Exp $";
15: #endif lint
16:
17: /*
18: * glue together new libraries and old clients
19: */
20:
21: #include <stdio.h>
22: #include <sys/types.h>
23: #include <netinet/in.h>
24: #include "des.h"
25: #include "krb.h"
26:
27: /* These definitions should be in krb.h, no? */
28: #if defined(__HIGHC__)
29: #undef __STDC__
30: #endif
31: #ifdef __STDC__
32: extern int krb_mk_req (KTEXT, char *, char *, char *, long);
33: extern int krb_rd_req (KTEXT, char *, char *, long, AUTH_DAT *, char *);
34: extern int krb_kntoln (AUTH_DAT *, char *);
35: extern int krb_set_key (char *, int);
36: extern int krb_get_cred (char *, char *, char *, CREDENTIALS *);
37: extern long krb_mk_priv (u_char *, u_char *, u_long, Key_schedule,
38: C_Block, struct sockaddr_in *,
39: struct sockaddr_in *);
40: extern long krb_rd_priv (u_char *, u_long, Key_schedule,
41: C_Block, struct sockaddr_in *,
42: struct sockaddr_in *, MSG_DAT *);
43: extern long krb_mk_safe (u_char *, u_char *, u_long, C_Block *,
44: struct sockaddr_in *, struct sockaddr_in *);
45: extern long krb_rd_safe (u_char *, u_long, C_Block *,
46: struct sockaddr_in *, struct sockaddr_in *,
47: MSG_DAT *);
48: extern long krb_mk_err (u_char *, long, char *);
49: extern int krb_rd_err (u_char *, u_long, long *, MSG_DAT *);
50: extern int krb_get_pw_in_tkt (char *, char *, char *, char *, char *, int,
51: char *);
52: extern int krb_get_svc_in_tkt (char *, char *, char *, char *, char *, int,
53: char *);
54: extern int krb_get_pw_tkt (char *, char *, char *, char *);
55: extern int krb_get_lrealm (char *, char *);
56: extern int krb_realmofhost (char *);
57: extern char *krb_get_phost (char *);
58: extern int krb_get_krbhst (char *, char *, int);
59: #ifdef DEBUG
60: extern KTEXT krb_create_death_packet (char *);
61: #endif /* DEBUG */
62: #else
63: extern int krb_mk_req ();
64: extern int krb_rd_req ();
65: extern int krb_kntoln ();
66: extern int krb_set_key ();
67: extern int krb_get_cred ();
68: extern long krb_mk_priv ();
69: extern long krb_rd_priv ();
70: extern long krb_mk_safe ();
71: extern long krb_rd_safe ();
72: extern long krb_mk_err ();
73: extern int krb_rd_err ();
74: extern int krb_get_pw_in_tkt ();
75: extern int krb_get_svc_in_tkt ();
76: extern int krb_get_pw_tkt ();
77: extern int krb_get_lrealm ();
78: extern int krb_realmofhost ();
79: extern char *krb_get_phost ();
80: extern int krb_get_krbhst ();
81: #ifdef DEBUG
82: extern KTEXT krb_create_death_packet ();
83: #endif /* DEBUG */
84: #endif /* STDC */
85: int mk_ap_req(authent, service, instance, realm, checksum)
86: KTEXT authent;
87: char *service, *instance, *realm;
88: u_long checksum;
89: {
90: return krb_mk_req(authent,service,instance,realm,checksum);
91: }
92:
93: int rd_ap_req(authent, service, instance, from_addr, ad, fn)
94: KTEXT authent;
95: char *service, *instance;
96: u_long from_addr;
97: AUTH_DAT *ad;
98: char *fn;
99: {
100: return krb_rd_req(authent,service,instance,from_addr,ad,fn);
101: }
102:
103: int an_to_ln(ad, lname)
104: AUTH_DAT *ad;
105: char *lname;
106: {
107: return krb_kntoln (ad,lname);
108: }
109:
110: int set_serv_key (key, cvt)
111: char *key;
112: int cvt;
113: {
114: return krb_set_key(key,cvt);
115: }
116:
117: int get_credentials (svc,inst,rlm,cred)
118: char *svc, *inst, *rlm;
119: CREDENTIALS *cred;
120: {
121: return krb_get_cred (svc, inst, rlm, cred);
122: }
123:
124: long mk_private_msg (in,out,in_length,schedule,key,sender,receiver)
125: u_char *in, *out;
126: u_long in_length;
127: Key_schedule schedule;
128: C_Block key;
129: struct sockaddr_in *sender, *receiver;
130: {
131: return krb_mk_priv (in,out,in_length,schedule,key,sender,receiver);
132: }
133:
134: long rd_private_msg (in,in_length,schedule,key,sender,receiver,msg_data)
135: u_char *in;
136: u_long in_length;
137: Key_schedule schedule;
138: C_Block key;
139: struct sockaddr_in *sender, *receiver;
140: MSG_DAT *msg_data;
141: {
142: return krb_rd_priv (in,in_length,schedule,key,sender,receiver,msg_data);
143: }
144:
145: long mk_safe_msg (in,out,in_length,key,sender,receiver)
146: u_char *in, *out;
147: u_long in_length;
148: C_Block *key;
149: struct sockaddr_in *sender, *receiver;
150: {
151: return krb_mk_safe (in,out,in_length,key,sender,receiver);
152: }
153:
154: long rd_safe_msg (in,length,key,sender,receiver,msg_data)
155: u_char *in;
156: u_long length;
157: C_Block *key;
158: struct sockaddr_in *sender, *receiver;
159: MSG_DAT *msg_data;
160: {
161: return krb_rd_safe (in,length,key,sender,receiver,msg_data);
162: }
163:
164: long mk_appl_err_msg (out,code,string)
165: u_char *out;
166: long code;
167: char *string;
168: {
169: return krb_mk_err (out,code,string);
170: }
171:
172: long rd_appl_err_msg (in,length,code,msg_data)
173: u_char *in;
174: u_long length;
175: long *code;
176: MSG_DAT *msg_data;
177: {
178: return krb_rd_err (in,length,code,msg_data);
179: }
180:
181: int get_in_tkt(user,instance,realm,service,sinstance,life,password)
182: char *user, *instance, *realm, *service, *sinstance;
183: int life;
184: char *password;
185: {
186: return krb_get_pw_in_tkt(user,instance,realm,service,sinstance,
187: life,password);
188: }
189:
190: int get_svc_in_tkt(user, instance, realm, service, sinstance, life, srvtab)
191: char *user, *instance, *realm, *service, *sinstance;
192: int life;
193: char *srvtab;
194: {
195: return krb_get_svc_in_tkt(user, instance, realm, service, sinstance,
196: life, srvtab);
197: }
198:
199: int get_pw_tkt(user,instance,realm,cpw)
200: char *user;
201: char *instance;
202: char *realm;
203: char *cpw;
204: {
205: return krb_get_pw_tkt(user,instance,realm,cpw);
206: }
207:
208: int
209: get_krbrlm (r, n)
210: char *r;
211: int n;
212: {
213: return krb_get_lream(r,n);
214: }
215:
216: int
217: krb_getrealm (host)
218: {
219: return krb_realmofhost(host);
220: }
221:
222: char *
223: get_phost (host)
224: char *host
225: {
226: return krb_get_phost(host);
227: }
228:
229: int
230: get_krbhst (h, r, n)
231: char *h;
232: char *r;
233: int n;
234: {
235: return krb_get_krbhst(h,r,n);
236: }
237: #ifdef DEBUG
238: struct ktext *create_death_packet(a_name)
239: char *a_name;
240: {
241: return krb_create_death_packet(a_name);
242: }
243: #endif /* DEBUG */
244:
245: #if 0
246: extern int krb_ck_repl ();
247:
248: int check_replay ()
249: {
250: return krb_ck_repl ();
251: }
252: #endif
253: #endif /* NCOMPAT */
This archive runs on limited infrastructure. Preserving old code on modern bandwidth. Automated agents are requested to crawl responsibly.