171269a22SAnthony Scarpino#
271269a22SAnthony Scarpino# CDDL HEADER START
371269a22SAnthony Scarpino#
471269a22SAnthony Scarpino# The contents of this file are subject to the terms of the
571269a22SAnthony Scarpino# Common Development and Distribution License (the "License").
671269a22SAnthony Scarpino# You may not use this file except in compliance with the License.
771269a22SAnthony Scarpino#
871269a22SAnthony Scarpino# You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE
971269a22SAnthony Scarpino# or http://www.opensolaris.org/os/licensing.
1071269a22SAnthony Scarpino# See the License for the specific language governing permissions
1171269a22SAnthony Scarpino# and limitations under the License.
1271269a22SAnthony Scarpino#
1371269a22SAnthony Scarpino# When distributing Covered Code, include this CDDL HEADER in each
1471269a22SAnthony Scarpino# file and include the License file at usr/src/OPENSOLARIS.LICENSE.
1571269a22SAnthony Scarpino# If applicable, add the following below this CDDL HEADER, with the
1671269a22SAnthony Scarpino# fields enclosed by brackets "[]" replaced with your own identifying
1771269a22SAnthony Scarpino# information: Portions Copyright [yyyy] [name of copyright owner]
1871269a22SAnthony Scarpino#
1971269a22SAnthony Scarpino# CDDL HEADER END
2071269a22SAnthony Scarpino#
21726fad2aSDina K Nimeh
22726fad2aSDina K Nimeh#
23726fad2aSDina K Nimeh# Copyright (c) 2008, 2010, Oracle and/or its affiliates. All rights reserved.
24*fb261280SJason King# Copyright 2017 Jason King.
25*fb261280SJason King# Copyright (c) 2018, Joyent, Inc.
2671269a22SAnthony Scarpino#
27726fad2aSDina K Nimeh
2871269a22SAnthony Scarpino# AES
291e49577aSRod EvansAES_DIR =		$(SRC)/common/crypto/aes
301e49577aSRod EvansAES_COMMON_OBJS =	aes_impl.o aes_modes.o
311e49577aSRod EvansAES_COMMON_SRC =	$(AES_COMMON_OBJS:%.o=$(AES_DIR)/%.c)
321e49577aSRod EvansAES_FLAGS =		-I$(AES_DIR)
3371269a22SAnthony Scarpino
3471269a22SAnthony Scarpino# Blowfish
351e49577aSRod EvansBLOWFISH_DIR =		$(SRC)/common/crypto/blowfish
361e49577aSRod EvansBLOWFISH_COMMON_OBJS =	blowfish_impl.o
371e49577aSRod EvansBLOWFISH_COMMON_SRC =	$(BLOWFISH_COMMON_OBJS:%.o=$(BLOWFISH_DIR)/%.c)
381e49577aSRod EvansBLOWFISH_FLAGS =	-I$(BLOWFISH_DIR)
3971269a22SAnthony Scarpino
4071269a22SAnthony Scarpino# ARCFour
411e49577aSRod EvansARCFOUR_DIR =		$(SRC)/common/crypto/arcfour
421e49577aSRod EvansARCFOUR_COMMON_OBJS =	arcfour_crypt.o
431e49577aSRod EvansARCFOUR_COMMON_SRC =	$(ARCFOUR_COMMON_OBJS:%.o=$(ARCFOUR_DIR)/%.c)
441e49577aSRod EvansARCFOUR_FLAGS =		-I$(ARCFOUR_DIR)
4571269a22SAnthony Scarpino
4671269a22SAnthony Scarpino# DES
471e49577aSRod EvansDES_DIR =		$(SRC)/common/crypto/des
481e49577aSRod EvansDES_COMMON_OBJS =	des_impl.o des_ks.o
491e49577aSRod EvansDES_COMMON_SRC =	$(DES_COMMON_OBJS:%.o=$(DES_DIR)/%.c)
501e49577aSRod EvansDES_FLAGS =		-I$(DES_DIR)
5171269a22SAnthony Scarpino
52726fad2aSDina K Nimeh# BIGNUM -- needed by DH, DSA, RSA
531e49577aSRod EvansBIGNUM_DIR =		$(SRC)/common/bignum
541e49577aSRod EvansBIGNUM_COMMON_OBJS =	bignumimpl.o
551e49577aSRod EvansBIGNUM_COMMON_SRC =	$(BIGNUM_COMMON_OBJS:%.o=$(BIGNUM_DIR)/%.c)
561e49577aSRod EvansBIGNUM_FLAGS =		-I$(BIGNUM_DIR)
5771269a22SAnthony Scarpino
5871269a22SAnthony Scarpino# Modes
591e49577aSRod EvansMODES_DIR =		$(SRC)/common/crypto/modes
60*fb261280SJason KingMODES_COMMON_OBJS =	modes.o ecb.o cbc.o ctr.o ccm.o gcm.o
611e49577aSRod EvansMODES_COMMON_SRC =	$(MODES_COMMON_OBJS:%.o=$(MODES_DIR)/%.c)
621e49577aSRod EvansMODES_FLAGS =		-I$(MODES_DIR)
63726fad2aSDina K Nimeh
64726fad2aSDina K Nimeh# DH
651e49577aSRod EvansDH_DIR =		$(SRC)/common/crypto/dh
661e49577aSRod EvansDH_COMMON_OBJS =	dh_impl.o
671e49577aSRod EvansDH_COMMON_SRC =		$(DH_COMMON_OBJS:%.o=$(DH_DIR)/%.c)
681e49577aSRod EvansDH_FLAGS =		$(BIGNUM_FLAGS) -I$(DH_DIR)
69726fad2aSDina K Nimeh
70726fad2aSDina K Nimeh# DSA
711e49577aSRod EvansDSA_DIR =		$(SRC)/common/crypto/dsa
721e49577aSRod EvansDSA_COMMON_OBJS =	dsa_impl.o
731e49577aSRod EvansDSA_COMMON_SRC =	$(DSA_COMMON_OBJS:%.o=$(DSA_DIR)/%.c)
741e49577aSRod EvansDSA_FLAGS =		$(BIGNUM_FLAGS) -I$(DSA_DIR)
75726fad2aSDina K Nimeh
76726fad2aSDina K Nimeh# RSA
771e49577aSRod EvansRSA_DIR =		$(SRC)/common/crypto/rsa
781e49577aSRod EvansRSA_COMMON_OBJS =	rsa_impl.o
791e49577aSRod EvansRSA_COMMON_SRC =	$(RSA_COMMON_OBJS:%.o=$(RSA_DIR)/%.c)
801e49577aSRod EvansRSA_FLAGS =		$(BIGNUM_FLAGS) -I$(RSA_DIR)
81726fad2aSDina K Nimeh
82726fad2aSDina K Nimeh# PADDING -- needed by RSA
831e49577aSRod EvansPAD_DIR =		$(SRC)/common/crypto/padding
841e49577aSRod EvansPAD_COMMON_OBJS =	pkcs1.o pkcs7.o
851e49577aSRod EvansPAD_COMMON_SRC =	$(PAD_COMMON_OBJS:%.o=$(PAD_DIR)/%.c)
861e49577aSRod EvansPAD_FLAGS =		-I$(PAD_DIR)
8771269a22SAnthony Scarpino
8871269a22SAnthony Scarpino# Object setup
891e49577aSRod EvansAES_OBJS =		$(AES_COMMON_OBJS)	$(AES_PSM_OBJS)
901e49577aSRod EvansARCFOUR_OBJS =		$(ARCFOUR_COMMON_OBJS)	$(ARCFOUR_PSM_OBJS)
911e49577aSRod EvansBLOWFISH_OBJS =		$(BLOWFISH_COMMON_OBJS)	$(BLOWFISH_PSM_OBJS)
921e49577aSRod EvansDES_OBJS =		$(DES_COMMON_OBJS)	$(DES_PSM_OBJS)
931e49577aSRod EvansBIGNUM_OBJS =		$(BIGNUM_COMMON_OBJS)	$(BIGNUM_PSM_OBJS)
941e49577aSRod EvansMODES_OBJS =		$(MODES_COMMON_OBJS)	$(MODES_PSM_OBJS)
951e49577aSRod EvansDH_OBJS =		$(DH_COMMON_OBJS)	$(DH_PSM_OBJS)
961e49577aSRod EvansDSA_OBJS =		$(DSA_COMMON_OBJS)	$(DSA_PSM_OBJS)
971e49577aSRod EvansRSA_OBJS =		$(RSA_COMMON_OBJS)	$(RSA_PSM_OBJS)
981e49577aSRod EvansPAD_OBJS =		$(PAD_COMMON_OBJS)	$(PAD_PSM_OBJS)
991e49577aSRod Evans
1001e49577aSRod EvansOBJECTS =		$(AES_OBJS) $(ARCFOUR_OBJS) $(BIGNUM_OBJS) \
1011e49577aSRod Evans			$(BLOWFISH_OBJS) $(DES_OBJS) $(MODES_OBJS) $(DH_OBJS) \
1021e49577aSRod Evans			$(DSA_OBJS) $(RSA_OBJS) $(PAD_OBJS)
10371269a22SAnthony Scarpino
10471269a22SAnthony Scarpino# Source file setup
1051e49577aSRod EvansAES_SRC =		$(AES_COMMON_SRC)	$(AES_PSM_SRC)
1061e49577aSRod EvansARCFOUR_SRC =		$(ARCFOUR_COMMON_SRC)	$(ARCFOUR_PSM_SRC)
1071e49577aSRod EvansBLOWFISH_SRC =		$(BLOWFISH_COMMON_SRC)	$(BLOWFISH_PSM_SRC)
1081e49577aSRod EvansDES_SRC =		$(DES_COMMON_SRC)	$(DES_PSM_SRC)
1091e49577aSRod EvansBIGNUM_SRC =		$(BIGNUM_COMMON_SRC)	$(BIGNUM_PSM_SRC)
1101e49577aSRod EvansMODES_SRC =		$(MODES_COMMON_SRC)	$(MODES_PSM_SRC)
1111e49577aSRod EvansDH_SRC =		$(DH_COMMON_SRC)	$(DH_PSM_SRC)
1121e49577aSRod EvansDSA_SRC =		$(DSA_COMMON_SRC)	$(DSA_PSM_SRC)
1131e49577aSRod EvansRSA_SRC =		$(RSA_COMMON_SRC)	$(RSA_PSM_SRC)
1141e49577aSRod EvansPAD_SRC =		$(PAD_COMMON_SRC)	$(PAD_PSM_SRC)
1151e49577aSRod Evans
1161e49577aSRod Evans# Header include directories
1171e49577aSRod EvansCRYPTODIR =		$(SRC)/common/crypto
1181e49577aSRod EvansUTSDIR =		$(SRC)/uts/common/
119