Lines Matching defs:connp
96 #define IPCL_IS_CONNECTED(connp) \
97 ((connp)->conn_flags & IPCL_CONNECTED)
99 #define IPCL_IS_BOUND(connp) \
100 ((connp)->conn_flags & IPCL_BOUND)
106 #define IPCL_IS_TCP(connp) \
107 ((connp)->conn_flags & IPCL_TCPCONN)
109 #define IPCL_IS_SCTP(connp) \
110 ((connp)->conn_flags & IPCL_SCTPCONN)
112 #define IPCL_IS_UDP(connp) \
113 ((connp)->conn_flags & IPCL_UDPCONN)
115 #define IPCL_IS_RAWIP(connp) \
116 ((connp)->conn_flags & IPCL_RAWIPCONN)
118 #define IPCL_IS_RTS(connp) \
119 ((connp)->conn_flags & IPCL_RTSCONN)
121 #define IPCL_IS_IPTUN(connp) \
122 ((connp)->conn_flags & IPCL_IPTUN)
124 #define IPCL_IS_NONSTR(connp) ((connp)->conn_flags & IPCL_NONSTR)
469 #define CONN_INC_REF(connp) { \
470 mutex_enter(&(connp)->conn_lock); \
471 DTRACE_PROBE1(conn__inc__ref, conn_t *, connp); \
472 ASSERT(conn_trace_ref(connp)); \
473 (connp)->conn_ref++; \
474 ASSERT((connp)->conn_ref != 0); \
475 mutex_exit(&(connp)->conn_lock); \
478 #define CONN_INC_REF_LOCKED(connp) { \
479 DTRACE_PROBE1(conn__inc__ref, conn_t *, connp); \
480 ASSERT(MUTEX_HELD(&(connp)->conn_lock)); \
481 ASSERT(conn_trace_ref(connp)); \
482 (connp)->conn_ref++; \
483 ASSERT((connp)->conn_ref != 0); \
486 #define CONN_DEC_REF(connp) { \
487 mutex_enter(&(connp)->conn_lock); \
488 DTRACE_PROBE1(conn__dec__ref, conn_t *, connp); \
495 if ((connp)->conn_ref == 0 || \
496 ((connp)->conn_ref == 1 && (connp)->conn_on_sqp)) \
497 cmn_err(CE_PANIC, "CONN_DEC_REF: connp(%p) has ref " \
498 "= %d\n", (void *)(connp), (connp)->conn_ref); \
499 ASSERT(conn_untrace_ref(connp)); \
500 (connp)->conn_ref--; \
501 if ((connp)->conn_ref == 0) { \
503 mutex_exit(&(connp)->conn_lock); \
504 ipcl_conn_destroy(connp); \
506 cv_broadcast(&(connp)->conn_cv); \
507 mutex_exit(&(connp)->conn_lock); \
514 #define IPCL_ZONEID(connp) \
515 ((connp)->conn_allzones ? ALL_ZONES : (connp)->conn_zoneid)
520 #define IPCL_ZONE_MATCH(connp, zoneid) \
521 (((connp)->conn_allzones) || \
523 (connp)->conn_zoneid == (zoneid))
553 #define IPCL_PROTO_MATCH(connp, ira, ipha) \
554 ((((connp)->conn_laddr_v4 == INADDR_ANY) || \
555 (((connp)->conn_laddr_v4 == ((ipha)->ipha_dst)) && \
556 (((connp)->conn_faddr_v4 == INADDR_ANY) || \
557 ((connp)->conn_faddr_v4 == ((ipha)->ipha_src))))) && \
558 conn_wantpacket((connp), (ira), (ipha)))
560 #define IPCL_PROTO_MATCH_V6(connp, ira, ip6h) \
561 ((IN6_IS_ADDR_UNSPECIFIED(&(connp)->conn_laddr_v6) || \
562 (IN6_ARE_ADDR_EQUAL(&(connp)->conn_laddr_v6, &((ip6h)->ip6_dst)) && \
563 (IN6_IS_ADDR_UNSPECIFIED(&(connp)->conn_faddr_v6) || \
564 IN6_ARE_ADDR_EQUAL(&(connp)->conn_faddr_v6, &((ip6h)->ip6_src))))) && \
565 (conn_wantpacket_v6((connp), (ira), (ip6h))))
574 #define IPCL_CONN_MATCH(connp, proto, src, dst, ports) \
575 ((connp)->conn_proto == (proto) && \
576 (connp)->conn_ports == (ports) && \
577 _IPCL_V4_MATCH((connp)->conn_faddr_v6, (src)) && \
578 _IPCL_V4_MATCH((connp)->conn_laddr_v6, (dst)) && \
579 !(connp)->conn_ipv6_v6only)
581 #define IPCL_CONN_MATCH_V6(connp, proto, src, dst, ports) \
582 ((connp)->conn_proto == (proto) && \
583 (connp)->conn_ports == (ports) && \
584 IN6_ARE_ADDR_EQUAL(&(connp)->conn_faddr_v6, &(src)) && \
585 IN6_ARE_ADDR_EQUAL(&(connp)->conn_laddr_v6, &(dst)))
594 #define IPCL_BIND_MATCH(connp, proto, laddr, lport) \
595 ((connp)->conn_proto == (proto) && \
596 (connp)->conn_lport == (lport) && \
597 (_IPCL_V4_MATCH_ANY((connp)->conn_laddr_v6) || \
598 _IPCL_V4_MATCH((connp)->conn_laddr_v6, (laddr))) && \
599 !(connp)->conn_ipv6_v6only)
601 #define IPCL_BIND_MATCH_V6(connp, proto, laddr, lport) \
602 ((connp)->conn_proto == (proto) && \
603 (connp)->conn_lport == (lport) && \
604 (IN6_ARE_ADDR_EQUAL(&(connp)->conn_laddr_v6, &(laddr)) || \
605 IN6_IS_ADDR_UNSPECIFIED(&(connp)->conn_laddr_v6)))
613 #define IPCL_UDP_MATCH(connp, lport, laddr, fport, faddr) \
614 (((connp)->conn_lport == (lport)) && \
615 ((_IPCL_V4_MATCH_ANY((connp)->conn_laddr_v6) || \
616 (_IPCL_V4_MATCH((connp)->conn_laddr_v6, (laddr)) && \
617 (_IPCL_V4_MATCH_ANY((connp)->conn_faddr_v6) || \
618 (_IPCL_V4_MATCH((connp)->conn_faddr_v6, (faddr)) && \
619 (connp)->conn_fport == (fport)))))) && \
620 !(connp)->conn_ipv6_v6only)
628 #define IPCL_UDP_MATCH_V6(connp, lport, laddr, fport, faddr) \
629 (((connp)->conn_lport == (lport)) && \
630 (IN6_IS_ADDR_UNSPECIFIED(&(connp)->conn_laddr_v6) || \
631 (IN6_ARE_ADDR_EQUAL(&(connp)->conn_laddr_v6, &(laddr)) && \
632 (IN6_IS_ADDR_UNSPECIFIED(&(connp)->conn_faddr_v6) || \
633 (IN6_ARE_ADDR_EQUAL(&(connp)->conn_faddr_v6, &(faddr)) && \
634 (connp)->conn_fport == (fport))))))
646 #define IPCL_IPTUN_MATCH(connp, laddr, faddr) \
647 (_IPCL_V4_MATCH((connp)->conn_laddr_v6, (laddr)) && \
648 _IPCL_V4_MATCH((connp)->conn_faddr_v6, (faddr)))
650 #define IPCL_IPTUN_MATCH_V6(connp, laddr, faddr) \
651 (IN6_ARE_ADDR_EQUAL(&(connp)->conn_laddr_v6, (laddr)) && \
652 IN6_ARE_ADDR_EQUAL(&(connp)->conn_faddr_v6, (faddr)))
669 #define IPCL_RAW_MATCH(connp, proto, laddr) \
670 ((connp)->conn_proto == (proto) && \
671 (connp)->conn_lport == 0 && \
672 (_IPCL_V4_MATCH_ANY((connp)->conn_laddr_v6) || \
673 _IPCL_V4_MATCH((connp)->conn_laddr_v6, (laddr))))
675 #define IPCL_RAW_MATCH_V6(connp, proto, laddr) \
676 ((connp)->conn_proto == (proto) && \
677 (connp)->conn_lport == 0 && \
678 (IN6_IS_ADDR_UNSPECIFIED(&(connp)->conn_laddr_v6) || \
679 IN6_ARE_ADDR_EQUAL(&(connp)->conn_laddr_v6, &(laddr))))
691 void ipcl_hash_remove_locked(conn_t *connp, connf_t *connfp);