Lines Matching refs:icmp
99 static void icmp_bind_proto(icmp_t *icmp);
316 icmp_t *icmp; in icmp_tpi_bind() local
335 icmp = connp->conn_icmp; in icmp_tpi_bind()
344 if (icmp->icmp_state != TS_UNBND) { in icmp_tpi_bind()
346 "icmp_bind: bad state, %u", icmp->icmp_state); in icmp_tpi_bind()
424 icmp_t *icmp = connp->conn_icmp; in rawip_do_bind() local
489 if (icmp->icmp_state != TS_UNBND) { in rawip_do_bind()
542 icmp->icmp_state = TS_IDLE; in rawip_do_bind()
578 icmp->icmp_state = TS_UNBND; in rawip_do_bind()
593 icmp_bind_proto(icmp_t *icmp) in icmp_bind_proto() argument
595 conn_t *connp = icmp->icmp_connp; in icmp_bind_proto()
719 icmp_t *icmp; in rawip_do_connect() local
733 icmp = connp->conn_icmp; in rawip_do_connect()
801 if (icmp->icmp_state == TS_UNBND || icmp->icmp_state == TS_WCON_CREQ) { in rawip_do_connect()
807 if (icmp->icmp_state == TS_DATA_XFER) { in rawip_do_connect()
815 icmp->icmp_state = TS_IDLE; in rawip_do_connect()
885 icmp->icmp_state = TS_WCON_CREQ; in rawip_do_connect()
908 icmp->icmp_state = TS_DATA_XFER; in rawip_do_connect()
930 icmp->icmp_state = TS_IDLE; in rawip_do_connect()
1007 icmp_t *icmp = connp->conn_icmp; in icmp_close_free() local
1009 if (icmp->icmp_filter != NULL) { in icmp_close_free()
1010 kmem_free(icmp->icmp_filter, sizeof (icmp6_filter_t)); in icmp_close_free()
1011 icmp->icmp_filter = NULL; in icmp_close_free()
1020 ASSERT(icmp->icmp_connp == connp); in icmp_close_free()
1021 bzero(icmp, sizeof (icmp_t)); in icmp_close_free()
1022 icmp->icmp_connp = connp; in icmp_close_free()
1033 icmp_t *icmp = connp->conn_icmp; in icmp_do_disconnect() local
1037 if (icmp->icmp_state != TS_DATA_XFER) { in icmp_do_disconnect()
1047 icmp->icmp_state = TS_IDLE; in icmp_do_disconnect()
1144 icmp_t *icmp = connp->conn_icmp; in icmp_icmp_input() local
1242 if (icmp->icmp_state == TS_DATA_XFER) { in icmp_icmp_input()
1250 icmp->icmp_delayed_error = error; in icmp_icmp_input()
1251 *((sin_t *)&icmp->icmp_delayed_addr) = sin; in icmp_icmp_input()
1280 icmp_t *icmp = connp->conn_icmp; in icmp_icmp_error_ipv6() local
1337 BUMP_MIB(&icmp->icmp_is->is_rawip_mib, rawipInErrors); in icmp_icmp_error_ipv6()
1411 if (icmp->icmp_state == TS_DATA_XFER) { in icmp_icmp_error_ipv6()
1420 icmp->icmp_delayed_error = error; in icmp_icmp_error_ipv6()
1421 *((sin6_t *)&icmp->icmp_delayed_addr) = sin6; in icmp_icmp_error_ipv6()
1447 icmp_t *icmp = Q_TO_ICMP(q); in icmp_addr_req() local
1448 conn_t *connp = icmp->icmp_connp; in icmp_addr_req()
1476 if (icmp->icmp_state != TS_UNBND) { in icmp_addr_req()
1486 if (icmp->icmp_state == TS_DATA_XFER) { in icmp_addr_req()
1503 icmp_copy_info(struct T_info_ack *tap, icmp_t *icmp) in icmp_copy_info() argument
1505 conn_t *connp = icmp->icmp_connp; in icmp_copy_info()
1513 tap->CURRENT_state = icmp->icmp_state; in icmp_copy_info()
1518 icmp_do_capability_ack(icmp_t *icmp, struct T_capability_ack *tcap, in icmp_do_capability_ack() argument
1524 icmp_copy_info(&tcap->INFO_ack, icmp); in icmp_do_capability_ack()
1538 icmp_t *icmp = Q_TO_ICMP(q); in icmp_capability_req() local
1551 icmp_do_capability_ack(icmp, tcap, cap_bits1); in icmp_capability_req()
1564 icmp_t *icmp = Q_TO_ICMP(q); in icmp_info_req() local
1571 icmp_copy_info((struct T_info_ack *)mp->b_rptr, icmp); in icmp_info_req()
1667 icmp_t *icmp; in rawip_do_open() local
1699 icmp = connp->conn_icmp; in rawip_do_open()
1712 ASSERT(connp->conn_icmp == icmp); in rawip_do_open()
1713 ASSERT(icmp->icmp_connp == connp); in rawip_do_open()
1716 icmp->icmp_state = TS_UNBND; in rawip_do_open()
1764 icmp->icmp_is = is; in rawip_do_open()
1812 icmp_t *icmp = Q_TO_ICMP(q); in icmp_opt_default() local
1813 icmp_stack_t *is = icmp->icmp_is; in icmp_opt_default()
1859 icmp_t *icmp = connp->conn_icmp; in icmp_opt_get() local
1891 *i1 = (int)icmp->icmp_hdrincl; in icmp_opt_get()
1936 if (icmp->icmp_filter == NULL) { in icmp_opt_get()
1940 (void) bcopy(icmp->icmp_filter, ptr, in icmp_opt_get()
1976 icmp_t *icmp = connp->conn_icmp; in icmp_do_opt_set() local
1977 icmp_stack_t *is = icmp->icmp_is; in icmp_do_opt_set()
2008 icmp->icmp_hdrincl = 1; in icmp_do_opt_set()
2014 icmp->icmp_hdrincl = 0; in icmp_do_opt_set()
2017 icmp->icmp_hdrincl = 0; in icmp_do_opt_set()
2027 if (icmp->icmp_filter != NULL && in icmp_do_opt_set()
2029 kmem_free(icmp->icmp_filter, in icmp_do_opt_set()
2031 icmp->icmp_filter = NULL; in icmp_do_opt_set()
2070 icmp->icmp_hdrincl = onoff; in icmp_do_opt_set()
2139 if (icmp->icmp_filter != NULL) { in icmp_do_opt_set()
2140 kmem_free(icmp->icmp_filter, in icmp_do_opt_set()
2142 icmp->icmp_filter = NULL; in icmp_do_opt_set()
2145 if (icmp->icmp_filter == NULL) { in icmp_do_opt_set()
2146 icmp->icmp_filter = kmem_alloc( in icmp_do_opt_set()
2149 if (icmp->icmp_filter == NULL) { in icmp_do_opt_set()
2154 (void) bcopy(invalp, icmp->icmp_filter, inlen); in icmp_do_opt_set()
2174 icmp_t *icmp = connp->conn_icmp; in icmp_opt_set() local
2178 icmp_stack_t *is = icmp->icmp_is; in icmp_opt_set()
2350 icmp_bind_proto(icmp); in icmp_opt_set()
2482 icmp_queue_fallback(icmp_t *icmp, mblk_t *mp) in icmp_queue_fallback() argument
2484 ASSERT(MUTEX_HELD(&icmp->icmp_recv_lock)); in icmp_queue_fallback()
2485 if (IPCL_IS_NONSTR(icmp->icmp_connp)) { in icmp_queue_fallback()
2489 if (icmp->icmp_fallback_queue_head == NULL) { in icmp_queue_fallback()
2490 ASSERT(icmp->icmp_fallback_queue_tail == NULL); in icmp_queue_fallback()
2491 icmp->icmp_fallback_queue_head = mp; in icmp_queue_fallback()
2492 icmp->icmp_fallback_queue_tail = mp; in icmp_queue_fallback()
2494 ASSERT(icmp->icmp_fallback_queue_tail != NULL); in icmp_queue_fallback()
2495 icmp->icmp_fallback_queue_tail->b_next = mp; in icmp_queue_fallback()
2496 icmp->icmp_fallback_queue_tail = mp; in icmp_queue_fallback()
2515 icmp_t *icmp = connp->conn_icmp; in icmp_ulp_recv() local
2521 mutex_enter(&icmp->icmp_recv_lock); in icmp_ulp_recv()
2535 mutex_exit(&icmp->icmp_recv_lock); in icmp_ulp_recv()
2538 mp = icmp_queue_fallback(icmp, mp); in icmp_ulp_recv()
2539 mutex_exit(&icmp->icmp_recv_lock); in icmp_ulp_recv()
2544 ASSERT(MUTEX_NOT_HELD(&icmp->icmp_recv_lock)); in icmp_ulp_recv()
2565 icmp_t *icmp; in icmp_input() local
2577 icmp = connp->conn_icmp; in icmp_input()
2578 is = icmp->icmp_is; in icmp_input()
2743 if (icmp->icmp_filter != NULL) { in icmp_input()
2750 if (ICMP6_FILTER_WILLBLOCK(type, icmp->icmp_filter)) { in icmp_input()
2938 icmp_t *icmp = connp->conn_icmp; in rawip_do_unbind() local
2942 if (icmp->icmp_state == TS_UNBND) { in rawip_do_unbind()
2956 icmp->icmp_state = TS_UNBND; in rawip_do_unbind()
3015 icmp_t *icmp = connp->conn_icmp; in icmp_output_hdrincl() local
3016 icmp_stack_t *is = icmp->icmp_is; in icmp_output_hdrincl()
3335 icmp_t *icmp = connp->conn_icmp; in icmp_output_ancillary() local
3336 icmp_stack_t *is = icmp->icmp_is; in icmp_output_ancillary()
3653 icmp_t *icmp = connp->conn_icmp; in icmp_output_connected() local
3654 icmp_stack_t *is = icmp->icmp_is; in icmp_output_connected()
3814 icmp_t *icmp = connp->conn_icmp; in icmp_output_lastdst() local
3815 icmp_stack_t *is = icmp->icmp_is; in icmp_output_lastdst()
3981 icmp_t *icmp = connp->conn_icmp; in icmp_prepend_header_template() local
3982 icmp_stack_t *is = icmp->icmp_is; in icmp_prepend_header_template()
4126 icmp_t *icmp = connp->conn_icmp; in icmp_wput() local
4130 icmp_stack_t *is = icmp->icmp_is; in icmp_wput()
4195 if (icmp->icmp_state == TS_UNBND) { in icmp_wput()
4238 if (icmp->icmp_state == TS_DATA_XFER && in icmp_wput()
4292 if (icmp->icmp_hdrincl) { in icmp_wput()
4314 if (icmp->icmp_state == TS_DATA_XFER && in icmp_wput()
4378 icmp_t *icmp = connp->conn_icmp; in icmp_output_newdst() local
4379 icmp_stack_t *is = icmp->icmp_is; in icmp_output_newdst()
4412 if (icmp->icmp_state == TS_DATA_XFER) { in icmp_output_newdst()
4537 if (icmp->icmp_state == TS_DATA_XFER) { in icmp_output_newdst()
4717 icmp_t *icmp = connp->conn_icmp; in icmp_wput_other() local
4825 if (icmp->icmp_state != TS_DATA_XFER) { in icmp_wput_other()
4873 icmp_t *icmp = connp->conn_icmp; in icmp_wput_iocdata() local
4935 if (icmp->icmp_state != TS_DATA_XFER) { in icmp_wput_iocdata()
5186 icmp_t *icmp = connp->conn_icmp; in rawip_connect() local
5199 if (icmp->icmp_state != TS_DATA_XFER) in rawip_connect()
5211 if (icmp->icmp_state == TS_UNBND) { in rawip_connect()
5253 icmp_t *icmp; in rawip_fallback() local
5262 icmp = connp->conn_icmp; in rawip_fallback()
5296 icmp_do_capability_ack(icmp, &tca, TC1_INFO); in rawip_fallback()
5319 mutex_enter(&icmp->icmp_recv_lock); in rawip_fallback()
5321 mp->b_next = icmp->icmp_fallback_queue_head; in rawip_fallback()
5322 icmp->icmp_fallback_queue_head = mp; in rawip_fallback()
5324 while (icmp->icmp_fallback_queue_head != NULL) { in rawip_fallback()
5325 mp = icmp->icmp_fallback_queue_head; in rawip_fallback()
5326 icmp->icmp_fallback_queue_head = mp->b_next; in rawip_fallback()
5328 mutex_exit(&icmp->icmp_recv_lock); in rawip_fallback()
5330 mutex_enter(&icmp->icmp_recv_lock); in rawip_fallback()
5332 icmp->icmp_fallback_queue_tail = icmp->icmp_fallback_queue_head; in rawip_fallback()
5341 mutex_exit(&icmp->icmp_recv_lock); in rawip_fallback()
5343 ASSERT(icmp->icmp_fallback_queue_head == NULL && in rawip_fallback()
5344 icmp->icmp_fallback_queue_tail == NULL); in rawip_fallback()
5416 icmp_t *icmp = connp->conn_icmp; in rawip_getpeername() local
5423 if (icmp->icmp_state != TS_DATA_XFER) in rawip_getpeername()
5563 icmp_t *icmp = connp->conn_icmp; in rawip_clr_flowctrl() local
5565 mutex_enter(&icmp->icmp_recv_lock); in rawip_clr_flowctrl()
5567 mutex_exit(&icmp->icmp_recv_lock); in rawip_clr_flowctrl()
5630 icmp_t *icmp = connp->conn_icmp; in rawip_send() local
5632 icmp_stack_t *is = icmp->icmp_is; in rawip_send()
5642 if (icmp->icmp_state == TS_UNBND) { in rawip_send()
5657 if (icmp->icmp_hdrincl) { in rawip_send()
5675 if (icmp->icmp_state != TS_DATA_XFER) { in rawip_send()
5690 if (icmp->icmp_state == TS_DATA_XFER) { in rawip_send()
5742 if (icmp->icmp_delayed_error != 0) { in rawip_send()
5743 sin6_t *sin2 = (sin6_t *)&icmp->icmp_delayed_addr; in rawip_send()
5745 error = icmp->icmp_delayed_error; in rawip_send()
5746 icmp->icmp_delayed_error = 0; in rawip_send()
5801 if (icmp->icmp_delayed_error != 0) { in rawip_send()
5802 sin_t *sin2 = (sin_t *)&icmp->icmp_delayed_addr; in rawip_send()
5804 error = icmp->icmp_delayed_error; in rawip_send()
5805 icmp->icmp_delayed_error = 0; in rawip_send()