Lines Matching defs:reqid
91 uint32_t reqid;
240 * ipsec_delete_tunnel() keeps reqid unchanged.
242 if (sc->reqid != 0)
471 CK_LIST_FOREACH(sc, ipsec_idhash(sav->sah->saidx.reqid), idhash) {
476 /* SA's reqid should match reqid in SP */
478 sav->sah->saidx.reqid != saidx->reqid)
533 uint32_t reqid;
761 reqid = sc->reqid;
762 error = copyout(&reqid, ifr_data_get_ptr(ifr), sizeof(reqid));
767 error = copyin(ifr_data_get_ptr(ifr), &reqid, sizeof(reqid));
770 error = ipsec_set_reqid(sc, reqid);
849 * ipsec esp/tunnel/RemoteIP-LocalIP/unique:reqid
851 * ipsec esp/tunnel/LocalIP-RemoteIP/unique:reqid
855 const struct sockaddr *src, const struct sockaddr *dst, uint32_t reqid)
876 isr->saidx.reqid = reqid;
914 ipsec_check_reqid(uint32_t reqid)
919 CK_LIST_FOREACH(sc, ipsec_idhash(reqid), idhash) {
920 if (sc->reqid == reqid)
927 * We use key_newreqid() to automatically obtain unique reqid.
936 uint32_t reqid;
940 if (sc->reqid != 0) /* already initialized */
945 reqid = key_newreqid();
946 if (ipsec_check_reqid(reqid) == 0)
951 sc->reqid = reqid;
952 CK_LIST_INSERT_HEAD(ipsec_idhash(reqid), sc, idhash);
957 * Set or update reqid for given tunneling interface.
958 * When specified reqid is zero, generate new one.
963 ipsec_set_reqid(struct ipsec_softc *sc, uint32_t reqid)
969 if (sc->reqid == reqid && reqid != 0)
972 if (reqid != 0) {
973 /* Check that specified reqid doesn't exist */
974 if (ipsec_check_reqid(reqid) != 0)
976 if (sc->reqid != 0) {
980 sc->reqid = reqid;
981 CK_LIST_INSERT_HEAD(ipsec_idhash(reqid), sc, idhash);
983 /* Generate new reqid */
996 sc->reqid));
1015 if (saidx != NULL && saidx->reqid == sc->reqid &&
1020 /* If reqid is not set, generate new one. */
1023 return (ipsec_set_tunnel(sc, src, dst, sc->reqid));
1028 struct sockaddr *dst, uint32_t reqid)
1043 if (ipsec_newpolicies(sc, sp, src, dst, reqid) == 0) {