#
# CDDL HEADER START
#
# The contents of this file are subject to the terms of the
# Common Development and Distribution License (the "License").
# You may not use this file except in compliance with the License.
#
# You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE
# or http://www.opensolaris.org/os/licensing.
# See the License for the specific language governing permissions
# and limitations under the License.
#
# When distributing Covered Code, include this CDDL HEADER in each
# file and include the License file at usr/src/OPENSOLARIS.LICENSE.
# If applicable, add the following below this CDDL HEADER, with the
# fields enclosed by brackets "[]" replaced with your own identifying
# information: Portions Copyright [yyyy] [name of copyright owner]
#
# CDDL HEADER END
#

#
# Copyright (c) 2008, 2010, Oracle and/or its affiliates. All rights reserved.
# Copyright 2017 Jason King.
# Copyright 2019 Joyent, Inc.
#

#
# MAPFILE HEADER START
#
# WARNING:  STOP NOW.  DO NOT MODIFY THIS FILE.
# Object versioning must comply with the rules detailed in
#
#	usr/src/lib/README.mapfiles
#
# You should not be making modifications here until you've read the most current
# copy of that file. If you need help, contact a gatekeeper for guidance.
#
# MAPFILE HEADER END
#


$mapfile_version 2

SYMBOL_VERSION SUNWprivate {
    global:
	aes_alloc_keysched;
	aes_copy_block;
	aes_copy_block64;
	aes_decrypt_block;
	aes_decrypt_contiguous_blocks;
	aes_encrypt_block;
	aes_encrypt_contiguous_blocks;
	aes_init_keysched;
	aes_xor_block;
	arcfour_crypt;
	arcfour_key_init;
$if _ELF64
	big_One			{
				  ASSERT = {
					  TYPE = OBJECT;
					  SIZE = 24;
					};
				};
	big_Two			{
				  ASSERT = {
					  TYPE = OBJECT;
					  SIZE = 24;
					};
				};
$elif _ELF32
	big_One			{
				  ASSERT = {
					  TYPE = OBJECT;
					  SIZE = 20;
					};
				};
	big_Two			{
				  ASSERT = {
					  TYPE = OBJECT;
					  SIZE = 20;
					};
				};
$else
$error unknown ELFCLASS
$endif
	big_Two;
	big_add;
	big_bitlength;
	big_cmp_abs;
	big_copy;
	big_div_pos;
	big_ext_gcd_pos;
	big_extend;
	big_finish;
	big_init1;
	big_init;
	big_modexp;
	big_modexp_crt;
	big_mul;
	big_nextprime_pos;
	big_random;
	big_sub;
	big_sub_pos;
	bignum2bytestring;
	blowfish_alloc_keysched;
	blowfish_decrypt_contiguous_blocks;
	blowfish_encrypt_contiguous_blocks;
	blowfish_init_keysched;
	bytestring2bignum;
	cbc_alloc_ctx;
	cbc_init_ctx;
	ccm_alloc_ctx;
	ccm_decrypt_final;
	ccm_encrypt_final;
	ccm_init_ctx;
	cmac_alloc_ctx;
	cmac_init_ctx;
	cmac_mode_final;
	ctr_alloc_ctx;
	ctr_init_ctx;
	des3_crunch_block;
	des_alloc_keysched;
	des_crunch_block;
	des_decrypt_contiguous_blocks;
	des_encrypt_contiguous_blocks;
	des_init_keysched;
	des_keycheck;
	dh_genkey_pair;
	dh_key_derive;
	dsa_genkey_pair;
	dsa_sign;
	dsa_verify;
	ecb_alloc_ctx;
	gcm_alloc_ctx;
	gcm_decrypt_final;
	gcm_encrypt_final;
	gcm_init_ctx;
	pkcs1_decode;
	pkcs1_encode;
	pkcs7_decode;
	pkcs7_encode;
	rsa_decrypt;
	rsa_encrypt;
	rsa_genkey_pair;
	DEFAULT_PUB_EXPO	{
				  ASSERT = {
					  TYPE = OBJECT;
					  SIZE = 3;
					};
				};
	MD5_DER_PREFIX		{
				  ASSERT = {
					  TYPE = OBJECT;
					  SIZE = 18;
					};
				};
	SHA1_DER_PREFIX		{
				  ASSERT = {
					  TYPE = OBJECT;
					  SIZE = 15;
					};
				};
	SHA1_DER_PREFIX_OID	{
				  ASSERT = {
					  TYPE = OBJECT;
					  SIZE = 13;
					};
				};
	SHA256_DER_PREFIX	{
				  ASSERT = {
					  TYPE = OBJECT;
					  SIZE = 19;
					};
				};
	SHA384_DER_PREFIX	{
				  ASSERT = {
					  TYPE = OBJECT;
					  SIZE = 19;
					};
				};
	SHA512_DER_PREFIX	{
				  ASSERT = {
					  TYPE = OBJECT;
					  SIZE = 19;
					};
				};
    local:
	*;
};
