4fcd61b50f20de0632eaebbd58dd640395cac417
[platform/upstream/krb5.git] / src / tests / gssapi / t_imp_name.c
1 /* -*- mode: c; c-basic-offset: 4; indent-tabs-mode: nil -*- */
2 /*
3  * Copyright 1996, Massachusetts Institute of Technology.
4  * All Rights Reserved.
5  *
6  * Export of this software from the United States of America may
7  *   require a specific license from the United States Government.
8  *   It is the responsibility of any person or organization contemplating
9  *   export to obtain such a license before exporting.
10  *
11  * WITHIN THAT CONSTRAINT, permission to use, copy, modify, and
12  * distribute this software and its documentation for any purpose and
13  * without fee is hereby granted, provided that the above copyright
14  * notice appear in all copies and that both that copyright notice and
15  * this permission notice appear in supporting documentation, and that
16  * the name of M.I.T. not be used in advertising or publicity pertaining
17  * to distribution of the software without specific, written prior
18  * permission.  Furthermore if you modify this software you must label
19  * your software as modified software and not distribute it in such a
20  * fashion that it might be confused with the original M.I.T. software.
21  * M.I.T. makes no representations about the suitability of
22  * this software for any purpose.  It is provided "as is" without express
23  * or implied warranty.
24  */
25
26 /*
27  * Simple test program for testing how GSSAPI import name works.  (May
28  * be made into a more full-fledged test program later.)
29  */
30
31 #include <stdio.h>
32
33 #include "common.h"
34
35 int
36 main(int argc, char **argv)
37 {
38     const char *name = "host@dcl.mit.edu";
39     OM_uint32 major, minor;
40     gss_name_t gss_name;
41     gss_buffer_desc buf;
42     gss_OID name_oid;
43
44     gss_name = import_name(name);
45
46     major = gss_display_name(&minor, gss_name, &buf, &name_oid);
47     check_gsserr("gss_display_name", major, minor);
48     printf("name is: %.*s\n", (int)buf.length, (char *)buf.value);
49     (void)gss_release_buffer(&minor, &buf);
50
51     major = gss_oid_to_str(&minor, name_oid, &buf);
52     check_gsserr("gss_oid_to_str", major, minor);
53     printf("name type is: %.*s\n", (int)buf.length, (char *)buf.value);
54     (void)gss_release_buffer(&minor, &buf);
55     (void)gss_release_name(&minor, &gss_name);
56
57     return 0;
58 }