Blame src/lib/kadm5/unit-test/randkey-test.c
|
Packit |
fd8b60 |
/* -*- mode: c; c-basic-offset: 4; indent-tabs-mode: nil -*- */
|
|
Packit |
fd8b60 |
#include <kadm5/admin.h>
|
|
Packit |
fd8b60 |
#include <com_err.h>
|
|
Packit |
fd8b60 |
#include <stdio.h>
|
|
Packit |
fd8b60 |
#include <krb5.h>
|
|
Packit |
fd8b60 |
#include <sys/socket.h>
|
|
Packit |
fd8b60 |
#include <netinet/in.h>
|
|
Packit |
fd8b60 |
#include <string.h>
|
|
Packit |
fd8b60 |
|
|
Packit |
fd8b60 |
#define TEST_NUM 1000
|
|
Packit |
fd8b60 |
|
|
Packit |
fd8b60 |
int main()
|
|
Packit |
fd8b60 |
{
|
|
Packit |
fd8b60 |
kadm5_ret_t ret;
|
|
Packit |
fd8b60 |
krb5_keyblock *keys[TEST_NUM];
|
|
Packit |
fd8b60 |
krb5_principal tprinc;
|
|
Packit |
fd8b60 |
krb5_keyblock *newkey;
|
|
Packit |
fd8b60 |
krb5_context context;
|
|
Packit |
fd8b60 |
void *server_handle;
|
|
Packit |
fd8b60 |
|
|
Packit |
fd8b60 |
int x, i;
|
|
Packit |
fd8b60 |
|
|
Packit |
fd8b60 |
kadm5_init_krb5_context(&context);
|
|
Packit |
fd8b60 |
|
|
Packit |
fd8b60 |
krb5_parse_name(context, "testuser", &tprinc);
|
|
Packit |
fd8b60 |
ret = kadm5_init(context, "admin", "admin", KADM5_ADMIN_SERVICE, NULL,
|
|
Packit |
fd8b60 |
KADM5_STRUCT_VERSION, KADM5_API_VERSION_4, NULL,
|
|
Packit |
fd8b60 |
&server_handle);
|
|
Packit |
fd8b60 |
if(ret != KADM5_OK) {
|
|
Packit |
fd8b60 |
com_err("test", ret, "init");
|
|
Packit |
fd8b60 |
exit(2);
|
|
Packit |
fd8b60 |
}
|
|
Packit |
fd8b60 |
for(x = 0; x < TEST_NUM; x++) {
|
|
Packit |
fd8b60 |
kadm5_randkey_principal(server_handle, tprinc, &keys[x], NULL);
|
|
Packit |
fd8b60 |
for(i = 0; i < x; i++) {
|
|
Packit |
fd8b60 |
if (!memcmp(newkey->contents, keys[i]->contents, newkey->length))
|
|
Packit |
fd8b60 |
puts("match found");
|
|
Packit |
fd8b60 |
}
|
|
Packit |
fd8b60 |
}
|
|
Packit |
fd8b60 |
kadm5_destroy(server_handle);
|
|
Packit |
fd8b60 |
exit(0);
|
|
Packit |
fd8b60 |
}
|