From 6af6e27c50d42b330389b95ace57498097a11415 Mon Sep 17 00:00:00 2001 From: =?utf8?q?Love=20H=C3=B6rnquist=20=C3=85strand?= Date: Mon, 21 Nov 2011 20:20:13 -0800 Subject: [PATCH] glue in send_to_kdc --- kdc/kdc-tester.c | 54 ++++++++++++++++++++++++++++-------------------------- 1 file changed, 28 insertions(+), 26 deletions(-) diff --git a/kdc/kdc-tester.c b/kdc/kdc-tester.c index 178c9e9e5..0b0a1bc05 100644 --- a/kdc/kdc-tester.c +++ b/kdc/kdc-tester.c @@ -38,25 +38,24 @@ static krb5_kdc_configuration *kdc_config; static krb5_context kdc_context; -#if 0 - static struct sockaddr_storage sa; -static krb5_socklen_t salen = sizeof(sa); static const char *astr = "0.0.0.0"; -static void -send_to_kdc(krb5_context context) +static krb5_error_code +send_to_kdc(krb5_context c, void *ptr, krb5_krbhst_info *hi, time_t timeout, + const krb5_data *in, krb5_data *out) { krb5_error_code ret; ret = krb5_kdc_process_request(kdc_context, kdc_config, - d.data, d.length, - &r, NULL, astr, + in->data, in->length, + out, NULL, astr, (struct sockaddr *)&sa, 0); if (ret) - krb5_err(context, 1, ret, "krb5_kdc_process_request"); + krb5_err(c, 1, ret, "krb5_kdc_process_request"); + + return 0; } -#endif /* * @@ -177,26 +176,29 @@ main(int argc, char **argv) if (argc == 0) errx(1, "missing operations"); + krb5_set_send_to_kdc_func(kdc_context, send_to_kdc, NULL); - void *buf; - size_t size; - heim_object_t o; - - if (rk_undumpdata(argv[0], &buf, &size)) - errx(1, "undumpdata: %s", argv[0]); + { + void *buf; + size_t size; + heim_object_t o; - o = heim_json_create_with_bytes(buf, size, NULL); - free(buf); - if (o == NULL) + if (rk_undumpdata(argv[0], &buf, &size)) + errx(1, "undumpdata: %s", argv[0]); + + o = heim_json_create_with_bytes(buf, size, NULL); + free(buf); + if (o == NULL) errx(1, "heim_json"); - - /* - * do the work here - */ - - eval_object(o); - - heim_release(o); + + /* + * do the work here + */ + + eval_object(o); + + heim_release(o); + } krb5_free_context(kdc_context); return 0; -- 2.11.4.GIT