1b60f2a0bSfr /* 2b60f2a0bSfr * CDDL HEADER START 3b60f2a0bSfr * 4b60f2a0bSfr * The contents of this file are subject to the terms of the 5b60f2a0bSfr * Common Development and Distribution License (the "License"). 6b60f2a0bSfr * You may not use this file except in compliance with the License. 7b60f2a0bSfr * 8b60f2a0bSfr * You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE 9b60f2a0bSfr * or http://www.opensolaris.org/os/licensing. 10b60f2a0bSfr * See the License for the specific language governing permissions 11b60f2a0bSfr * and limitations under the License. 12b60f2a0bSfr * 13b60f2a0bSfr * When distributing Covered Code, include this CDDL HEADER in each 14b60f2a0bSfr * file and include the License file at usr/src/OPENSOLARIS.LICENSE. 15b60f2a0bSfr * If applicable, add the following below this CDDL HEADER, with the 16b60f2a0bSfr * fields enclosed by brackets "[]" replaced with your own identifying 17b60f2a0bSfr * information: Portions Copyright [yyyy] [name of copyright owner] 18b60f2a0bSfr * 19b60f2a0bSfr * CDDL HEADER END 20b60f2a0bSfr */ 21b60f2a0bSfr /* 22*32e0ab73SMisaki Miyashita * Copyright (c) 2008, 2010, Oracle and/or its affiliates. All rights reserved. 23b60f2a0bSfr */ 24b60f2a0bSfr 25b60f2a0bSfr 26b60f2a0bSfr #include <sys/types.h> 27b60f2a0bSfr #include <sys/systm.h> 28b60f2a0bSfr #include <sys/modctl.h> 29b60f2a0bSfr #include <sys/cmn_err.h> 30b60f2a0bSfr #include <sys/ddi.h> 31b60f2a0bSfr 32b60f2a0bSfr extern struct mod_ops mod_cryptoops; 33b60f2a0bSfr 34b60f2a0bSfr /* 35b60f2a0bSfr * Module linkage information for the kernel. 36b60f2a0bSfr */ 37b60f2a0bSfr static struct modlmisc modlmisc = { 38b60f2a0bSfr &mod_miscops, "bignum utility module" 39b60f2a0bSfr }; 40b60f2a0bSfr 41b60f2a0bSfr static struct modlinkage modlinkage = { 42b60f2a0bSfr MODREV_1, (void *)&modlmisc, NULL 43b60f2a0bSfr }; 44b60f2a0bSfr 45b60f2a0bSfr 46b60f2a0bSfr int _init(void)47b60f2a0bSfr_init(void) 48b60f2a0bSfr { 49b60f2a0bSfr return (mod_install(&modlinkage)); 50b60f2a0bSfr } 51b60f2a0bSfr 52b60f2a0bSfr int _fini(void)53b60f2a0bSfr_fini(void) 54b60f2a0bSfr { 55b60f2a0bSfr return (mod_remove(&modlinkage)); 56b60f2a0bSfr } 57b60f2a0bSfr 58b60f2a0bSfr int _info(struct modinfo * modinfop)59b60f2a0bSfr_info(struct modinfo *modinfop) 60b60f2a0bSfr { 61b60f2a0bSfr return (mod_info(&modlinkage, modinfop)); 62b60f2a0bSfr } 63