summaryrefslogtreecommitdiffstats
path: root/src/include
diff options
context:
space:
mode:
authorKen Raeburn <raeburn@mit.edu>2002-06-05 01:49:47 +0000
committerKen Raeburn <raeburn@mit.edu>2002-06-05 01:49:47 +0000
commit41040f094ce1ea792ab78b5e766d7da69ed72e64 (patch)
tree24f32278a0a3e936e2edb15365a9167ad7ba22b7 /src/include
parentbcc6b3c8263d1e8ba40a862d7ed676ef596d9503 (diff)
downloadkrb5-41040f094ce1ea792ab78b5e766d7da69ed72e64.tar.gz
krb5-41040f094ce1ea792ab78b5e766d7da69ed72e64.tar.xz
krb5-41040f094ce1ea792ab78b5e766d7da69ed72e64.zip
Separate send-to-kdc UDP code, export it via accessor interface, and call in to
it from krb524_sendto_kdc. Supply a socket type to krb5_locate_server and krb5_locate_kdc. git-svn-id: svn://anonsvn.mit.edu/krb5/trunk@14473 dc483132-0cff-0310-8789-dd5450dbe970
Diffstat (limited to 'src/include')
-rw-r--r--src/include/ChangeLog6
-rw-r--r--src/include/k5-int.h24
2 files changed, 21 insertions, 9 deletions
diff --git a/src/include/ChangeLog b/src/include/ChangeLog
index ba1fbf6f1..b228e57b6 100644
--- a/src/include/ChangeLog
+++ b/src/include/ChangeLog
@@ -1,5 +1,11 @@
2002-06-04 Ken Raeburn <raeburn@mit.edu>
+ * k5-int.h (krb5int_sendto_udp): Declare.
+ (krb5_sendto_kdc): Update declaration.
+ (KRB5INT_ACCESS_STRUCT_VERSION): Bump.
+ (struct _krb5int_access): Update locate_kdc interface; add
+ sendto_udp.
+
* fake-addrinfo.h [COPY_FIRST_CANONNAME]: Include string.h.
* k5-int.h (struct addrlist): Field "addrs" now points to
diff --git a/src/include/k5-int.h b/src/include/k5-int.h
index e53585a15..b384315ff 100644
--- a/src/include/k5-int.h
+++ b/src/include/k5-int.h
@@ -464,11 +464,15 @@ extern char *strdup (const char *);
#include <stdio.h>
+struct addrlist;
+
/* libos.spec */
krb5_error_code krb5_lock_file (krb5_context, int, int);
krb5_error_code krb5_unlock_file (krb5_context, int);
krb5_error_code krb5_sendto_kdc (krb5_context, const krb5_data *,
const krb5_data *, krb5_data *, int);
+krb5_error_code krb5int_sendto_udp (krb5_context, const krb5_data *,
+ const struct addrlist *, krb5_data *);
krb5_error_code krb5_get_krbhst (krb5_context, const krb5_data *, char *** );
krb5_error_code krb5_free_krbhst (krb5_context, char * const * );
krb5_error_code krb5_create_secure_file (krb5_context, const char * pathname);
@@ -1543,11 +1547,11 @@ void krb5int_set_prompt_types
/* To keep happy libraries which are (for now) accessing internal stuff */
/* Make sure to increment by one when changing the struct */
-#define KRB5INT_ACCESS_STRUCT_VERSION 4
+#define KRB5INT_ACCESS_STRUCT_VERSION 5
typedef struct _krb5int_access {
krb5_error_code (*krb5_locate_kdc) (krb5_context, const krb5_data *,
- struct addrlist *, int);
+ struct addrlist *, int, int);
krb5_error_code (*krb5_locate_server) (krb5_context, const krb5_data *,
struct addrlist *, int,
const char *, const char *,
@@ -1557,13 +1561,15 @@ typedef struct _krb5int_access {
unsigned int krb5_skdc_timeout_shift;
unsigned int krb5_skdc_timeout_1;
unsigned int krb5_max_dgram_size;
- const struct krb5_hash_provider *md5_hash_provider;
- const struct krb5_enc_provider *arcfour_enc_provider;
- krb5_error_code (* krb5_hmac)
- (const struct krb5_hash_provider *hash,
- const krb5_keyblock *key, unsigned int icount,
- const krb5_data *input, krb5_data *output);
- } krb5int_access;
+ const struct krb5_hash_provider *md5_hash_provider;
+ const struct krb5_enc_provider *arcfour_enc_provider;
+ krb5_error_code (* krb5_hmac) (const struct krb5_hash_provider *hash,
+ const krb5_keyblock *key,
+ unsigned int icount, const krb5_data *input,
+ krb5_data *output);
+ krb5_error_code (*sendto_udp) (krb5_context, const krb5_data *msg,
+ const struct addrlist *, krb5_data *reply);
+} krb5int_access;
#define KRB5INT_ACCESS_VERSION \
(((krb5_int32)((sizeof(krb5int_access) & 0xFFFF) | \