diff options
| author | TheOfficialFloW <theflow@google.com> | 2020-06-11 08:59:37 -0700 |
|---|---|---|
| committer | GitHub <noreply@github.com> | 2020-06-11 17:59:37 +0200 |
| commit | 1beaee21715b99daf89bf229213dd3ddabba6683 (patch) | |
| tree | cff70d0ee290c54ebf4d4f7cf8e1d7837673f39d /sys/linux/l2cap.txt | |
| parent | dfdd11f7777557e4540f3319ff8b5f8ddf82bf19 (diff) | |
sys/linux: add l2cap descriptions
* sys/linux: add l2cap descriptions
* sys/linux: restore bpf and fscrypt changes
* sys/linux: restore key.txt
Diffstat (limited to 'sys/linux/l2cap.txt')
| -rw-r--r-- | sys/linux/l2cap.txt | 219 |
1 files changed, 219 insertions, 0 deletions
diff --git a/sys/linux/l2cap.txt b/sys/linux/l2cap.txt new file mode 100644 index 000000000..6a400ec01 --- /dev/null +++ b/sys/linux/l2cap.txt @@ -0,0 +1,219 @@ +# Copyright 2020 syzkaller project authors. All rights reserved. +# Use of this source code is governed by Apache 2 LICENSE that can be found in the LICENSE file. + +include <net/bluetooth/bluetooth.h> +include <net/bluetooth/hci_sock.h> +include <net/bluetooth/l2cap.h> + +l2cap_hdr_un [ + l2cap_cid_signaling l2cap_hdr_t[L2CAP_CID_SIGNALING, array[l2cap_cid_signaling_un]] + l2cap_cid_le_signaling l2cap_hdr_t[L2CAP_CID_LE_SIGNALING, array[l2cap_cid_le_signaling_un]] +] [varlen] + +l2cap_cid_signaling_un [ + l2cap_cmd_rej_unk l2cap_cmd_hdr_t[L2CAP_COMMAND_REJ, l2cap_cmd_rej_unk] + l2cap_conn_req l2cap_cmd_hdr_t[L2CAP_CONN_REQ, l2cap_conn_req] + l2cap_conn_rsp l2cap_cmd_hdr_t[L2CAP_CONN_RSP, l2cap_conn_rsp] + l2cap_conf_req l2cap_cmd_hdr_t[L2CAP_CONF_REQ, l2cap_conf_req] + l2cap_conf_rsp l2cap_cmd_hdr_t[L2CAP_CONF_RSP, l2cap_conf_rsp] + l2cap_create_chan_req l2cap_cmd_hdr_t[L2CAP_CREATE_CHAN_REQ, l2cap_create_chan_req] + l2cap_create_chan_rsp l2cap_cmd_hdr_t[L2CAP_CREATE_CHAN_RSP, l2cap_create_chan_rsp] + l2cap_disconn_req l2cap_cmd_hdr_t[L2CAP_DISCONN_REQ, l2cap_disconn_req] + l2cap_disconn_rsp l2cap_cmd_hdr_t[L2CAP_DISCONN_RSP, l2cap_disconn_rsp] + l2cap_info_req l2cap_cmd_hdr_t[L2CAP_INFO_REQ, l2cap_info_req] + l2cap_info_rsp l2cap_cmd_hdr_t[L2CAP_INFO_RSP, l2cap_info_rsp] + l2cap_move_chan_cfm l2cap_cmd_hdr_t[L2CAP_MOVE_CHAN_CFM, l2cap_move_chan_cfm] + l2cap_move_chan_cfm_rsp l2cap_cmd_hdr_t[L2CAP_MOVE_CHAN_CFM_RSP, l2cap_move_chan_cfm_rsp] + l2cap_move_chan_req l2cap_cmd_hdr_t[L2CAP_MOVE_CHAN_REQ, l2cap_move_chan_req] + l2cap_move_chan_rsp l2cap_cmd_hdr_t[L2CAP_MOVE_CHAN_RSP, l2cap_move_chan_rsp] +] [varlen] + +l2cap_cid_le_signaling_un [ + l2cap_cmd_rej_unk l2cap_cmd_hdr_t[L2CAP_COMMAND_REJ, l2cap_cmd_rej_unk] + l2cap_conn_param_update_req l2cap_cmd_hdr_t[L2CAP_CONN_PARAM_UPDATE_REQ, l2cap_conn_param_update_req] + l2cap_conn_param_update_rsp l2cap_cmd_hdr_t[L2CAP_CONN_PARAM_UPDATE_RSP, l2cap_conn_param_update_rsp] + l2cap_disconn_req l2cap_cmd_hdr_t[L2CAP_DISCONN_REQ, l2cap_disconn_req] + l2cap_disconn_rsp l2cap_cmd_hdr_t[L2CAP_DISCONN_RSP, l2cap_disconn_rsp] + l2cap_ecred_conn_req l2cap_cmd_hdr_t[L2CAP_ECRED_CONN_REQ, l2cap_ecred_conn_req] + l2cap_ecred_conn_rsp l2cap_cmd_hdr_t[L2CAP_ECRED_CONN_RSP, l2cap_ecred_conn_rsp] + l2cap_ecred_reconf_req l2cap_cmd_hdr_t[L2CAP_ECRED_RECONF_REQ, l2cap_ecred_reconf_req] + l2cap_ecred_reconf_rsp l2cap_cmd_hdr_t[L2CAP_ECRED_RECONF_RSP, l2cap_ecred_reconf_rsp] + l2cap_le_conn_req l2cap_cmd_hdr_t[L2CAP_LE_CONN_REQ, l2cap_le_conn_req] + l2cap_le_conn_rsp l2cap_cmd_hdr_t[L2CAP_LE_CONN_RSP, l2cap_le_conn_rsp] + l2cap_le_credits l2cap_cmd_hdr_t[L2CAP_LE_CREDITS, l2cap_le_credits] +] [varlen] + +type l2cap_hdr_t[CID, PAYLOAD] { + hdr l2cap_hdr[CID] + payload PAYLOAD +} [packed] + +type l2cap_hdr[CID] { + len bytesize[l2cap_hdr_t:payload, int16] + cid const[CID, int16] +} [packed] + +type l2cap_cmd_hdr_t[CODE, PAYLOAD] { + hdr l2cap_cmd_hdr[CODE] + payload PAYLOAD +} [packed] + +type l2cap_cmd_hdr[CODE] { + code const[CODE, int8] + ident int8 + len bytesize[l2cap_cmd_hdr_t:payload, int16] +} [packed] + +l2cap_cmd_rej_unk { + reason int16 +} [packed] + +l2cap_conf_req { + dcid int16 + flags int16 + data array[int8] +} [packed] + +l2cap_conf_rsp { + scid int16 + flags int16 + result int16 + data array[int8] +} [packed] + +l2cap_conn_param_update_req { + min int16 + max int16 + latency int16 + to_multiplier int16 +} [packed] + +l2cap_conn_param_update_rsp { + result int16 +} [packed] + +l2cap_conn_req { + psm int16 + scid int16 +} [packed] + +l2cap_conn_rsp { + dcid int16 + scid int16 + result int16 + status int16 +} [packed] + +l2cap_conninfo { + hci_handle int16 + dev_class array[int8, 3] +} [packed] + +l2cap_create_chan_req { + psm int16 + scid int16 + amp_id int8 +} [packed] + +l2cap_create_chan_rsp { + dcid int16 + scid int16 + result int16 + status int16 +} [packed] + +l2cap_disconn_req { + dcid int16 + scid int16 +} [packed] + +l2cap_disconn_rsp { + dcid int16 + scid int16 +} [packed] + +l2cap_ecred_conn_req { + psm int16 + mtu int16 + mps int16 + credits int16 + scid array[int16] +} [packed] + +l2cap_ecred_conn_rsp { + mtu int16 + mps int16 + credits int16 + result int16 + dcid array[int16] +} [packed] + +l2cap_ecred_reconf_req { + mtu int16 + mps int16 + scid array[int16] +} [packed] + +l2cap_ecred_reconf_rsp { + result int16 +} [packed] + +l2cap_info_req { + type int16 +} [packed] + +l2cap_info_rsp { + type int16 + result int16 + data array[int8] +} [packed] + +l2cap_le_conn_req { + psm int16 + scid int16 + mtu int16 + mps int16 + credits int16 +} [packed] + +l2cap_le_conn_rsp { + dcid int16 + mtu int16 + mps int16 + credits int16 + result int16 +} [packed] + +l2cap_le_credits { + cid int16 + credits int16 +} [packed] + +l2cap_move_chan_cfm { + icid int16 + result int16 +} [packed] + +l2cap_move_chan_cfm_rsp { + icid int16 +} [packed] + +l2cap_move_chan_req { + icid int16 + dest_amp_id int8 +} [packed] + +l2cap_move_chan_rsp { + icid int16 + result int16 +} [packed] + +l2cap_options { + omtu int16 + imtu int16 + flush_to int16 + mode int8 + fcs int8 + max_tx int8 + txwin_size int16 +} [packed] |
