diff options
| author | Dmitry Vyukov <dvyukov@google.com> | 2015-12-11 19:50:21 +0100 |
|---|---|---|
| committer | Dmitry Vyukov <dvyukov@google.com> | 2015-12-17 14:38:46 +0100 |
| commit | 6f71e5dce1817676a47fc7b92f7d288e4094f614 (patch) | |
| tree | 696068b0d1735504d9d5e44615f4a6fa951f8390 /sys/sys.txt | |
| parent | 6922b20d36c85dfc02126c323d5de936ede9453c (diff) | |
sys: add PF_NFC support
Diffstat (limited to 'sys/sys.txt')
| -rw-r--r-- | sys/sys.txt | 82 |
1 files changed, 82 insertions, 0 deletions
diff --git a/sys/sys.txt b/sys/sys.txt index 7e84ed34f..189266d0c 100644 --- a/sys/sys.txt +++ b/sys/sys.txt @@ -72,6 +72,7 @@ include <linux/fuse.h> include <linux/perf_event.h> include <linux/hw_breakpoint.h> include <linux/if_alg.h> +include <linux/nfc.h> include <asm/prctl.h> @@ -2652,3 +2653,84 @@ define ALG_SET_AEAD_AUTHSIZE 5 #define AF_ALG 38 define SOL_ALG 279 + + + +# PF_KEY support. + +# See net/key/af_key.c, requires root. +# socket$key(domain const[AF_KEY], type const[SOCK_RAW], proto const[PF_KEY_V2]) fd[key] + + + + +# PF_NFC support. + +socket$nfc_llcp(domain const[AF_NFC], type flags[nfc_llcp_type], proto const[NFC_SOCKPROTO_LLCP]) fd[nfc_llcp] +bind$nfc_llcp(fd fd[nfc_llcp], addr ptr[in, sockaddr_nfc_llcp], addrlen len[addr]) +connect$nfc_llcp(fd fd[nfc_llcp], addr ptr[in, sockaddr_nfc_llcp], addrlen len[addr]) +accept$nfc_llcp(fd fd[nfc_llcp], peer ptr[out, sockaddr_nfc_llcp, opt], peerlen ptr[inout, len[peer, int32]]) fd[nfc_llcp] +setsockopt$NFC_LLCP_RW(fd fd[nfc_llcp], level const[SOL_NFC], opt const[NFC_LLCP_RW], arg ptr[in, int32], arglen len[arg]) +setsockopt$NFC_LLCP_MIUX(fd fd[nfc_llcp], level const[SOL_NFC], opt const[NFC_LLCP_MIUX], arg ptr[in, int32], arglen len[arg]) +getsockopt$nfc_llcp(fd fd[nfc_llcp], level const[SOL_NFC], opt flags[nfc_llcp_opts], arg buffer[out], arglen len[arg]) +sendmsg$nfc_llcp(fd fd[nfc_llcp], msg ptr[in, nfc_llcp_send_msghdr], f flags[send_flags]) +sendmmsg$nfc_llcp(fd fd[nfc_llcp], mmsg ptr[in, array[nfc_llcp_send_msghdr]], vlen len[mmsg], f flags[send_flags]) + +socket$nfc_raw(domain const[AF_NFC], type flags[nfc_raw_type], proto const[NFC_SOCKPROTO_RAW]) fd[nfc_raw] +connect$nfc_raw(fd fd[nfc_raw], addr ptr[in, sockaddr_nfc], addrlen len[addr]) + +nfc_llcp_type = SOCK_STREAM, SOCK_DGRAM, SOCK_RAW +nfc_raw_type = SOCK_STREAM, SOCK_RAW +nfc_proto = NFC_PROTO_JEWEL, NFC_PROTO_MIFARE, NFC_PROTO_FELICA, NFC_PROTO_ISO14443, NFC_PROTO_NFC_DEP, NFC_PROTO_ISO14443_B, NFC_PROTO_ISO15693 +nfc_llcp_opts = NFC_LLCP_RW, NFC_LLCP_MIUX, NFC_LLCP_REMOTE_MIU, NFC_LLCP_REMOTE_LTO, NFC_LLCP_REMOTE_RW + +sockaddr_nfc_llcp { + family const[AF_NFC, int16] + devidx int32 + target int32 + proto flags[nfc_proto, int32] + dsap int8 + ssap int8 +# TODO: need fixed-length arrays +# char service_name[63] + serv0 int8 + serv1 int8 + serv2 int32 + serv3 int32 + serv4 int32 + serv5 int32 + serv6 int32 + serv7 int32 + serv8 int32 + serv9 int32 + serv10 int32 + serv11 int32 + serv12 int32 + serv13 int32 + serv14 int32 + serv15 int32 + serv16 int32 + serv17 int8 + servlen intptr +} + +sockaddr_nfc { + family const[AF_NFC, int16] + dev int32 + targ int32 + proto flags[nfc_proto, int32] +} + +nfc_llcp_send_msghdr { + addr ptr[in, sockaddr_nfc_llcp] + addrlen len[addr, int32] + vec ptr[in, array[iovec_in]] + vlen len[vec, intptr] + ctrl ptr[in, cmsghdr] + ctrllen len[ctrl, intptr] + f flags[send_flags, int32] +} + +define SOL_NFC 280 +define NFC_PROTO_ISO15693 7 + |
