kssl.h revision 2bd70d4be73561631df9cb3d9eb4c65fa94fa665
cc8190433d13f5e9de618c5d7f10c824c0c1919cgryzor * CDDL HEADER START
cc8190433d13f5e9de618c5d7f10c824c0c1919cgryzor * The contents of this file are subject to the terms of the
cc8190433d13f5e9de618c5d7f10c824c0c1919cgryzor * Common Development and Distribution License (the "License").
cc8190433d13f5e9de618c5d7f10c824c0c1919cgryzor * You may not use this file except in compliance with the License.
cc8190433d13f5e9de618c5d7f10c824c0c1919cgryzor * You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE
cc8190433d13f5e9de618c5d7f10c824c0c1919cgryzor * See the License for the specific language governing permissions
d29d9ab4614ff992b0e8de6e2b88d52b6f1f153erbowen * and limitations under the License.
d29d9ab4614ff992b0e8de6e2b88d52b6f1f153erbowen * When distributing Covered Code, include this CDDL HEADER in each
d29d9ab4614ff992b0e8de6e2b88d52b6f1f153erbowen * file and include the License file at usr/src/OPENSOLARIS.LICENSE.
cc8190433d13f5e9de618c5d7f10c824c0c1919cgryzor * If applicable, add the following below this CDDL HEADER, with the
cc8190433d13f5e9de618c5d7f10c824c0c1919cgryzor * fields enclosed by brackets "[]" replaced with your own identifying
cc8190433d13f5e9de618c5d7f10c824c0c1919cgryzor * information: Portions Copyright [yyyy] [name of copyright owner]
3f08db06526d6901aa08c110b5bc7dde6bc39905nd * CDDL HEADER END
cc8190433d13f5e9de618c5d7f10c824c0c1919cgryzor * Copyright 2008 Sun Microsystems, Inc. All rights reserved.
3f08db06526d6901aa08c110b5bc7dde6bc39905nd * Use is subject to license terms.
cc8190433d13f5e9de618c5d7f10c824c0c1919cgryzor#pragma ident "%Z%%M% %I% %E% SMI"
f0fa55ff14fa0bf8fd72d989f6625de6dc3260c8igalicextern "C" {
cc8190433d13f5e9de618c5d7f10c824c0c1919cgryzor/* These are re-definition from <crypto/ioctl.h> */
cc8190433d13f5e9de618c5d7f10c824c0c1919cgryzortypedef struct kssl_object_attribute {
48c64aeceef385e19025b384bd719b2a9789592dnd uint32_t ka_value_offset; /* offset to attribute value */
cc8190433d13f5e9de618c5d7f10c824c0c1919cgryzor uint32_t ka_value_len; /* length of attribute value */
cc8190433d13f5e9de618c5d7f10c824c0c1919cgryzortypedef struct kssl_key {
cc8190433d13f5e9de618c5d7f10c824c0c1919cgryzor crypto_key_format_t ks_format; /* format identifier */
cc8190433d13f5e9de618c5d7f10c824c0c1919cgryzor uint32_t ks_attrs_offset; /* offset to the attributes */
cc8190433d13f5e9de618c5d7f10c824c0c1919cgryzortypedef struct kssl_certs_s {
cc8190433d13f5e9de618c5d7f10c824c0c1919cgryzor uint32_t sc_sizes_offset; /* offset to certificates sizes array */
cc8190433d13f5e9de618c5d7f10c824c0c1919cgryzor uint32_t sc_certs_offset; /* offset to certificates array */
cc8190433d13f5e9de618c5d7f10c824c0c1919cgryzortypedef struct kssl_tokinfo_s {
cc8190433d13f5e9de618c5d7f10c824c0c1919cgryzor#define DEFAULT_SID_TIMEOUT 86400 /* 24 hours in seconds */
c8c717fafa0a09ed13469a603a178921b851dd22igalictypedef struct kssl_params_s {
cc8190433d13f5e9de618c5d7f10c824c0c1919cgryzor uint64_t kssl_params_size; /* total params buf len */
cc8190433d13f5e9de618c5d7f10c824c0c1919cgryzor /* address and port number */
cc8190433d13f5e9de618c5d7f10c824c0c1919cgryzor uint32_t kssl_session_cache_timeout; /* In seconds */
cc8190433d13f5e9de618c5d7f10c824c0c1919cgryzor * Contains ordered list of cipher suites. We do not include
cc8190433d13f5e9de618c5d7f10c824c0c1919cgryzor * the one suite with no encryption. Hence the -1.
cc8190433d13f5e9de618c5d7f10c824c0c1919cgryzor /* certificates */
cc8190433d13f5e9de618c5d7f10c824c0c1919cgryzor /* private key */
cc8190433d13f5e9de618c5d7f10c824c0c1919cgryzor/* The ioctls to /dev/kssl */
cc8190433d13f5e9de618c5d7f10c824c0c1919cgryzor#define KSSL_IOC(x) (('s' << 24) | ('s' << 16) | ('l' << 8) | (x))
cc8190433d13f5e9de618c5d7f10c824c0c1919cgryzor#endif /* _KERNEL */
7fec19672a491661b2fe4b29f685bc7f4efa64d4nd#endif /* _INET_KSSL_KSSL_H */