Lines Matching refs:ifname

50  * Returns B_FALSE if the interface in `ifname' has at least one address that is
54 i_ipadm_is_if_down(char *ifname, struct ifaddrs *ifa)
68 if (strcmp(cifname, ifname) == 0 &&
78 * Retrieves the information for the interface `ifname' from active
79 * config if `ifname' is specified and returns the result in the list `if_info'.
84 i_ipadm_active_if_info(ipadm_handle_t iph, const char *ifname,
110 * Skip the current interface if a specific `ifname' has
112 * `ifname'.
114 if (ifname != NULL && strcmp(lifrp->lifr_name, ifname) != 0)
185 * Returns the interface information for `ifname' in `if_info' from persistent
186 * config if `ifname' is non-null. Otherwise, it returns all the interfaces
190 i_ipadm_persist_if_info(ipadm_handle_t iph, const char *ifname,
200 if (ifname != NULL)
201 (void) strlcpy(getif.ia_ifname, ifname, LIFNAMSIZ);
212 if (ifname != NULL)
238 * Collects information for `ifname' if one is specified from both
239 * active and persistent config in `if_info'. If no `ifname' is specified,
244 i_ipadm_get_all_if_info(ipadm_handle_t iph, const char *ifname,
257 * Retrive the information for the requested `ifname' or all
261 status = i_ipadm_active_if_info(iph, ifname, &aifinfo, lifc_flags);
310 status = i_ipadm_persist_if_info(iph, ifname, &pifinfo);
358 i_ipadm_get_lnum(const char *ifname)
360 char *num = strrchr(ifname, IPADM_LOGICAL_SEP);
370 * any persistent configuration is available for `ifname' and returns
375 i_ipadm_if_pexists(ipadm_handle_t iph, const char *ifname, sa_family_t af,
390 status = i_ipadm_persist_if_info(iph, ifname, &ifinfo);
443 i_ipadm_create_ipmp(ipadm_handle_t iph, char *ifname, sa_family_t af,
454 status = i_ipadm_create_if(iph, ifname, af, ipadm_flags);
463 (void) i_ipadm_set_flags(iph, ifname, AF_INET6, IFF_UP, 0);
471 (void) strlcpy(lifr.lifr_name, ifname, sizeof (lifr.lifr_name));
478 (void) i_ipadm_delete_if(iph, ifname, af,
489 * Checks if `ifname' is plumbed and in an IPMP group on its "other" address
493 i_ipadm_create_ipmp_peer(ipadm_handle_t iph, char *ifname, sa_family_t af)
509 (void) strlcpy(lifr.lifr_name, ifname, sizeof (lifr.lifr_name));
518 * If `ifname' *is* the IPMP group interface, or if the relevant
521 if (strcmp(lifgr.gi_grifname, ifname) == 0 ||
535 i_ipadm_slifname_arp(char *ifname, uint64_t flags, int fd)
541 (void) ifparse_ifspec(ifname, &ifsp);
544 (void) strlcpy(lifr.lifr_name, ifname, sizeof (lifr.lifr_name));
562 i_ipadm_slifname(ipadm_handle_t iph, char *ifname, char *newif, uint64_t flags,
601 ifname, ppa);
626 if (snprintf(newif, LIFNAMSIZ, "%s%d", ifname,
632 valid_if = ifparse_ifspec(ifname, &ifsp);
650 status = i_ipadm_create_ipmp_peer(iph, ifname, af);
655 (void) strlcpy(lifr.lifr_name, ifname, sizeof (lifr.lifr_name));
664 * Plumbs the interface `ifname' for the address family `af'. It also persists
668 i_ipadm_plumb_if(ipadm_handle_t iph, char *ifname, sa_family_t af,
693 dlstatus = dladm_name2info(iph->iph_dlh, ifname, &linkid,
712 islo = i_ipadm_is_loopback(ifname);
713 if (islo || i_ipadm_get_lnum(ifname) != 0) {
714 (void) strlcpy(lifr.lifr_name, ifname, sizeof (lifr.lifr_name));
735 status = i_ipadm_persist_if(iph, ifname, af);
737 (void) i_ipadm_delete_if(iph, ifname,
761 if (!i_ipadm_is_vni(ifname) && dlstatus == DLADM_STATUS_OK &&
765 linkname = ifname;
800 if (!legacy && !i_ipadm_is_6to4(iph, ifname))
803 (void) strlcpy(newif, ifname, sizeof (newif));
804 status = i_ipadm_slifname(iph, ifname, newif, ifflags, ip_fd,
874 /* copy back new ifname */
875 (void) strlcpy(ifname, newif, LIFNAMSIZ);
881 if (i_ipadm_is_6to4(iph, ifname)) {
884 i_ipadm_init_addr(&addr, ifname, "", IPADM_ADDR_STATIC);
889 status = ipadm_add_aobjname(iph, ifname,
929 * Unplumbs the interface in `ifname' of family `af'.
932 i_ipadm_unplumb_if(ipadm_handle_t iph, const char *ifname, sa_family_t af)
950 if (i_ipadm_is_loopback(ifname) ||
951 (i_ipadm_get_lnum(ifname) != 0 && (iph->iph_flags & IPH_LEGACY))) {
952 (void) strlcpy(lifr.lifr_name, ifname, sizeof (lifr.lifr_name));
978 (void) strlcpy(lifr.lifr_name, ifname, sizeof (lifr.lifr_name));
1017 if (ifaddrlistx(ifname, IFF_UP|IFF_DUPLICATE,
1139 (void) i_ipadm_enable_autoconf(ifname);
1145 * Saves the given interface name `ifname' with address family `af' in
1149 i_ipadm_persist_if(ipadm_handle_t iph, const char *ifname, sa_family_t af)
1154 (void) strlcpy(ifarg.ia_ifname, ifname, sizeof (ifarg.ia_ifname));
1167 i_ipadm_delete_if(ipadm_handle_t iph, const char *ifname, sa_family_t af,
1178 ret = i_ipadm_unplumb_if(iph, ifname, af);
1182 cp = strrchr(ifname, IPADM_LOGICAL_SEP);
1189 (void) strlcpy(tmp_ifname, ifname, sizeof (tmp_ifname));
1190 tmp_ifname[cp - ifname] = '\0';
1212 db_status = i_ipadm_delete_ifobj(iph, ifname, af,
1222 * Resets all addresses on interface `ifname' with address family `af'
1224 * and address objects of `ifname' for `af' are also removed from the
1228 i_ipadm_delete_ifobj(ipadm_handle_t iph, const char *ifname, sa_family_t af,
1239 (void) strlcpy(ifarg.ia_ifname, ifname, LIFNAMSIZ);
1248 * for `ifname' and return IPADM_OP_DISABLE_OBJ if the name-space
1249 * for `ifname' is taken.
1252 i_ipadm_create_if(ipadm_handle_t iph, char *ifname, sa_family_t af,
1263 if (ipadm_if_enabled(iph, ifname, af))
1267 status = i_ipadm_if_pexists(iph, ifname, af, &p_exists);
1272 if (!ipadm_if_enabled(iph, ifname, other_af))
1279 return (i_ipadm_plumb_if(iph, ifname, af, ipadm_flags));
1293 * `ifname' must point to memory that can hold upto LIFNAMSIZ chars. It may
1298 ipadm_create_if(ipadm_handle_t iph, char *ifname, sa_family_t af,
1316 if (snprintf(newifname, LIFNAMSIZ, "%s0", ifname) >=
1320 if (strlcpy(newifname, ifname, LIFNAMSIZ) >= LIFNAMSIZ)
1328 !i_ipadm_is_6to4(iph, ifname)) {
1329 status = i_ipadm_create_if(iph, ifname, AF_INET, flags);
1335 status = i_ipadm_create_if(iph, ifname, AF_INET6, flags);
1338 (void) i_ipadm_delete_if(iph, ifname, AF_INET,
1349 * Deletes the interface in `ifname'. Removes both IPv4 and IPv6 interfaces
1353 ipadm_delete_if(ipadm_handle_t iph, const char *ifname, sa_family_t af,
1364 /* Validate the `ifname' for any logical interface. */
1366 !i_ipadm_validate_ifname(iph, ifname))
1370 status1 = i_ipadm_delete_if(iph, ifname, AF_INET, flags);
1372 status2 = i_ipadm_delete_if(iph, ifname, AF_INET6, flags);
1410 * configuration. If `ifname' is not NULL, it returns only the interface
1411 * identified by `ifname'.
1418 ipadm_if_info(ipadm_handle_t iph, const char *ifname,
1427 if (ifname != NULL &&
1428 (!ifparse_ifspec(ifname, &ifsp) || ifsp.ifsp_lunvalid)) {
1432 status = i_ipadm_get_all_if_info(iph, ifname, if_info, lifc_flags);
1435 if (ifname != NULL && *if_info == NULL)
1456 * Re-enable the interface `ifname' based on the saved configuration
1457 * for `ifname'.
1460 ipadm_enable_if(ipadm_handle_t iph, const char *ifname, uint32_t flags)
1471 if (!ifparse_ifspec(ifname, &ifsp) || ifsp.ifsp_lunvalid)
1481 if (ipadm_if_enabled(iph, ifname, AF_INET) &&
1482 ipadm_if_enabled(iph, ifname, AF_INET6)) {
1489 status = i_ipadm_init_ifs(iph, ifname, &ifnvl);
1502 status = i_ipadm_init_ifobj(iph, ifname, ifnvl);
1508 * Disable the interface `ifname' by removing it from the active configuration.
1512 ipadm_disable_if(ipadm_handle_t iph, const char *ifname, uint32_t flags)
1522 if (!ifparse_ifspec(ifname, &ifsp) || ifsp.ifsp_lunvalid)
1529 status1 = i_ipadm_unplumb_if(iph, ifname, AF_INET6);
1531 status1 = i_ipadm_delete_ifobj(iph, ifname, AF_INET6, B_FALSE);
1532 status2 = i_ipadm_unplumb_if(iph, ifname, AF_INET);
1534 status2 = i_ipadm_delete_ifobj(iph, ifname, AF_INET, B_FALSE);
1556 * `ifname' would have been successfuly moved into IPMP group, by this time.
1559 ipadm_if_move(ipadm_handle_t iph, const char *ifname)
1561 (void) i_ipadm_delete_ifobj(iph, ifname, AF_INET, B_FALSE);
1562 (void) i_ipadm_delete_ifobj(iph, ifname, AF_INET6, B_FALSE);