xref: /onnv-gate/usr/src/uts/common/inet/ip/rtsddi.c (revision 8348:4137e18bfaf0)
10Sstevel@tonic-gate /*
20Sstevel@tonic-gate  * CDDL HEADER START
30Sstevel@tonic-gate  *
40Sstevel@tonic-gate  * The contents of this file are subject to the terms of the
53448Sdh155122  * Common Development and Distribution License (the "License").
63448Sdh155122  * You may not use this file except in compliance with the License.
70Sstevel@tonic-gate  *
80Sstevel@tonic-gate  * You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE
90Sstevel@tonic-gate  * or http://www.opensolaris.org/os/licensing.
100Sstevel@tonic-gate  * See the License for the specific language governing permissions
110Sstevel@tonic-gate  * and limitations under the License.
120Sstevel@tonic-gate  *
130Sstevel@tonic-gate  * When distributing Covered Code, include this CDDL HEADER in each
140Sstevel@tonic-gate  * file and include the License file at usr/src/OPENSOLARIS.LICENSE.
150Sstevel@tonic-gate  * If applicable, add the following below this CDDL HEADER, with the
160Sstevel@tonic-gate  * fields enclosed by brackets "[]" replaced with your own identifying
170Sstevel@tonic-gate  * information: Portions Copyright [yyyy] [name of copyright owner]
180Sstevel@tonic-gate  *
190Sstevel@tonic-gate  * CDDL HEADER END
200Sstevel@tonic-gate  */
210Sstevel@tonic-gate /*
227862SRichard.Bean@Sun.COM  * Copyright 2008 Sun Microsystems, Inc.  All rights reserved.
230Sstevel@tonic-gate  * Use is subject to license terms.
240Sstevel@tonic-gate  */
250Sstevel@tonic-gate 
260Sstevel@tonic-gate #include <sys/types.h>
270Sstevel@tonic-gate #include <sys/conf.h>
280Sstevel@tonic-gate #include <sys/modctl.h>
290Sstevel@tonic-gate #include <inet/common.h>
300Sstevel@tonic-gate #include <inet/ip.h>
31*8348SEric.Yu@Sun.COM #include <inet/rts_impl.h>
32*8348SEric.Yu@Sun.COM #include <sys/strsubr.h>
33*8348SEric.Yu@Sun.COM #include <sys/socketvar.h>
34*8348SEric.Yu@Sun.COM 
35*8348SEric.Yu@Sun.COM #include <netinet/in.h>
36*8348SEric.Yu@Sun.COM #include <netinet/ip6.h>
37*8348SEric.Yu@Sun.COM 
38*8348SEric.Yu@Sun.COM #include <inet/common.h>
39*8348SEric.Yu@Sun.COM #include <inet/ip.h>
40*8348SEric.Yu@Sun.COM 
410Sstevel@tonic-gate 
420Sstevel@tonic-gate #define	INET_NAME	"rts"
435240Snordmark #define	INET_DEVSTRTAB	rtsinfo
447862SRichard.Bean@Sun.COM #define	INET_DEVDESC	"PF_ROUTE socket STREAMS driver"
45*8348SEric.Yu@Sun.COM #define	INET_SOCKDESC	"PF_ROUTE socket module"
46*8348SEric.Yu@Sun.COM #define	INET_SOCK_PROTO_CREATE_FUNC (*rts_create)
475240Snordmark #define	INET_DEVMINOR	0
485240Snordmark #define	INET_DEVMTFLAGS	(D_MP|D_MTQPAIR|D_SYNCSTR)
490Sstevel@tonic-gate 
500Sstevel@tonic-gate #include "../inetddi.c"
510Sstevel@tonic-gate 
520Sstevel@tonic-gate int
_init(void)530Sstevel@tonic-gate _init(void)
540Sstevel@tonic-gate {
550Sstevel@tonic-gate 	/*
565240Snordmark 	 * device initialization happens when the actual code containing
575240Snordmark 	 * module (/kernel/drv/ip) is loaded, and driven from ip_ddi_init()
580Sstevel@tonic-gate 	 */
595240Snordmark 	return (mod_install(&modlinkage));
600Sstevel@tonic-gate }
610Sstevel@tonic-gate 
620Sstevel@tonic-gate int
_fini(void)630Sstevel@tonic-gate _fini(void)
640Sstevel@tonic-gate {
655240Snordmark 	return (mod_remove(&modlinkage));
660Sstevel@tonic-gate }
670Sstevel@tonic-gate 
680Sstevel@tonic-gate int
_info(struct modinfo * modinfop)690Sstevel@tonic-gate _info(struct modinfo *modinfop)
700Sstevel@tonic-gate {
710Sstevel@tonic-gate 	return (mod_info(&modlinkage, modinfop));
720Sstevel@tonic-gate }
73