Send the right rejection packets
This commit is contained in:
parent
f26e977bfc
commit
e34713c766
1 changed files with 6 additions and 4 deletions
10
src/server.c
10
src/server.c
|
@ -1484,7 +1484,7 @@ static int handle_segment(patty_ax25_server *server,
|
|||
return 0;
|
||||
|
||||
reply_rej:
|
||||
return patty_ax25_sock_send_rej(sock, PATTY_AX25_FRAME_RESPONSE, 0);
|
||||
return patty_ax25_sock_send_srej(sock, PATTY_AX25_FRAME_RESPONSE);
|
||||
|
||||
error_write:
|
||||
error_sock_assembler_read:
|
||||
|
@ -1503,10 +1503,12 @@ static int handle_i(patty_ax25_server *server,
|
|||
|
||||
patty_ax25_sock_ack(sock, frame->nr - 1);
|
||||
|
||||
if (sock->vr == frame->ns) {
|
||||
if (frame->ns == sock->vr) {
|
||||
patty_ax25_sock_vr_incr(sock);
|
||||
} else {
|
||||
return patty_ax25_sock_send_rej(sock, PATTY_AX25_FRAME_RESPONSE, 0);
|
||||
} else if (frame->ns == sock->vr + 1) {
|
||||
return patty_ax25_sock_send_srej(sock, PATTY_AX25_FRAME_RESPONSE);
|
||||
} else if (frame->ns > sock->vr + 1) {
|
||||
return patty_ax25_sock_send_rej(sock, PATTY_AX25_FRAME_RESPONSE, 1);
|
||||
}
|
||||
|
||||
if (frame->proto == PATTY_AX25_PROTO_FRAGMENT) {
|
||||
|
|
Loading…
Add table
Reference in a new issue