home *** CD-ROM | disk | FTP | other *** search
/ InfoMagic Source Code 1993 July / THE_SOURCE_CODE_CD_ROM.iso / bsd_srcs / kerberosIV / krb / krbglue.c < prev    next >
Encoding:
C/C++ Source or Header  |  1990-05-11  |  6.0 KB  |  254 lines

  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 */
  254.