sockets.json (b935385c351d624993c4accd712cef8510658ecd) | sockets.json (a937b6aa739f65f2cae2ad9a7eb65a309ad2a359) |
---|---|
1# -*- Mode: Python -*- 2# vim: filetype=python 3 4## 5# = Socket data types 6## 7 8{ 'include': 'common.json' } --- 27 unchanged lines hidden (view full) --- 36{ 'struct': 'InetSocketAddressBase', 37 'data': { 38 'host': 'str', 39 'port': 'str' } } 40 41## 42# @InetSocketAddress: 43# | 1# -*- Mode: Python -*- 2# vim: filetype=python 3 4## 5# = Socket data types 6## 7 8{ 'include': 'common.json' } --- 27 unchanged lines hidden (view full) --- 36{ 'struct': 'InetSocketAddressBase', 37 'data': { 38 'host': 'str', 39 'port': 'str' } } 40 41## 42# @InetSocketAddress: 43# |
44# Captures a socket address or address range in the Internet namespace. | 44# Captures a socket address or address range in the Internet 45# namespace. |
45# | 46# |
46# @numeric: true if the host/port are guaranteed to be numeric, 47# false if name resolution should be attempted. Defaults to false. 48# (Since 2.9) | 47# @numeric: true if the host/port are guaranteed to be numeric, false 48# if name resolution should be attempted. Defaults to false. 49# (Since 2.9) |
49# 50# @to: If present, this is range of possible addresses, with port | 50# 51# @to: If present, this is range of possible addresses, with port |
51# between @port and @to. | 52# between @port and @to. |
52# | 53# |
53# @ipv4: whether to accept IPv4 addresses, default try both IPv4 and IPv6 | 54# @ipv4: whether to accept IPv4 addresses, default try both IPv4 and 55# IPv6 |
54# | 56# |
55# @ipv6: whether to accept IPv6 addresses, default try both IPv4 and IPv6 | 57# @ipv6: whether to accept IPv6 addresses, default try both IPv4 and 58# IPv6 |
56# | 59# |
57# @keep-alive: enable keep-alive when connecting to this socket. Not supported 58# for passive sockets. (Since 4.2) | 60# @keep-alive: enable keep-alive when connecting to this socket. Not 61# supported for passive sockets. (Since 4.2) |
59# 60# @mptcp: enable multi-path TCP. (Since 6.1) 61# 62# Since: 1.3 63## 64{ 'struct': 'InetSocketAddress', 65 'base': 'InetSocketAddressBase', 66 'data': { --- 5 unchanged lines hidden (view full) --- 72 '*mptcp': { 'type': 'bool', 'if': 'HAVE_IPPROTO_MPTCP' } } } 73 74## 75# @UnixSocketAddress: 76# 77# Captures a socket address in the local ("Unix socket") namespace. 78# 79# @path: filesystem path to use | 62# 63# @mptcp: enable multi-path TCP. (Since 6.1) 64# 65# Since: 1.3 66## 67{ 'struct': 'InetSocketAddress', 68 'base': 'InetSocketAddressBase', 69 'data': { --- 5 unchanged lines hidden (view full) --- 75 '*mptcp': { 'type': 'bool', 'if': 'HAVE_IPPROTO_MPTCP' } } } 76 77## 78# @UnixSocketAddress: 79# 80# Captures a socket address in the local ("Unix socket") namespace. 81# 82# @path: filesystem path to use |
83# |
|
80# @abstract: if true, this is a Linux abstract socket address. @path | 84# @abstract: if true, this is a Linux abstract socket address. @path |
81# will be prefixed by a null byte, and optionally padded 82# with null bytes. Defaults to false. (Since 5.1) | 85# will be prefixed by a null byte, and optionally padded with null 86# bytes. Defaults to false. (Since 5.1) 87# |
83# @tight: if false, pad an abstract socket address with enough null | 88# @tight: if false, pad an abstract socket address with enough null |
84# bytes to make it fill struct sockaddr_un member sun_path. 85# Defaults to true. (Since 5.1) | 89# bytes to make it fill struct sockaddr_un member sun_path. 90# Defaults to true. (Since 5.1) |
86# 87# Since: 1.3 88## 89{ 'struct': 'UnixSocketAddress', 90 'data': { 91 'path': 'str', 92 '*abstract': { 'type': 'bool', 'if': 'CONFIG_LINUX' }, 93 '*tight': { 'type': 'bool', 'if': 'CONFIG_LINUX' } } } 94 95## 96# @VsockSocketAddress: 97# 98# Captures a socket address in the vsock namespace. 99# 100# @cid: unique host identifier | 91# 92# Since: 1.3 93## 94{ 'struct': 'UnixSocketAddress', 95 'data': { 96 'path': 'str', 97 '*abstract': { 'type': 'bool', 'if': 'CONFIG_LINUX' }, 98 '*tight': { 'type': 'bool', 'if': 'CONFIG_LINUX' } } } 99 100## 101# @VsockSocketAddress: 102# 103# Captures a socket address in the vsock namespace. 104# 105# @cid: unique host identifier |
106# |
|
101# @port: port 102# 103# Note: string types are used to allow for possible future hostname or | 107# @port: port 108# 109# Note: string types are used to allow for possible future hostname or |
104# service resolution support. | 110# service resolution support. |
105# 106# Since: 2.8 107## 108{ 'struct': 'VsockSocketAddress', 109 'data': { 110 'cid': 'str', 111 'port': 'str' } } 112 --- 27 unchanged lines hidden (view full) --- 140# Since: 1.3 141## 142{ 'struct': 'StringWrapper', 143 'data': { 'data': 'String' } } 144 145## 146# @SocketAddressLegacy: 147# | 111# 112# Since: 2.8 113## 114{ 'struct': 'VsockSocketAddress', 115 'data': { 116 'cid': 'str', 117 'port': 'str' } } 118 --- 27 unchanged lines hidden (view full) --- 146# Since: 1.3 147## 148{ 'struct': 'StringWrapper', 149 'data': { 'data': 'String' } } 150 151## 152# @SocketAddressLegacy: 153# |
148# Captures the address of a socket, which could also be a named file descriptor | 154# Captures the address of a socket, which could also be a named file 155# descriptor |
149# 150# Note: This type is deprecated in favor of SocketAddress. The | 156# 157# Note: This type is deprecated in favor of SocketAddress. The |
151# difference between SocketAddressLegacy and SocketAddress is that the 152# latter has fewer {} on the wire. | 158# difference between SocketAddressLegacy and SocketAddress is that 159# the latter has fewer {} on the wire. |
153# 154# Since: 1.3 155## 156{ 'union': 'SocketAddressLegacy', 157 'base': { 'type': 'SocketAddressType' }, 158 'discriminator': 'type', 159 'data': { 160 'inet': 'InetSocketAddressWrapper', --- 7 unchanged lines hidden (view full) --- 168# Available SocketAddress types 169# 170# @inet: Internet address 171# 172# @unix: Unix domain socket 173# 174# @vsock: VMCI address 175# | 160# 161# Since: 1.3 162## 163{ 'union': 'SocketAddressLegacy', 164 'base': { 'type': 'SocketAddressType' }, 165 'discriminator': 'type', 166 'data': { 167 'inet': 'InetSocketAddressWrapper', --- 7 unchanged lines hidden (view full) --- 175# Available SocketAddress types 176# 177# @inet: Internet address 178# 179# @unix: Unix domain socket 180# 181# @vsock: VMCI address 182# |
176# @fd: decimal is for file descriptor number, otherwise a file descriptor name. 177# Named file descriptors are permitted in monitor commands, in combination 178# with the 'getfd' command. Decimal file descriptors are permitted at 179# startup or other contexts where no monitor context is active. | 183# @fd: decimal is for file descriptor number, otherwise a file 184# descriptor name. Named file descriptors are permitted in 185# monitor commands, in combination with the 'getfd' command. 186# Decimal file descriptors are permitted at startup or other 187# contexts where no monitor context is active. |
180# 181# Since: 2.9 182## 183{ 'enum': 'SocketAddressType', 184 'data': [ 'inet', 'unix', 'vsock', 'fd' ] } 185 186## 187# @SocketAddress: --- 15 unchanged lines hidden --- | 188# 189# Since: 2.9 190## 191{ 'enum': 'SocketAddressType', 192 'data': [ 'inet', 'unix', 'vsock', 'fd' ] } 193 194## 195# @SocketAddress: --- 15 unchanged lines hidden --- |