Print this page
7388 Support DHCP Client FQDN. Allow IAID/DUID for all v4.


   3  *
   4  * The contents of this file are subject to the terms of the
   5  * Common Development and Distribution License (the "License").
   6  * You may not use this file except in compliance with the License.
   7  *
   8  * You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE
   9  * or http://www.opensolaris.org/os/licensing.
  10  * See the License for the specific language governing permissions
  11  * and limitations under the License.
  12  *
  13  * When distributing Covered Code, include this CDDL HEADER in each
  14  * file and include the License file at usr/src/OPENSOLARIS.LICENSE.
  15  * If applicable, add the following below this CDDL HEADER, with the
  16  * fields enclosed by brackets "[]" replaced with your own identifying
  17  * information: Portions Copyright [yyyy] [name of copyright owner]
  18  *
  19  * CDDL HEADER END
  20  */
  21 /*
  22  * Copyright (c) 2008, 2010, Oracle and/or its affiliates. All rights reserved.

  23  */
  24 
  25 /*
  26  * This file contains data structures and APIs of libnwam.
  27  * Implementation is MT safe.
  28  */
  29 #ifndef _LIBNWAM_H
  30 #define _LIBNWAM_H
  31 
  32 #ifdef  __cplusplus
  33 extern "C" {
  34 #endif
  35 
  36 #include <bsm/adt.h>
  37 #include <net/if.h>
  38 #include <inet/ip.h>
  39 #include <inet/ip6.h>
  40 #include <sys/types.h>
  41 #include <sys/socket.h>
  42 


 430 #define NWAM_NCU_PROP_CLASS                     "class"
 431 #define NWAM_NCU_PROP_PARENT_NCP                "parent"
 432 #define NWAM_NCU_PROP_ACTIVATION_MODE           "activation-mode"
 433 #define NWAM_NCU_PROP_ENABLED                   "enabled"
 434 #define NWAM_NCU_PROP_PRIORITY_GROUP            "priority-group"
 435 #define NWAM_NCU_PROP_PRIORITY_MODE             "priority-mode"
 436 
 437 /* Link NCU properties */
 438 #define NWAM_NCU_PROP_LINK_MAC_ADDR             "link-mac-addr"
 439 #define NWAM_NCU_PROP_LINK_AUTOPUSH             "link-autopush"
 440 #define NWAM_NCU_PROP_LINK_MTU                  "link-mtu"
 441 
 442 /* IP NCU properties */
 443 #define NWAM_NCU_PROP_IP_VERSION                "ip-version"
 444 #define NWAM_NCU_PROP_IPV4_ADDRSRC              "ipv4-addrsrc"
 445 #define NWAM_NCU_PROP_IPV4_ADDR                 "ipv4-addr"
 446 #define NWAM_NCU_PROP_IPV4_DEFAULT_ROUTE        "ipv4-default-route"
 447 #define NWAM_NCU_PROP_IPV6_ADDRSRC              "ipv6-addrsrc"
 448 #define NWAM_NCU_PROP_IPV6_ADDR                 "ipv6-addr"
 449 #define NWAM_NCU_PROP_IPV6_DEFAULT_ROUTE        "ipv6-default-route"


 450 
 451 /* Some properties should only be set on creation */
 452 #define NWAM_NCU_PROP_SETONCE(prop)     \
 453                                 (strcmp(prop, NWAM_NCU_PROP_TYPE) == 0 || \
 454                                 strcmp(prop, NWAM_NCU_PROP_CLASS) == 0 || \
 455                                 strcmp(prop, NWAM_NCU_PROP_PARENT_NCP) == 0)
 456 /*
 457  * ENM definitions
 458  */
 459 
 460 typedef struct nwam_handle *nwam_enm_handle_t;
 461 
 462 #define NWAM_ENM_PROP_ACTIVATION_MODE   "activation-mode"
 463 #define NWAM_ENM_PROP_CONDITIONS        "conditions"
 464 #define NWAM_ENM_PROP_ENABLED           "enabled"
 465 
 466 /* FMRI associated with ENM */
 467 #define NWAM_ENM_PROP_FMRI              "fmri"
 468 
 469 /* Start/stop scripts associated with ENM */




   3  *
   4  * The contents of this file are subject to the terms of the
   5  * Common Development and Distribution License (the "License").
   6  * You may not use this file except in compliance with the License.
   7  *
   8  * You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE
   9  * or http://www.opensolaris.org/os/licensing.
  10  * See the License for the specific language governing permissions
  11  * and limitations under the License.
  12  *
  13  * When distributing Covered Code, include this CDDL HEADER in each
  14  * file and include the License file at usr/src/OPENSOLARIS.LICENSE.
  15  * If applicable, add the following below this CDDL HEADER, with the
  16  * fields enclosed by brackets "[]" replaced with your own identifying
  17  * information: Portions Copyright [yyyy] [name of copyright owner]
  18  *
  19  * CDDL HEADER END
  20  */
  21 /*
  22  * Copyright (c) 2008, 2010, Oracle and/or its affiliates. All rights reserved.
  23  * Copyright (c) 2016, Chris Fraire <cfraire@me.com>.
  24  */
  25 
  26 /*
  27  * This file contains data structures and APIs of libnwam.
  28  * Implementation is MT safe.
  29  */
  30 #ifndef _LIBNWAM_H
  31 #define _LIBNWAM_H
  32 
  33 #ifdef  __cplusplus
  34 extern "C" {
  35 #endif
  36 
  37 #include <bsm/adt.h>
  38 #include <net/if.h>
  39 #include <inet/ip.h>
  40 #include <inet/ip6.h>
  41 #include <sys/types.h>
  42 #include <sys/socket.h>
  43 


 431 #define NWAM_NCU_PROP_CLASS                     "class"
 432 #define NWAM_NCU_PROP_PARENT_NCP                "parent"
 433 #define NWAM_NCU_PROP_ACTIVATION_MODE           "activation-mode"
 434 #define NWAM_NCU_PROP_ENABLED                   "enabled"
 435 #define NWAM_NCU_PROP_PRIORITY_GROUP            "priority-group"
 436 #define NWAM_NCU_PROP_PRIORITY_MODE             "priority-mode"
 437 
 438 /* Link NCU properties */
 439 #define NWAM_NCU_PROP_LINK_MAC_ADDR             "link-mac-addr"
 440 #define NWAM_NCU_PROP_LINK_AUTOPUSH             "link-autopush"
 441 #define NWAM_NCU_PROP_LINK_MTU                  "link-mtu"
 442 
 443 /* IP NCU properties */
 444 #define NWAM_NCU_PROP_IP_VERSION                "ip-version"
 445 #define NWAM_NCU_PROP_IPV4_ADDRSRC              "ipv4-addrsrc"
 446 #define NWAM_NCU_PROP_IPV4_ADDR                 "ipv4-addr"
 447 #define NWAM_NCU_PROP_IPV4_DEFAULT_ROUTE        "ipv4-default-route"
 448 #define NWAM_NCU_PROP_IPV6_ADDRSRC              "ipv6-addrsrc"
 449 #define NWAM_NCU_PROP_IPV6_ADDR                 "ipv6-addr"
 450 #define NWAM_NCU_PROP_IPV6_DEFAULT_ROUTE        "ipv6-default-route"
 451 #define NWAM_NCU_PROP_IP_PRIMARY                "ip-primary"
 452 #define NWAM_NCU_PROP_IP_REQHOST                "ip-reqhost"
 453 
 454 /* Some properties should only be set on creation */
 455 #define NWAM_NCU_PROP_SETONCE(prop)     \
 456                                 (strcmp(prop, NWAM_NCU_PROP_TYPE) == 0 || \
 457                                 strcmp(prop, NWAM_NCU_PROP_CLASS) == 0 || \
 458                                 strcmp(prop, NWAM_NCU_PROP_PARENT_NCP) == 0)
 459 /*
 460  * ENM definitions
 461  */
 462 
 463 typedef struct nwam_handle *nwam_enm_handle_t;
 464 
 465 #define NWAM_ENM_PROP_ACTIVATION_MODE   "activation-mode"
 466 #define NWAM_ENM_PROP_CONDITIONS        "conditions"
 467 #define NWAM_ENM_PROP_ENABLED           "enabled"
 468 
 469 /* FMRI associated with ENM */
 470 #define NWAM_ENM_PROP_FMRI              "fmri"
 471 
 472 /* Start/stop scripts associated with ENM */