Lines Matching defs:carpr
2232 struct carpreq *carpr = arg;
2235 carpr->carpr_state = sc->sc_state;
2236 carpr->carpr_vhid = sc->sc_vhid;
2239 carpr->carpr_advbase = sc->sc_advbase;
2240 carpr->carpr_advskew = sc->sc_advskew;
2242 bcopy(sc->sc_key, carpr->carpr_key,
2243 sizeof(carpr->carpr_key));
2245 bzero(carpr->carpr_key, sizeof(carpr->carpr_key));
2256 carp_ioctl_set(if_t ifp, struct carpkreq *carpr)
2262 if (carpr->carpr_vhid <= 0 || carpr->carpr_vhid > CARP_MAXVHID)
2265 switch (carpr->carpr_version) {
2267 if (carpr->carpr_advbase != 0 && (carpr->carpr_advbase > 255 ||
2268 carpr->carpr_advbase < CARP_DFLTINTV))
2270 if (carpr->carpr_advskew < 0 || carpr->carpr_advskew >= 255)
2282 if (sc->sc_vhid == carpr->carpr_vhid)
2287 sc = carp_alloc(ifp, carpr->carpr_version, carpr->carpr_vhid);
2288 else if (sc->sc_version != carpr->carpr_version)
2294 if (carpr->carpr_advbase != 0)
2295 sc->sc_advbase = carpr->carpr_advbase;
2296 sc->sc_advskew = carpr->carpr_advskew;
2297 if (carpr->carpr_addr.s_addr != INADDR_ANY)
2298 sc->sc_carpaddr = carpr->carpr_addr;
2299 if (!IN6_IS_ADDR_UNSPECIFIED(&carpr->carpr_addr6)) {
2300 memcpy(&sc->sc_carpaddr6, &carpr->carpr_addr6,
2303 if (carpr->carpr_key[0] != '\0') {
2304 bcopy(carpr->carpr_key, sc->sc_key, sizeof(sc->sc_key));
2309 if (carpr->carpr_vrrp_priority != 0)
2310 sc->sc_vrrp_prio = carpr->carpr_vrrp_priority;
2311 if (carpr->carpr_vrrp_adv_inter)
2312 sc->sc_vrrp_adv_inter = carpr->carpr_vrrp_adv_inter;
2317 carpr->carpr_state != sc->sc_state) {
2318 switch (carpr->carpr_state) {
2342 carp_ioctl_get(if_t ifp, struct ucred *cred, struct carpreq *carpr,
2348 if (carpr->carpr_vhid < 0 || carpr->carpr_vhid > CARP_MAXVHID)
2350 if (carpr->carpr_count < 1)
2356 if (carpr->carpr_vhid != 0) {
2358 if (sc->sc_vhid == carpr->carpr_vhid)
2365 carpr->carpr_count = 1;
2373 if (count > carpr->carpr_count)
2379 carpr->carpr_count = count;
2389 struct carpreq carpr;
2396 if ((error = copyin(ifr_data_get_ptr(ifr), &carpr, sizeof carpr)))
2414 memcpy(&carprk, &carpr, sizeof(carpr));
2419 error = carp_ioctl_get(ifp, td->td_ucred, &carpr,
2420 carp_carprcp, &carpr);
2422 error = copyout(&carpr,
2424 carpr.carpr_count * sizeof(carpr));
2830 struct carpreq carpr = { };
2853 carpr.carpr_vhid = attrs.vhid;
2854 carpr.carpr_count = CARP_MAXVHID;
2857 error = carp_ioctl_get(ifp, nlp_get_cred(npt->nlp), &carpr,
2875 struct carpkreq carpr;
2922 carpr.carpr_count = 1;
2923 carpr.carpr_vhid = attrs.vhid;
2924 carpr.carpr_state = attrs.state;
2925 carpr.carpr_version = attrs.version;
2928 carpr.carpr_advbase = attrs.advbase;
2929 carpr.carpr_advskew = attrs.advskew;
2930 carpr.carpr_addr = attrs.addr;
2931 carpr.carpr_addr6 = attrs.addr6;
2932 memcpy(&carpr.carpr_key, &attrs.key, sizeof(attrs.key));
2935 carpr.carpr_vrrp_priority = attrs.vrrp_prio;
2936 carpr.carpr_vrrp_adv_inter = attrs.vrrp_adv_inter;
2941 error = carp_ioctl_set(ifp, &carpr);