1*11767SAnurag.Maskey@Sun.COM /* 2*11767SAnurag.Maskey@Sun.COM * CDDL HEADER START 3*11767SAnurag.Maskey@Sun.COM * 4*11767SAnurag.Maskey@Sun.COM * The contents of this file are subject to the terms of the 5*11767SAnurag.Maskey@Sun.COM * Common Development and Distribution License (the "License"). 6*11767SAnurag.Maskey@Sun.COM * You may not use this file except in compliance with the License. 7*11767SAnurag.Maskey@Sun.COM * 8*11767SAnurag.Maskey@Sun.COM * You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE 9*11767SAnurag.Maskey@Sun.COM * or http://www.opensolaris.org/os/licensing. 10*11767SAnurag.Maskey@Sun.COM * See the License for the specific language governing permissions 11*11767SAnurag.Maskey@Sun.COM * and limitations under the License. 12*11767SAnurag.Maskey@Sun.COM * 13*11767SAnurag.Maskey@Sun.COM * When distributing Covered Code, include this CDDL HEADER in each 14*11767SAnurag.Maskey@Sun.COM * file and include the License file at usr/src/OPENSOLARIS.LICENSE. 15*11767SAnurag.Maskey@Sun.COM * If applicable, add the following below this CDDL HEADER, with the 16*11767SAnurag.Maskey@Sun.COM * fields enclosed by brackets "[]" replaced with your own identifying 17*11767SAnurag.Maskey@Sun.COM * information: Portions Copyright [yyyy] [name of copyright owner] 18*11767SAnurag.Maskey@Sun.COM * 19*11767SAnurag.Maskey@Sun.COM * CDDL HEADER END 20*11767SAnurag.Maskey@Sun.COM */ 21*11767SAnurag.Maskey@Sun.COM 22*11767SAnurag.Maskey@Sun.COM /* 23*11767SAnurag.Maskey@Sun.COM * Copyright 2010 Sun Microsystems, Inc. All rights reserved. 24*11767SAnurag.Maskey@Sun.COM * Use is subject to license terms. 25*11767SAnurag.Maskey@Sun.COM */ 26*11767SAnurag.Maskey@Sun.COM 27*11767SAnurag.Maskey@Sun.COM #ifndef _LLP_H 28*11767SAnurag.Maskey@Sun.COM #define _LLP_H 29*11767SAnurag.Maskey@Sun.COM 30*11767SAnurag.Maskey@Sun.COM #include <search.h> 31*11767SAnurag.Maskey@Sun.COM #include <libnwam.h> 32*11767SAnurag.Maskey@Sun.COM #include <syslog.h> 33*11767SAnurag.Maskey@Sun.COM 34*11767SAnurag.Maskey@Sun.COM #include "events.h" 35*11767SAnurag.Maskey@Sun.COM 36*11767SAnurag.Maskey@Sun.COM /* 37*11767SAnurag.Maskey@Sun.COM * This file is here for legacy support. 38*11767SAnurag.Maskey@Sun.COM */ 39*11767SAnurag.Maskey@Sun.COM 40*11767SAnurag.Maskey@Sun.COM #define LLPDIR "/etc/nwam" 41*11767SAnurag.Maskey@Sun.COM #define LLPFILE LLPDIR"/llp" 42*11767SAnurag.Maskey@Sun.COM 43*11767SAnurag.Maskey@Sun.COM enum interface_type { 44*11767SAnurag.Maskey@Sun.COM IF_UNKNOWN, IF_WIRED, IF_WIRELESS, IF_TUN 45*11767SAnurag.Maskey@Sun.COM }; 46*11767SAnurag.Maskey@Sun.COM 47*11767SAnurag.Maskey@Sun.COM typedef enum { 48*11767SAnurag.Maskey@Sun.COM IPV4SRC_STATIC, 49*11767SAnurag.Maskey@Sun.COM IPV4SRC_DHCP 50*11767SAnurag.Maskey@Sun.COM } ipv4src_t; 51*11767SAnurag.Maskey@Sun.COM 52*11767SAnurag.Maskey@Sun.COM /* 53*11767SAnurag.Maskey@Sun.COM * This structure contains a representation of legacy LLP configuration 54*11767SAnurag.Maskey@Sun.COM * which previously represented the intended configuration of the system as 55*11767SAnurag.Maskey@Sun.COM * differentiated from the actual IPv4 configuration of the system represented 56*11767SAnurag.Maskey@Sun.COM * by the interface structures. 57*11767SAnurag.Maskey@Sun.COM * 58*11767SAnurag.Maskey@Sun.COM * llp structures are held on the list llp_head. 59*11767SAnurag.Maskey@Sun.COM */ 60*11767SAnurag.Maskey@Sun.COM typedef struct llp { 61*11767SAnurag.Maskey@Sun.COM struct qelem llp_links; 62*11767SAnurag.Maskey@Sun.COM char llp_lname[LIFNAMSIZ]; 63*11767SAnurag.Maskey@Sun.COM uint32_t llp_pri; /* lower number => higher priority */ 64*11767SAnurag.Maskey@Sun.COM int llp_fileorder; 65*11767SAnurag.Maskey@Sun.COM enum interface_type llp_type; 66*11767SAnurag.Maskey@Sun.COM ipv4src_t llp_ipv4src; 67*11767SAnurag.Maskey@Sun.COM char *llp_ipv4addrstr; /* if ipsrc is STATIC */ 68*11767SAnurag.Maskey@Sun.COM char *llp_ipv6addrstr; /* if the user provided a static addr */ 69*11767SAnurag.Maskey@Sun.COM boolean_t llp_ipv6onlink; /* true if we plumb up a v6 interface */ 70*11767SAnurag.Maskey@Sun.COM } llp_t; 71*11767SAnurag.Maskey@Sun.COM 72*11767SAnurag.Maskey@Sun.COM extern llp_t *link_layer_profile; 73*11767SAnurag.Maskey@Sun.COM 74*11767SAnurag.Maskey@Sun.COM void nwamd_handle_upgrade(nwamd_event_t); 75*11767SAnurag.Maskey@Sun.COM 76*11767SAnurag.Maskey@Sun.COM #endif /* _LLP_H */ 77