diff options
Diffstat (limited to 'crypto/heimdal/appl/test/uu_client.c')
-rw-r--r-- | crypto/heimdal/appl/test/uu_client.c | 22 |
1 files changed, 20 insertions, 2 deletions
diff --git a/crypto/heimdal/appl/test/uu_client.c b/crypto/heimdal/appl/test/uu_client.c index fae5bcbdb198..6113b8b569f9 100644 --- a/crypto/heimdal/appl/test/uu_client.c +++ b/crypto/heimdal/appl/test/uu_client.c @@ -32,7 +32,7 @@ */ #include "test_locl.h" -RCSID("$Id: uu_client.c,v 1.7 2000/12/31 07:41:39 assar Exp $"); +RCSID("$Id: uu_client.c 14719 2005-04-03 19:53:32Z lha $"); krb5_context context; @@ -50,6 +50,7 @@ proto (int sock, const char *hostname, const char *service) krb5_data data; krb5_data packet; krb5_creds mcred, cred; + krb5_ticket *ticket; addrlen = sizeof(local); if (getsockname (sock, (struct sockaddr *)&local, &addrlen) < 0 @@ -88,6 +89,8 @@ proto (int sock, const char *hostname, const char *service) if (status) krb5_err(context, 1, status, "krb5_auth_con_setaddr"); + krb5_cc_clear_mcred(&mcred); + status = krb5_cc_get_principal(context, ccache, &client); if(status) krb5_err(context, 1, status, "krb5_cc_get_principal"); @@ -98,6 +101,7 @@ proto (int sock, const char *hostname, const char *service) NULL); if(status) krb5_err(context, 1, status, "krb5_make_principal"); + mcred.client = client; status = krb5_cc_retrieve_cred(context, ccache, 0, &mcred, &cred); if(status) @@ -126,11 +130,25 @@ proto (int sock, const char *hostname, const char *service) krb5_err(context, 1, status, "krb5_auth_con_setuserkey"); status = krb5_recvauth(context, &auth_context, &sock, - VERSION, client, 0, NULL, NULL); + VERSION, client, 0, NULL, &ticket); if (status) krb5_err(context, 1, status, "krb5_recvauth"); + if (ticket->ticket.authorization_data) { + AuthorizationData *authz; + int i; + + printf("Authorization data:\n"); + + authz = ticket->ticket.authorization_data; + for (i = 0; i < authz->len; i++) { + printf("\ttype %d, length %lu\n", + authz->val[i].ad_type, + (unsigned long)authz->val[i].ad_data.length); + } + } + data.data = "hej"; data.length = 3; |