Book a Demo!
CoCalc Logo Icon
StoreFeaturesDocsShareSupportNewsAboutPoliciesSign UpSign In
freebsd
GitHub Repository: freebsd/freebsd-src
Path: blob/main/crypto/heimdal/kadmin/test_util.c
34874 views
1
/*
2
* Copyright (c) 2006 Kungliga Tekniska Högskolan
3
* (Royal Institute of Technology, Stockholm, Sweden).
4
* All rights reserved.
5
*
6
* Redistribution and use in source and binary forms, with or without
7
* modification, are permitted provided that the following conditions
8
* are met:
9
*
10
* 1. Redistributions of source code must retain the above copyright
11
* notice, this list of conditions and the following disclaimer.
12
*
13
* 2. Redistributions in binary form must reproduce the above copyright
14
* notice, this list of conditions and the following disclaimer in the
15
* documentation and/or other materials provided with the distribution.
16
*
17
* 3. Neither the name of KTH nor the names of its contributors may be
18
* used to endorse or promote products derived from this software without
19
* specific prior written permission.
20
*
21
* THIS SOFTWARE IS PROVIDED BY KTH AND ITS CONTRIBUTORS ``AS IS'' AND ANY
22
* EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
23
* IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR
24
* PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL KTH OR ITS CONTRIBUTORS BE
25
* LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR
26
* CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
27
* SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR
28
* BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY,
29
* WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR
30
* OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF
31
* ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. */
32
33
#include "kadmin_locl.h"
34
35
krb5_context context;
36
void *kadm_handle;
37
38
struct {
39
const char *str;
40
int ret;
41
time_t t;
42
} ts[] = {
43
{ "2006-12-22 18:09:00", 0, 1166810940 },
44
{ "2006-12-22", 0, 1166831999 },
45
{ "2006-12-22 23:59:59", 0, 1166831999 }
46
};
47
48
static int
49
test_time(void)
50
{
51
int i, errors = 0;
52
53
for (i = 0; i < sizeof(ts)/sizeof(ts[0]); i++) {
54
time_t t;
55
int ret;
56
57
ret = str2time_t (ts[i].str, &t);
58
if (ret != ts[i].ret) {
59
printf("%d: %d is wrong ret\n", i, ret);
60
errors++;
61
}
62
else if (t != ts[i].t) {
63
printf("%d: %d is wrong time\n", i, (int)t);
64
errors++;
65
}
66
}
67
68
return errors;
69
}
70
71
72
int
73
main(int argc, char **argv)
74
{
75
krb5_error_code ret;
76
77
setprogname(argv[0]);
78
79
ret = krb5_init_context(&context);
80
if (ret)
81
errx (1, "krb5_init_context failed: %d", ret);
82
83
ret = 0;
84
ret += test_time();
85
86
krb5_free_context(context);
87
88
return ret;
89
}
90
91
92