From: levitte Date: Mon, 29 Sep 2008 15:30:41 +0000 (+0000) Subject: First draft of personalization functionality X-Git-Tag: yubikey-personalisation_0.97-1~144 X-Git-Url: https://err.no/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=6becca86437be2dc0a396d375d392ef76cb73e94;p=yubikey-personalization First draft of personalization functionality git-svn-id: https://yubikey-personalization.googlecode.com/svn/trunk@17 b62f149e-849f-11dd-9899-c7ba65f7c4c7 --- diff --git a/ykpers.h b/ykpers.h new file mode 100644 index 0000000..f98c108 --- /dev/null +++ b/ykpers.h @@ -0,0 +1,48 @@ +/* -*- mode:C; c-file-style: "bsd" -*- */ +/* + * Copyright (c) 2008, Yubico AB + * All rights reserved. + * + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions are + * met: + * + * * Redistributions of source code must retain the above copyright + * notice, this list of conditions and the following disclaimer. + * + * * Redistributions in binary form must reproduce the above + * copyright notice, this list of conditions and the following + * disclaimer in the documentation and/or other materials provided + * with the distribution. + * + * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS + * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT + * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR + * A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT + * OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, + * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT + * LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, + * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY + * THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT + * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE + * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + */ + +#ifndef __YKPERS_H_INCLUDED__ +#define __YKPERS_H_INCLUDED__ + +#include + +int ykp_AES_key_from_passphrase(CONFIG *cfg, const char *passphrase); +int ykp_random_AES_key(CONFIG *cfg); +int ykp_set_access_code(CONFIG *cfg, unsigned char *access_code); + +int ykp_write_config(CONFIG *cfg, + int (*writer)(const void *buf, size_t count, + void *userdata)); +int ykp_read_config(CONFIG *cfg, + int (*reader)(const void *buf, size_t count, + void *userdata)); + + +#endif // __YKPERS_H_INCLUDED__