Implement replies to TEST frames
This commit is contained in:
parent
f364604dcb
commit
3d12ab33e3
1 changed files with 19 additions and 0 deletions
19
src/server.c
19
src/server.c
|
@ -1140,6 +1140,18 @@ static int reply_ua(patty_ax25_if *iface,
|
|||
return reply_to(iface, frame, &reply);
|
||||
}
|
||||
|
||||
static int reply_test(patty_ax25_if *iface,
|
||||
patty_ax25_frame *frame) {
|
||||
patty_ax25_frame reply = {
|
||||
.control = PATTY_AX25_FRAME_UA | (PATTY_AX25_FRAME_FINAL << 4),
|
||||
.proto = PATTY_AX25_PROTO_NONE,
|
||||
.info = frame->info,
|
||||
.infolen = frame->infolen
|
||||
};
|
||||
|
||||
return reply_to(iface, frame, &reply);
|
||||
}
|
||||
|
||||
static int handle_frmr(patty_ax25_server *server,
|
||||
patty_ax25_if *iface,
|
||||
patty_ax25_sock *sock,
|
||||
|
@ -1227,6 +1239,12 @@ error_client_by_sock:
|
|||
return -1;
|
||||
}
|
||||
|
||||
static int handle_test(patty_ax25_server *server,
|
||||
patty_ax25_if *iface,
|
||||
patty_ax25_frame *frame) {
|
||||
return reply_test(iface, frame);
|
||||
}
|
||||
|
||||
static int handle_ua(patty_ax25_server *server,
|
||||
patty_ax25_if *iface,
|
||||
patty_ax25_sock *sock,
|
||||
|
@ -1586,6 +1604,7 @@ static int handle_frame(patty_ax25_server *server,
|
|||
case PATTY_AX25_FRAME_XID: return handle_xid(server, iface, &frame, buf, offset, len);
|
||||
case PATTY_AX25_FRAME_SABM:
|
||||
case PATTY_AX25_FRAME_SABME: return handle_sabm(server, iface, &frame);
|
||||
case PATTY_AX25_FRAME_TEST: return handle_test(server, iface, &frame);
|
||||
case PATTY_AX25_FRAME_UA: return handle_ua(server, iface, sock, &frame);
|
||||
case PATTY_AX25_FRAME_DM: return handle_dm(server, iface, sock, &frame);
|
||||
case PATTY_AX25_FRAME_DISC: return handle_disc(server, iface, sock, &frame);
|
||||
|
|
Loading…
Add table
Reference in a new issue