diff options
Diffstat (limited to 'sys/modules/ibcs2')
| -rw-r--r-- | sys/modules/ibcs2/Makefile | 6 | ||||
| -rwxr-xr-x[-rw-r--r--] | sys/modules/ibcs2/ibcs2 (renamed from sys/modules/ibcs2/ibcs2.sh) | 15 | ||||
| -rw-r--r-- | sys/modules/ibcs2/ibcs2.c | 64 |
3 files changed, 79 insertions, 6 deletions
diff --git a/sys/modules/ibcs2/Makefile b/sys/modules/ibcs2/Makefile index 9bb8a5b303bf..3f42872ab072 100644 --- a/sys/modules/ibcs2/Makefile +++ b/sys/modules/ibcs2/Makefile @@ -1,8 +1,8 @@ -# $Id: Makefile,v 1.22 1998/11/11 07:04:10 peter Exp $ +# $Id: Makefile,v 1.17 1998/02/06 23:54:20 eivind Exp $ .PATH: ${.CURDIR}/../../i386/ibcs2 KMOD= ibcs2 -SRCS= ibcs2_errno.c ibcs2_ipc.c ibcs2_stat.c ibcs2_misc.c \ +SRCS= ibcs2.c ibcs2_errno.c ibcs2_ipc.c ibcs2_stat.c ibcs2_misc.c \ ibcs2_fcntl.c ibcs2_signal.c ibcs2_sysent.c ibcs2_ioctl.c \ ibcs2_socksys.c ibcs2_util.c ibcs2_xenix.c ibcs2_xenix_sysent.c \ ibcs2_isc.c ibcs2_isc_sysent.c \ @@ -19,6 +19,6 @@ opt_spx_hack.h: afterinstall: ${INSTALL} -c -o ${BINOWN} -g ${BINGRP} -m ${BINMODE} \ - ${.CURDIR}/ibcs2.sh ${DESTDIR}/usr/bin/ibcs2 + ${.CURDIR}/ibcs2 ${DESTDIR}/usr/bin .include <bsd.kmod.mk> diff --git a/sys/modules/ibcs2/ibcs2.sh b/sys/modules/ibcs2/ibcs2 index 0fd465fa023e..a649885512ea 100644..100755 --- a/sys/modules/ibcs2/ibcs2.sh +++ b/sys/modules/ibcs2/ibcs2 @@ -24,7 +24,7 @@ # OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF # SUCH DAMAGE. # -# $Id: ibcs2,v 1.7 1997/02/22 12:47:59 peter Exp $ +# $Id$ PATH=/bin:/sbin:/usr/bin:/usr/sbin; export PATH @@ -35,9 +35,18 @@ fi set -e -kldload ibcs2 +kernelfile=`sysctl -n kern.bootfile` +kernelfile=`basename $kernelfile` +newkernelfile="/tmp/_${kernelfile}+ibcs2$$" + +trap 'rm -f $newkernelfile; exit 1' 1 2 3 13 15 + +rm -f $newkernelfile +modload -e ibcs2_mod -o $newkernelfile -q /lkm/ibcs2_mod.o for loader in $LOADERS; do - kldload ibcs2_${loader} + modload -e ibcs2_${loader}_mod -o/tmp/ibcs2_${loader} -q -u \ + -A${newkernelfile} /lkm/ibcs2_${loader}_mod.o done +rm -f ${newkernelfile} set +e diff --git a/sys/modules/ibcs2/ibcs2.c b/sys/modules/ibcs2/ibcs2.c new file mode 100644 index 000000000000..2bd5fb62ec8f --- /dev/null +++ b/sys/modules/ibcs2/ibcs2.c @@ -0,0 +1,64 @@ +/*- + * Copyright (c) 1994 Søren Schmidt + * All rights reserved. + * + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions + * are met: + * 1. Redistributions of source code must retain the above copyright + * notice, this list of conditions and the following disclaimer + * in this position and unchanged. + * 2. Redistributions in binary form must reproduce the above copyright + * notice, this list of conditions and the following disclaimer in the + * documentation and/or other materials provided with the distribution. + * 3. The name of the author may not be used to endorse or promote products + * derived from this software withough specific prior written permission + * + * THIS SOFTWARE IS PROVIDED BY THE AUTHOR ``AS IS'' AND ANY EXPRESS OR + * IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES + * OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. + * IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY DIRECT, INDIRECT, + * INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT + * NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, + * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY + * THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT + * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF + * THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + * + * $Id: ibcs2.c,v 1.11 1997/05/01 06:09:01 jkh Exp $ + */ + +#include <sys/param.h> +#include <sys/systm.h> +#include <sys/sysproto.h> +#include <sys/conf.h> +#include <sys/exec.h> +#include <sys/sysent.h> +#include <sys/lkm.h> + +#include <sys/kernel.h> +#include <sys/module.h> + +static int +ibcs2_modevent(module_t mod, modeventtype_t type, void *unused) +{ + switch (type) { + case MOD_LOAD: + printf("ibcs2 module loaded\n"); + break; + case MOD_UNLOAD: + printf("ibcs2 module unloaded\n"); + break; + default: + printf("ibcs2 module unknown event: 0x%x\n", type); + } + return 0; +} + +moduledata_t ibcs2mod = { + "ibcs2", + ibcs2_modevent, + 0 +}; + +DECLARE_MODULE(ibcs2, ibcs2mod, SI_SUB_PSEUDO, SI_ORDER_ANY); |
