Lines Matching refs:ax25
29 void ax25_std_heartbeat_expiry(ax25_cb *ax25) in ax25_std_heartbeat_expiry() argument
31 struct sock *sk = ax25->sk; in ax25_std_heartbeat_expiry()
36 switch (ax25->state) { in ax25_std_heartbeat_expiry()
46 ax25_destroy_socket(ax25); in ax25_std_heartbeat_expiry()
51 ax25_destroy_socket(ax25); in ax25_std_heartbeat_expiry()
64 (ax25->condition & AX25_COND_OWN_RX_BUSY)) { in ax25_std_heartbeat_expiry()
65 ax25->condition &= ~AX25_COND_OWN_RX_BUSY; in ax25_std_heartbeat_expiry()
66 ax25->condition &= ~AX25_COND_ACK_PENDING; in ax25_std_heartbeat_expiry()
67 ax25_send_control(ax25, AX25_RR, AX25_POLLOFF, AX25_RESPONSE); in ax25_std_heartbeat_expiry()
76 ax25_start_heartbeat(ax25); in ax25_std_heartbeat_expiry()
79 void ax25_std_t2timer_expiry(ax25_cb *ax25) in ax25_std_t2timer_expiry() argument
81 if (ax25->condition & AX25_COND_ACK_PENDING) { in ax25_std_t2timer_expiry()
82 ax25->condition &= ~AX25_COND_ACK_PENDING; in ax25_std_t2timer_expiry()
83 ax25_std_timeout_response(ax25); in ax25_std_t2timer_expiry()
87 void ax25_std_t3timer_expiry(ax25_cb *ax25) in ax25_std_t3timer_expiry() argument
89 ax25->n2count = 0; in ax25_std_t3timer_expiry()
90 ax25_std_transmit_enquiry(ax25); in ax25_std_t3timer_expiry()
91 ax25->state = AX25_STATE_4; in ax25_std_t3timer_expiry()
94 void ax25_std_idletimer_expiry(ax25_cb *ax25) in ax25_std_idletimer_expiry() argument
96 ax25_clear_queues(ax25); in ax25_std_idletimer_expiry()
98 ax25->n2count = 0; in ax25_std_idletimer_expiry()
99 ax25_send_control(ax25, AX25_DISC, AX25_POLLON, AX25_COMMAND); in ax25_std_idletimer_expiry()
100 ax25->state = AX25_STATE_2; in ax25_std_idletimer_expiry()
102 ax25_calculate_t1(ax25); in ax25_std_idletimer_expiry()
103 ax25_start_t1timer(ax25); in ax25_std_idletimer_expiry()
104 ax25_stop_t2timer(ax25); in ax25_std_idletimer_expiry()
105 ax25_stop_t3timer(ax25); in ax25_std_idletimer_expiry()
107 if (ax25->sk != NULL) { in ax25_std_idletimer_expiry()
108 bh_lock_sock(ax25->sk); in ax25_std_idletimer_expiry()
109 ax25->sk->sk_state = TCP_CLOSE; in ax25_std_idletimer_expiry()
110 ax25->sk->sk_err = 0; in ax25_std_idletimer_expiry()
111 ax25->sk->sk_shutdown |= SEND_SHUTDOWN; in ax25_std_idletimer_expiry()
112 if (!sock_flag(ax25->sk, SOCK_DEAD)) { in ax25_std_idletimer_expiry()
113 ax25->sk->sk_state_change(ax25->sk); in ax25_std_idletimer_expiry()
114 sock_set_flag(ax25->sk, SOCK_DEAD); in ax25_std_idletimer_expiry()
116 bh_unlock_sock(ax25->sk); in ax25_std_idletimer_expiry()
120 void ax25_std_t1timer_expiry(ax25_cb *ax25) in ax25_std_t1timer_expiry() argument
122 switch (ax25->state) { in ax25_std_t1timer_expiry()
124 if (ax25->n2count == ax25->n2) { in ax25_std_t1timer_expiry()
125 if (ax25->modulus == AX25_MODULUS) { in ax25_std_t1timer_expiry()
126 ax25_disconnect(ax25, ETIMEDOUT); in ax25_std_t1timer_expiry()
129 ax25->modulus = AX25_MODULUS; in ax25_std_t1timer_expiry()
130 ax25->window = ax25->ax25_dev->values[AX25_VALUES_WINDOW]; in ax25_std_t1timer_expiry()
131 ax25->n2count = 0; in ax25_std_t1timer_expiry()
132 ax25_send_control(ax25, AX25_SABM, AX25_POLLON, AX25_COMMAND); in ax25_std_t1timer_expiry()
135 ax25->n2count++; in ax25_std_t1timer_expiry()
136 if (ax25->modulus == AX25_MODULUS) in ax25_std_t1timer_expiry()
137 ax25_send_control(ax25, AX25_SABM, AX25_POLLON, AX25_COMMAND); in ax25_std_t1timer_expiry()
139 ax25_send_control(ax25, AX25_SABME, AX25_POLLON, AX25_COMMAND); in ax25_std_t1timer_expiry()
144 if (ax25->n2count == ax25->n2) { in ax25_std_t1timer_expiry()
145 ax25_send_control(ax25, AX25_DISC, AX25_POLLON, AX25_COMMAND); in ax25_std_t1timer_expiry()
146 if (!sock_flag(ax25->sk, SOCK_DESTROY)) in ax25_std_t1timer_expiry()
147 ax25_disconnect(ax25, ETIMEDOUT); in ax25_std_t1timer_expiry()
150 ax25->n2count++; in ax25_std_t1timer_expiry()
151 ax25_send_control(ax25, AX25_DISC, AX25_POLLON, AX25_COMMAND); in ax25_std_t1timer_expiry()
156 ax25->n2count = 1; in ax25_std_t1timer_expiry()
157 ax25_std_transmit_enquiry(ax25); in ax25_std_t1timer_expiry()
158 ax25->state = AX25_STATE_4; in ax25_std_t1timer_expiry()
162 if (ax25->n2count == ax25->n2) { in ax25_std_t1timer_expiry()
163 ax25_send_control(ax25, AX25_DM, AX25_POLLON, AX25_RESPONSE); in ax25_std_t1timer_expiry()
164 ax25_disconnect(ax25, ETIMEDOUT); in ax25_std_t1timer_expiry()
167 ax25->n2count++; in ax25_std_t1timer_expiry()
168 ax25_std_transmit_enquiry(ax25); in ax25_std_t1timer_expiry()
173 ax25_calculate_t1(ax25); in ax25_std_t1timer_expiry()
174 ax25_start_t1timer(ax25); in ax25_std_t1timer_expiry()