summaryrefslogtreecommitdiffstats
path: root/src/include
diff options
context:
space:
mode:
authorTom Yu <tlyu@mit.edu>2003-02-11 01:35:32 +0000
committerTom Yu <tlyu@mit.edu>2003-02-11 01:35:32 +0000
commit208e27d7e52cdaa9ed75bcfbd22b0527f5a2c4df (patch)
treef4fddbb0ce88584bbc8ce7e45800259228159fb3 /src/include
parent5a2fb0d6ee3d6db893fbe34c4097c019f8a4027d (diff)
downloadkrb5-208e27d7e52cdaa9ed75bcfbd22b0527f5a2c4df.tar.gz
krb5-208e27d7e52cdaa9ed75bcfbd22b0527f5a2c4df.tar.xz
krb5-208e27d7e52cdaa9ed75bcfbd22b0527f5a2c4df.zip
Fix lots of things to compile on Unix. Fix some typos
By means of carrying through local addresses in many places, eliminate or reduce sections of code depending on TARGET_OS_MAC conditionals. Conditionalize some prototypes in krb.h with KRB_PRIVATE, to avoid leakage on Mac. git-svn-id: svn://anonsvn.mit.edu/krb5/trunk@15173 dc483132-0cff-0310-8789-dd5450dbe970
Diffstat (limited to 'src/include')
-rw-r--r--src/include/kerberosIV/ChangeLog7
-rw-r--r--src/include/kerberosIV/krb.h40
2 files changed, 42 insertions, 5 deletions
diff --git a/src/include/kerberosIV/ChangeLog b/src/include/kerberosIV/ChangeLog
index 6c13b97703..6664127be0 100644
--- a/src/include/kerberosIV/ChangeLog
+++ b/src/include/kerberosIV/ChangeLog
@@ -1,3 +1,10 @@
+2003-02-10 Tom Yu <tlyu@mit.edu>
+
+ * krb.h: Add KRB_PRIVATE conditionals around lots of stuff that
+ doesn't belong in krb.h, and historically hasn't been in krb.h on
+ KfM. For now, everything except MacOS will define KRB_PRIVATE to
+ 1.
+
2003-02-07 Tom Yu <tlyu@mit.edu>
* krb.h: Declare krb_err_txt differently on Mac.
diff --git a/src/include/kerberosIV/krb.h b/src/include/kerberosIV/krb.h
index 684f509686..38b35e57be 100644
--- a/src/include/kerberosIV/krb.h
+++ b/src/include/kerberosIV/krb.h
@@ -37,6 +37,20 @@
# endif
#endif
+/*
+ * For MacOS, don't expose prototypes of various private functions.
+ * Unfortuantely, they've leaked out everywhere else.
+ */
+#if defined(macintosh) || (defined(__MACH__) && defined(__APPLE__))
+# ifndef KRB_PRIVATE
+# define KRB_PRIVATE 0
+# endif
+#else
+# ifndef KRB_PRIVATE
+# define KRB_PRIVATE 1
+# endif
+#endif
+
/* Define u_char, u_short, u_int, and u_long. */
/* XXX these typdef names are not standardized! */
#include <sys/types.h>
@@ -446,12 +460,14 @@ int KRB5_CALLCONV krb_get_in_tkt
(char *k_user, char *instance, char *realm,
char *service, char *sinst, int life,
key_proc_type, decrypt_tkt_type, char *arg);
+#if KRB_PRIVATE
/* Previously not KRB5_CALLCONV */
int KRB5_CALLCONV krb_get_in_tkt_preauth
(char *k_user, char *instance, char *realm,
char *service, char *sinst, int life,
key_proc_type, decrypt_tkt_type, char *arg,
char *preauth_p, int preauth_len);
+#endif
/* From KfM */
int KRB5_CALLCONV krb_get_in_tkt_creds(char *, char *, char *, char *, char *,
int, key_proc_type, decrypt_tkt_type, char *, CREDENTIALS *);
@@ -473,10 +489,12 @@ int KRB5_CALLCONV krb_get_pw_in_tkt
(char *k_user, char *instance, char *realm,
char *service, char *sinstance,
int life, char *password);
+#if KRB_PRIVATE
int KRB5_CALLCONV krb_get_pw_in_tkt_preauth
(char *k_user, char *instance, char *realm,
char *service, char *sinstance,
int life, char *password);
+#endif
int KRB5_CALLCONV
krb_get_pw_in_tkt_creds(char *, char *, char *,
char *, char *, int, char *, CREDENTIALS *);
@@ -499,11 +517,14 @@ int KRB5_CALLCONV krb_get_ticket_for_service
char *buf, unsigned KRB4_32 *buflen,
int checksum, des_cblock, Key_schedule,
char *version, int includeVersion);
+#if KRB_PRIVATE
/* in_tkt.c */
int KRB5_CALLCONV in_tkt
(char *name, char *inst);
int KRB5_CALLCONV krb_in_tkt
(char *pname, char *pinst, char *realm);
+#endif
+
/* kname_parse.c */
int KRB5_CALLCONV kname_parse
(char *name, char *inst, char *realm,
@@ -543,6 +564,7 @@ int KRB5_CALLCONV krb_mk_auth
/* mk_err.c */
long KRB5_CALLCONV krb_mk_err
(u_char *out, KRB4_32 k4_code, char *text);
+#if KRB_PRIVATE
/* mk_preauth.c */
int krb_mk_preauth
(char **preauth_p, int *preauth_len, key_proc_type,
@@ -550,6 +572,7 @@ int krb_mk_preauth
C_Block);
void krb_free_preauth
(char * preauth_p, int len);
+#endif
/* mk_priv.c */
long KRB5_CALLCONV krb_mk_priv
(u_char *in, u_char *out,
@@ -574,18 +597,18 @@ long KRB5_CALLCONV krb_mk_safe
C_Block *,
struct sockaddr_in *sender,
struct sockaddr_in *receiver);
+#if KRB_PRIVATE
/* netread.c */
-/* XXX private */
int krb_net_read
(int fd, char *buf, int len);
/* netwrite.c */
-/* XXX private */
int krb_net_write
(int fd, char *buf, int len);
/* pkt_clen.c */
-/* XXX private */
int pkt_clen
(KTEXT);
+#endif
+
/* put_svc_key.c */
int KRB5_CALLCONV put_svc_key
(char *sfile,
@@ -647,6 +670,7 @@ int KRB5_CALLCONV krb_sendauth
struct sockaddr_in *laddr, struct sockaddr_in *faddr,
char *version);
+#if KRB_PRIVATE
/* save_creds.c */
int KRB5_CALLCONV krb_save_credentials
(char *service, char *instance, char *realm,
@@ -656,15 +680,17 @@ int KRB5_CALLCONV krb_save_credentials
/* XXX PRIVATE? KfM doesn't export. */
int send_to_kdc
(KTEXT pkt, KTEXT rpkt, char *realm);
+#endif
/* tkt_string.c */
/* Used to return pointer to non-const char */
const char * KRB5_CALLCONV tkt_string
(void);
-/* Previously not KRB5_CALLCONV */
+/* Previously not KRB5_CALLCONV, and previously took pointer to non-const. */
void KRB5_CALLCONV krb_set_tkt_string
- (char *);
+ (const char *);
+#if KRB_PRIVATE
/* tf_util.c */
int KRB5_CALLCONV tf_init (const char *tf_name, int rw);
@@ -675,7 +701,9 @@ int KRB5_CALLCONV tf_get_pinst (char *p);
int KRB5_CALLCONV tf_get_cred (CREDENTIALS *c);
void KRB5_CALLCONV tf_close (void);
+#endif
+#if KRB_PRIVATE
/* unix_time.c */
unsigned KRB4_32 KRB5_CALLCONV unix_time_gmt_unixsec
(unsigned KRB4_32 *);
@@ -724,6 +752,8 @@ extern int krb_set_key_krb5(krb5_context ctx, krb5_keyblock *key);
#endif
+#endif /* KRB_PRIVATE */
+
/* FSp-glue.c */
#if TARGET_OS_MAC && defined(__FILES__)
int KRB5_CALLCONV FSp_krb_get_svc_in_tkt(char *, char *, char *, char *,