summaryrefslogtreecommitdiff
path: root/usr/src
diff options
context:
space:
mode:
Diffstat (limited to 'usr/src')
-rw-r--r--usr/src/lib/libc/Makefile7
-rw-r--r--usr/src/lib/libc/sparc/Makefile.com4
-rw-r--r--usr/src/lib/libc/sparcv9/Makefile.com4
-rw-r--r--usr/src/pkg/manifests/SUNWn2cp.mf5
-rw-r--r--usr/src/pkg/manifests/driver-crypto-n2cp.mf28
-rw-r--r--usr/src/pkg/manifests/system-boot-real-mode.mf2
-rw-r--r--usr/src/pkg/manifests/system-kernel-platform.mf7
-rw-r--r--usr/src/uts/sun4u/Makefile.files2
-rw-r--r--usr/src/uts/sun4v/Makefile.files2
-rw-r--r--usr/src/uts/sun4v/io/n2rng/n2rng.c26
-rw-r--r--usr/src/uts/sun4v/io/n2rng/n2rng_post.c74
-rw-r--r--usr/src/uts/sun4v/io/n2rng/n2rng_provider.c27
-rw-r--r--usr/src/uts/sun4v/sys/n2rng.h6
13 files changed, 18 insertions, 176 deletions
diff --git a/usr/src/lib/libc/Makefile b/usr/src/lib/libc/Makefile
index a6415ea2a1..768e320409 100644
--- a/usr/src/lib/libc/Makefile
+++ b/usr/src/lib/libc/Makefile
@@ -142,7 +142,7 @@ lib32: $(MACH_COMP) $(MACHLIBS) $(MACH)/$(LIB_PIC) $(VARIANTLIBS)
exit 1; \
fi
-$(MACHLIBS): $(MACH_COMP)
+$(MACHLIBS): $(MACH_COMP) $(MACH)/assym.h
lib64: $(MACH_COMP) $(MACHLIBS64) $(MACH64)/$(LIB_PIC) $(VARIANTLIBS64)
@if $(ELFDUMP) -r $(MACH64)/$(DYNLIB) | $(GREP) -w environ ; then \
@@ -151,7 +151,10 @@ lib64: $(MACH_COMP) $(MACHLIBS64) $(MACH64)/$(LIB_PIC) $(VARIANTLIBS64)
exit 1; \
fi
-$(MACHLIBS64): $(MACH_COMP)
+$(MACHLIBS64): $(MACH_COMP) $(MACH64)/assym.h
+
+$(MACH)/assym.h $(MACH64)/assym.h:
+ @cd $(@D); $(MAKE) assym.h
$(VARIANTLIBS): FRC
@cd $(@D); pwd; VERSION='$(VERSION)' $(MAKE) $(@F)
diff --git a/usr/src/lib/libc/sparc/Makefile.com b/usr/src/lib/libc/sparc/Makefile.com
index 2d396df88d..ca2888c9f5 100644
--- a/usr/src/lib/libc/sparc/Makefile.com
+++ b/usr/src/lib/libc/sparc/Makefile.com
@@ -1344,8 +1344,10 @@ GENASSYM_C = $(LIBCDIR)/$(MACH)/genassym.c
# XXX A hack. Perhaps this should be 'CPPFLAGS.native' and
# live in Makefile.master
+assym.h := CFLAGS += -g
+
CPPFLAGS.genassym = \
- $(ENVCPPFLAGS1) $(ENVCPPFLAGS2) $(ENVCPPFLAGS3) $(ENVCPPFLAGS4)
+ $(ENVCPPFLAGS1) $(ENVCPPFLAGS2) $(ENVCPPFLAGS3) $(ENVCPPFLAGS4) -I.
genassym: $(GENASSYM_C)
$(NATIVECC) -I$(LIBCBASE)/inc -I$(LIBCDIR)/inc \
diff --git a/usr/src/lib/libc/sparcv9/Makefile.com b/usr/src/lib/libc/sparcv9/Makefile.com
index eb44f9eb82..0484269266 100644
--- a/usr/src/lib/libc/sparcv9/Makefile.com
+++ b/usr/src/lib/libc/sparcv9/Makefile.com
@@ -1263,13 +1263,15 @@ $(ASSYMDEP_OBJS:%=pics/%): assym.h
# assym.h build rules
+assym.h := CFLAGS64 += -g
+
GENASSYM_C = $(LIBCDIR)/$(MACH)/genassym.c
# XXX A hack. Perhaps this should be 'CPPFLAGS.native' and
# live in Makefile.master
CPPFLAGS.genassym = \
- $(ENVCPPFLAGS1) $(ENVCPPFLAGS2) $(ENVCPPFLAGS3) $(ENVCPPFLAGS4)
+ $(ENVCPPFLAGS1) $(ENVCPPFLAGS2) $(ENVCPPFLAGS3) $(ENVCPPFLAGS4) -I.
genassym: $(GENASSYM_C)
$(NATIVECC) -I$(LIBCBASE)/inc -I$(LIBCDIR)/inc \
diff --git a/usr/src/pkg/manifests/SUNWn2cp.mf b/usr/src/pkg/manifests/SUNWn2cp.mf
index 95966e794c..b4e62d9d8e 100644
--- a/usr/src/pkg/manifests/SUNWn2cp.mf
+++ b/usr/src/pkg/manifests/SUNWn2cp.mf
@@ -23,7 +23,6 @@
# Copyright (c) 2010, Oracle and/or its affiliates. All rights reserved.
#
-set name=pkg.fmri value=pkg:/SUNWn2cp@0.5.11,5.11-0.133
-set name=pkg.renamed value=true
+set name=pkg.fmri value=pkg:/SUNWn2cp@0.5.11,5.11-0.148
+set name=pkg.obsolete value=true
set name=variant.arch value=sparc
-depend fmri=pkg:/driver/crypto/n2cp@0.5.11,5.11-0.133 type=require
diff --git a/usr/src/pkg/manifests/driver-crypto-n2cp.mf b/usr/src/pkg/manifests/driver-crypto-n2cp.mf
index fb612ef8e4..9262345791 100644
--- a/usr/src/pkg/manifests/driver-crypto-n2cp.mf
+++ b/usr/src/pkg/manifests/driver-crypto-n2cp.mf
@@ -23,30 +23,6 @@
# Copyright (c) 2010, Oracle and/or its affiliates. All rights reserved.
#
-#
-# The default for payload-bearing actions in this package is to appear in the
-# global zone only. See the include file for greater detail, as well as
-# information about overriding the defaults.
-#
-<include global_zone_only_component>
-set name=pkg.fmri value=pkg:/driver/crypto/n2cp@$(PKGVERS)
-set name=pkg.description value="UltraSPARC-T2 Crypto Provider"
-set name=pkg.summary value="UltraSPARC-T2 Crypto Provider"
-set name=info.classification \
- value=org.opensolaris.category.2008:System/Hardware
+set name=pkg.fmri value=pkg:/driver/crypto/n2cp@0.5.11,5.11-0.148
+set name=pkg.obsolete value=true
set name=variant.arch value=sparc
-dir path=platform group=sys
-dir path=platform/sun4v group=sys
-dir path=platform/sun4v/kernel group=sys
-dir path=platform/sun4v/kernel/drv group=sys
-dir path=platform/sun4v/kernel/drv/$(ARCH64) group=sys
-driver name=n2cp \
- alias=SUNW,kt-cwq \
- alias=SUNW,n2-cwq \
- alias=SUNW,vf-cwq
-file path=platform/sun4v/kernel/drv/$(ARCH64)/n2cp group=sys
-file path=platform/sun4v/kernel/drv/n2cp.conf group=sys
-legacy pkg=SUNWn2cp.v arch=$(ARCH).sun4v desc="UltraSPARC-T2 Crypto Provider" \
- name="UltraSPARC-T2 Crypto Provider"
-license cr_Sun license=cr_Sun
-license lic_CDDL license=lic_CDDL
diff --git a/usr/src/pkg/manifests/system-boot-real-mode.mf b/usr/src/pkg/manifests/system-boot-real-mode.mf
index 2575406ed7..b60c4c42c2 100644
--- a/usr/src/pkg/manifests/system-boot-real-mode.mf
+++ b/usr/src/pkg/manifests/system-boot-real-mode.mf
@@ -46,7 +46,7 @@ $(i386_ONLY)file path=boot/solaris/devicedb/master group=sys \
original_name=SUNWrmod:boot/solaris/devicedb/master preserve=true
$(i386_ONLY)file path=boot/splashimage.xpm group=sys
$(i386_ONLY)file path=usr/lib/fs/ufs/mboot mode=0444
-hardlink path=boot/solaris.xpm target=splashimage.xpm
+$(i386_ONLY)hardlink path=boot/solaris.xpm target=splashimage.xpm
$(i386_ONLY)legacy pkg=SUNWrmodr desc="Realmode Modules, (Root)" \
name="Realmode Modules, (Root)"
$(i386_ONLY)legacy pkg=SUNWrmodu desc="Realmode Modules, (Usr)" \
diff --git a/usr/src/pkg/manifests/system-kernel-platform.mf b/usr/src/pkg/manifests/system-kernel-platform.mf
index 07779f2b58..db9f299cc1 100644
--- a/usr/src/pkg/manifests/system-kernel-platform.mf
+++ b/usr/src/pkg/manifests/system-kernel-platform.mf
@@ -441,11 +441,6 @@ $(sparc_ONLY)driver name=n2rng \
alias=SUNW,kt-rng \
alias=SUNW,n2-rng \
alias=SUNW,vf-rng
-$(sparc_ONLY)driver name=ncp \
- alias=SUNW,kt-mau \
- alias=SUNW,n2-mau \
- alias=SUNW,sun4v-ncp \
- alias=SUNW,vf-mau
$(i386_ONLY)driver name=npe alias=pciex_root_complex
$(sparc_ONLY)driver name=ntwdt perms="* 0644 root sys"
$(sparc_ONLY)driver name=oplmsu alias=FJSV,oplmsu
@@ -1126,7 +1121,6 @@ $(sparc_ONLY)file path=platform/sun4v/kernel/drv/$(ARCH64)/ebus group=sys
$(sparc_ONLY)file path=platform/sun4v/kernel/drv/$(ARCH64)/glvc group=sys
$(sparc_ONLY)file path=platform/sun4v/kernel/drv/$(ARCH64)/mdesc group=sys
$(sparc_ONLY)file path=platform/sun4v/kernel/drv/$(ARCH64)/n2rng group=sys
-$(sparc_ONLY)file path=platform/sun4v/kernel/drv/$(ARCH64)/ncp group=sys
$(sparc_ONLY)file path=platform/sun4v/kernel/drv/$(ARCH64)/ntwdt group=sys
$(sparc_ONLY)file path=platform/sun4v/kernel/drv/$(ARCH64)/px group=sys
$(sparc_ONLY)file path=platform/sun4v/kernel/drv/$(ARCH64)/qcn group=sys
@@ -1138,7 +1132,6 @@ $(sparc_ONLY)file path=platform/sun4v/kernel/drv/bge.conf group=sys
$(sparc_ONLY)file path=platform/sun4v/kernel/drv/bmc.conf group=sys
$(sparc_ONLY)file path=platform/sun4v/kernel/drv/mdesc.conf group=sys
$(sparc_ONLY)file path=platform/sun4v/kernel/drv/n2rng.conf group=sys
-$(sparc_ONLY)file path=platform/sun4v/kernel/drv/ncp.conf group=sys
$(sparc_ONLY)file path=platform/sun4v/kernel/drv/ntwdt.conf group=sys
$(sparc_ONLY)file path=platform/sun4v/kernel/drv/trapstat.conf group=sys
$(sparc_ONLY)file path=platform/sun4v/kernel/misc/$(ARCH64)/bootdev group=sys \
diff --git a/usr/src/uts/sun4u/Makefile.files b/usr/src/uts/sun4u/Makefile.files
index 0bbe2dd930..96021facfb 100644
--- a/usr/src/uts/sun4u/Makefile.files
+++ b/usr/src/uts/sun4u/Makefile.files
@@ -148,7 +148,7 @@ MEM_CACHE_OBJS += mem_cache.o panther_asm.o
BIGNUM_PSR_OBJS += mont_mulf_kernel_v9.o
-AES_OBJS += aes.o aes_impl.o aes_modes.o aes_crypt_asm.o fips_aes_util.o
+AES_OBJS += aes.o aes_impl.o aes_modes.o aes_crypt_asm.o
DES_OBJS += des_crypt_asm.o
diff --git a/usr/src/uts/sun4v/Makefile.files b/usr/src/uts/sun4v/Makefile.files
index c5632bf5fc..b297e976e0 100644
--- a/usr/src/uts/sun4v/Makefile.files
+++ b/usr/src/uts/sun4v/Makefile.files
@@ -125,7 +125,7 @@ TRAPSTAT_OBJS += trapstat.o
NIUMX_OBJS += niumx.o niumx_tools.o
N2RNG_OBJS += n2rng.o n2rng_debug.o n2rng_hcall.o n2rng_kcf.o \
n2rng_entp_algs.o n2rng_entp_setup.o n2rng_kstat.o \
- n2rng_provider.o n2rng_post.o
+ n2rng_provider.o
#
# CPU/Memory Error Injector (memtest) sun4v driver
diff --git a/usr/src/uts/sun4v/io/n2rng/n2rng.c b/usr/src/uts/sun4v/io/n2rng/n2rng.c
index 90b64d1359..2b8827fd49 100644
--- a/usr/src/uts/sun4v/io/n2rng/n2rng.c
+++ b/usr/src/uts/sun4v/io/n2rng/n2rng.c
@@ -47,7 +47,6 @@
#include <sys/machsystm.h>
#include <sys/hypervisor_api.h>
#include <sys/n2rng.h>
-#include <fips/fips_checksum.h>
static int n2rng_attach(dev_info_t *, ddi_attach_cmd_t);
static int n2rng_detach(dev_info_t *, ddi_detach_cmd_t);
@@ -300,17 +299,6 @@ n2rng_attach(dev_info_t *dip, ddi_attach_cmd_t cmd)
goto errorexit;
}
- if (n2rng->n_is_fips == B_TRUE) {
- /*
- * FIPs Post test: Feed the known seed and make sure it
- * produces the known random number.
- */
- if (n2rng_fips_rng_post() != CRYPTO_SUCCESS) {
- n2rng_diperror(dip, "n2rng: FIPs POST test failed\n");
- goto errorexit;
- }
- }
-
return (DDI_SUCCESS);
errorexit:
@@ -1076,11 +1064,6 @@ n2rng_init_ctl(n2rng_t *n2rng)
DDI_PROP_CANSLEEP | DDI_PROP_DONTPASS, "hc_seconds",
RNG_DEFAULT_HC_SECS);
- /* get fips configuration : FALSE by default */
- n2rng->n_is_fips = ddi_getprop(DDI_DEV_T_ANY, n2rng->n_dip,
- DDI_PROP_CANSLEEP | DDI_PROP_DONTPASS,
- N2RNG_FIPS_STRING, B_FALSE);
-
/* API versions prior to 2.0 do not support health checks */
if ((n2rng->n_hvapi_major_version < 2) &&
(n2rng->n_ctl_data->n_hc_secs > 0)) {
@@ -1092,15 +1075,6 @@ n2rng_init_ctl(n2rng_t *n2rng)
}
- if (n2rng->n_is_fips == B_TRUE) {
- /* When in FIPs mode, run the module integrity test */
- if (fips_check_module("drv/n2rng", (void *)_init) != 0) {
- cmn_err(CE_WARN, "n2rng: FIPs Software Integrity Test "
- "failed\n");
- return (DDI_FAILURE);
- }
- }
-
/* Calculate watchdog timeout value */
if (n2rng->n_ctl_data->n_hc_secs <= 0) {
n2rng->n_ctl_data->n_watchdog_cycles = 0;
diff --git a/usr/src/uts/sun4v/io/n2rng/n2rng_post.c b/usr/src/uts/sun4v/io/n2rng/n2rng_post.c
deleted file mode 100644
index ae3780b50a..0000000000
--- a/usr/src/uts/sun4v/io/n2rng/n2rng_post.c
+++ /dev/null
@@ -1,74 +0,0 @@
-/*
- * 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) 2010, Oracle and/or its affiliates. All rights reserved.
- */
-
-#include <sys/types.h>
-#include <sys/param.h>
-#include <sys/errno.h>
-#include <sys/kmem.h>
-#include <sys/systm.h>
-#include <sys/sha1.h>
-#include <sys/crypto/common.h>
-#include <sys/cmn_err.h>
-#include <rng/fips_random.h>
-
-
-int
-n2rng_fips_rng_post(void)
-{
- static uint8_t XKeyValue[] = {
- 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00
- };
-
- static uint8_t XSeed[] = {
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- 0x00, 0x00, 0x00, 0x00
- };
-
- static uint8_t rng_known_GENX[] = {
- 0xda, 0x39, 0xa3, 0xee, 0x5e, 0x6b, 0x4b, 0x0d,
- 0x32, 0x55, 0xbf, 0xef, 0x95, 0x60, 0x18, 0x90,
- 0xaf, 0xd8, 0x07, 0x09
- };
-
- uint8_t GENX[SHA1_HASH_SIZE];
- uint8_t XKey[SHA1_HASH_SIZE];
-
- (void) memcpy(XKey, XKeyValue, SHA1_HASH_SIZE);
-
- /* Generate X with a known seed. */
- fips_random_inner(
- (uint32_t *)(void *)XKey,
- (uint32_t *)(void *)GENX,
- (uint32_t *)(void *)XSeed);
-
- /* Verify GENX to perform the RNG integrity check */
- if ((memcmp(GENX, rng_known_GENX, (SHA1_HASH_SIZE)) != 0))
- return (CRYPTO_DEVICE_ERROR);
- else
- return (CRYPTO_SUCCESS);
-}
diff --git a/usr/src/uts/sun4v/io/n2rng/n2rng_provider.c b/usr/src/uts/sun4v/io/n2rng/n2rng_provider.c
index 6c50d14923..63b7deb729 100644
--- a/usr/src/uts/sun4v/io/n2rng/n2rng_provider.c
+++ b/usr/src/uts/sun4v/io/n2rng/n2rng_provider.c
@@ -141,33 +141,6 @@ fips_random(n2rng_t *n2rng, uint8_t *out, size_t nbytes)
/* nbytes - i is bytes to go */
fips_random_inner(frsp->XKEY, tempout, entropy.as32);
- /*
- * Compare last round with the results of this round, fail
- * if identical. Save for next round.
- */
- if (n2rng->n_is_fips == B_TRUE) {
- uint32_t differ = 0;
- int j;
-
- for (j = 0; j < 5; j++) {
- differ |= tempout[j] ^ frsp->x_jminus1[j];
- frsp->x_jminus1[j] = tempout[j];
- }
- if (differ == 0) {
- /*
- * If differ == 0, the RNG produced the same
- * answer twice. By FIPS 140-2 Section 4.9 we
- * must enter an error state.
- */
- mutex_exit(&frsp->mtx);
- n2rng_failure(n2rng);
- cmn_err(CE_WARN,
- "n2rng: Continuous random number generator"
- " test of FIPS-140 RNG failed.");
- return (EIO);
- }
- }
-
bcopy(tempout, &out[i], min(nbytes - i, SHA1BYTES));
mutex_exit(&frsp->mtx);
diff --git a/usr/src/uts/sun4v/sys/n2rng.h b/usr/src/uts/sun4v/sys/n2rng.h
index 6545cccc13..ef9776f417 100644
--- a/usr/src/uts/sun4v/sys/n2rng.h
+++ b/usr/src/uts/sun4v/sys/n2rng.h
@@ -120,11 +120,6 @@ typedef struct {
#define N2RNG_NOANALOGOUT 0x2
/*
- * n2rng: config variable in the n2rng.conf file
- */
-#define N2RNG_FIPS_STRING "n2rng-fips-140"
-
-/*
* There can only be N2_RNG_FIPS_INSTANCES concurrent RNG requsts from
* the framework. Making this value large helps benchmarks. It
* should probably come from a conf file, but for now it is hard
@@ -239,7 +234,6 @@ typedef struct n2rng {
md_t *n_mdp;
uint64_t n_sticks_per_usec;
ddi_taskq_t *n_taskq;
- boolean_t n_is_fips;
} n2rng_t;
typedef kstat_named_t n2rng_kstat_bias_t[N2RNG_MAX_RNGS][N2RNG_NOSC];