android_kernel_samsung_a7y1.../include/net
Xin Long b9810220bc sctp: fix the issue that flags are ignored when using kernel_connect
commit 644fbdeacf1d3edd366e44b8ba214de9d1dd66a9 upstream.

Now sctp uses inet_dgram_connect as its proto_ops .connect, and the flags
param can't be passed into its proto .connect where this flags is really
needed.

sctp works around it by getting flags from socket file in __sctp_connect.
It works for connecting from userspace, as inherently the user sock has
socket file and it passes f_flags as the flags param into the proto_ops
.connect.

However, the sock created by sock_create_kern doesn't have a socket file,
and it passes the flags (like O_NONBLOCK) by using the flags param in
kernel_connect, which calls proto_ops .connect later.

So to fix it, this patch defines a new proto_ops .connect for sctp,
sctp_inet_connect, which calls __sctp_connect() directly with this
flags param. After this, the sctp's proto .connect can be removed.

Note that sctp_inet_connect doesn't need to do some checks that are not
needed for sctp, which makes thing better than with inet_dgram_connect.

Suggested-by: Marcelo Ricardo Leitner <marcelo.leitner@gmail.com>
Signed-off-by: Xin Long <lucien.xin@gmail.com>
Acked-by: Neil Horman <nhorman@tuxdriver.com>
Acked-by: Marcelo Ricardo Leitner <marcelo.leitner@gmail.com>
Reviewed-by: Michal Kubecek <mkubecek@suse.cz>
Signed-off-by: David S. Miller <davem@davemloft.net>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
2020-04-07 09:28:40 +02:00
..
9p A750FXXU4CTBC 2020-03-27 21:51:54 +05:30
bluetooth Bluetooth: Align minimum encryption key size for LE and BR/EDR connections 2020-04-06 19:16:52 +02:00
caif A750FXXU4CTBC 2020-03-27 21:51:54 +05:30
irda A750FXXU4CTBC 2020-03-27 21:51:54 +05:30
iucv A750FXXU4CTBC 2020-03-27 21:51:54 +05:30
netfilter netfilter: ctnetlink: don't use conntrack/expect object addresses as id 2020-04-06 21:32:47 +02:00
netns inet: switch IP ID generator to siphash 2020-04-06 21:32:45 +02:00
nfc A750FXXU4CTBC 2020-03-27 21:51:54 +05:30
phonet A750FXXU4CTBC 2020-03-27 21:51:54 +05:30
sctp sctp: fix the issue that flags are ignored when using kernel_connect 2020-04-07 09:28:40 +02:00
tc_act A750FXXU4CTBC 2020-03-27 21:51:54 +05:30
6lowpan.h A750FXXU4CTBC 2020-03-27 21:51:54 +05:30
act_api.h A750FXXU4CTBC 2020-03-27 21:51:54 +05:30
addrconf.h ipv6: fix a potential deadlock in do_ipv6_setsockopt() 2020-04-06 16:43:14 +02:00
af_ieee802154.h A750FXXU4CTBC 2020-03-27 21:51:54 +05:30
af_rxrpc.h A750FXXU4CTBC 2020-03-27 21:51:54 +05:30
af_unix.h A750FXXU4CTBC 2020-03-27 21:51:54 +05:30
af_vsock.h A750FXXU4CTBC 2020-03-27 21:51:54 +05:30
ah.h A750FXXU4CTBC 2020-03-27 21:51:54 +05:30
arp.h ipv4: Define __ipv4_neigh_lookup_noref when CONFIG_INET is disabled 2020-04-06 18:47:58 +02:00
atmclip.h A750FXXU4CTBC 2020-03-27 21:51:54 +05:30
ax25.h A750FXXU4CTBC 2020-03-27 21:51:54 +05:30
ax88796.h A750FXXU4CTBC 2020-03-27 21:51:54 +05:30
bond_3ad.h A750FXXU4CTBC 2020-03-27 21:51:54 +05:30
bond_alb.h A750FXXU4CTBC 2020-03-27 21:51:54 +05:30
bond_options.h A750FXXU4CTBC 2020-03-27 21:51:54 +05:30
bonding.h A750FXXU4CTBC 2020-03-27 21:51:54 +05:30
busy_poll.h net: check before dereferencing netdev_ops during busy poll 2020-04-06 19:17:35 +02:00
cfg80211-wext.h A750FXXU4CTBC 2020-03-27 21:51:54 +05:30
cfg80211.h A750FXXU4CTBC 2020-03-27 21:51:54 +05:30
cfg802154.h A750FXXU4CTBC 2020-03-27 21:51:54 +05:30
checksum.h A750FXXU4CTBC 2020-03-27 21:51:54 +05:30
cipso_ipv4.h A750FXXU4CTBC 2020-03-27 21:51:54 +05:30
cls_cgroup.h A750FXXU4CTBC 2020-03-27 21:51:54 +05:30
codel.h A750FXXU4CTBC 2020-03-27 21:51:54 +05:30
compat.h A750FXXU4CTBC 2020-03-27 21:51:54 +05:30
datalink.h A750FXXU4CTBC 2020-03-27 21:51:54 +05:30
dcbevent.h A750FXXU4CTBC 2020-03-27 21:51:54 +05:30
dcbnl.h A750FXXU4CTBC 2020-03-27 21:51:54 +05:30
dn_dev.h A750FXXU4CTBC 2020-03-27 21:51:54 +05:30
dn_fib.h A750FXXU4CTBC 2020-03-27 21:51:54 +05:30
dn_neigh.h A750FXXU4CTBC 2020-03-27 21:51:54 +05:30
dn_nsp.h A750FXXU4CTBC 2020-03-27 21:51:54 +05:30
dn_route.h A750FXXU4CTBC 2020-03-27 21:51:54 +05:30
dn.h A750FXXU4CTBC 2020-03-27 21:51:54 +05:30
dsa.h A750FXXU4CTBC 2020-03-27 21:51:54 +05:30
dsfield.h A750FXXU4CTBC 2020-03-27 21:51:54 +05:30
dst_cache.h A750FXXU4CTBC 2020-03-27 21:51:54 +05:30
dst_metadata.h A750FXXU4CTBC 2020-03-27 21:51:54 +05:30
dst_ops.h A750FXXU4CTBC 2020-03-27 21:51:54 +05:30
dst.h A750FXXU4CTBC 2020-03-27 21:51:54 +05:30
esp.h A750FXXU4CTBC 2020-03-27 21:51:54 +05:30
ethoc.h A750FXXU4CTBC 2020-03-27 21:51:54 +05:30
fib_rules.h A750FXXU4CTBC 2020-03-27 21:51:54 +05:30
firewire.h A750FXXU4CTBC 2020-03-27 21:51:54 +05:30
flow_dissector.h A750FXXU4CTBC 2020-03-27 21:51:54 +05:30
flow.h A750FXXU4CTBC 2020-03-27 21:51:54 +05:30
flowcache.h A750FXXU4CTBC 2020-03-27 21:51:54 +05:30
fou.h A750FXXU4CTBC 2020-03-27 21:51:54 +05:30
garp.h A750FXXU4CTBC 2020-03-27 21:51:54 +05:30
gen_stats.h A750FXXU4CTBC 2020-03-27 21:51:54 +05:30
genetlink.h A750FXXU4CTBC 2020-03-27 21:51:54 +05:30
geneve.h A750FXXU4CTBC 2020-03-27 21:51:54 +05:30
gre.h A750FXXU4CTBC 2020-03-27 21:51:54 +05:30
gro_cells.h A750FXXU4CTBC 2020-03-27 21:51:54 +05:30
gue.h A750FXXU4CTBC 2020-03-27 21:51:54 +05:30
icmp.h A750FXXU4CTBC 2020-03-27 21:51:54 +05:30
ieee80211_radiotap.h A750FXXU4CTBC 2020-03-27 21:51:54 +05:30
ieee802154_netdev.h A750FXXU4CTBC 2020-03-27 21:51:54 +05:30
if_inet6.h A750FXXU4CTBC 2020-03-27 21:51:54 +05:30
inet_common.h A750FXXU4CTBC 2020-03-27 21:51:54 +05:30
inet_connection_sock.h tcp/dccp: drop SYN packets if accept queue is full 2020-04-06 11:16:42 +02:00
inet_ecn.h A750FXXU4CTBC 2020-03-27 21:51:54 +05:30
inet_frag.h A750FXXU4CTBC 2020-03-27 21:51:54 +05:30
inet_hashtables.h A750FXXU4CTBC 2020-03-27 21:51:54 +05:30
inet_sock.h A750FXXU4CTBC 2020-03-27 21:51:54 +05:30
inet_timewait_sock.h A750FXXU4CTBC 2020-03-27 21:51:54 +05:30
inet6_connection_sock.h A750FXXU4CTBC 2020-03-27 21:51:54 +05:30
inet6_hashtables.h A750FXXU4CTBC 2020-03-27 21:51:54 +05:30
inetpeer.h A750FXXU4CTBC 2020-03-27 21:51:54 +05:30
ip_fib.h A750FXXU4CTBC 2020-03-27 21:51:54 +05:30
ip_tunnels.h A750FXXU4CTBC 2020-03-27 21:51:54 +05:30
ip_vs.h A750FXXU4CTBC 2020-03-27 21:51:54 +05:30
ip.h A750FXXU4CTBC 2020-03-27 21:51:54 +05:30
ip6_checksum.h A750FXXU4CTBC 2020-03-27 21:51:54 +05:30
ip6_fib.h A750FXXU4CTBC 2020-03-27 21:51:54 +05:30
ip6_route.h A750FXXU4CTBC 2020-03-27 21:51:54 +05:30
ip6_tunnel.h A750FXXU4CTBC 2020-03-27 21:51:54 +05:30
ipcomp.h A750FXXU4CTBC 2020-03-27 21:51:54 +05:30
ipconfig.h A750FXXU4CTBC 2020-03-27 21:51:54 +05:30
ipv6.h A750FXXU4CTBC 2020-03-27 21:51:54 +05:30
ipx.h A750FXXU4CTBC 2020-03-27 21:51:54 +05:30
iw_handler.h A750FXXU4CTBC 2020-03-27 21:51:54 +05:30
l3mdev.h A750FXXU4CTBC 2020-03-27 21:51:54 +05:30
lapb.h A750FXXU4CTBC 2020-03-27 21:51:54 +05:30
lib80211.h A750FXXU4CTBC 2020-03-27 21:51:54 +05:30
llc_c_ac.h A750FXXU4CTBC 2020-03-27 21:51:54 +05:30
llc_c_ev.h A750FXXU4CTBC 2020-03-27 21:51:54 +05:30
llc_c_st.h A750FXXU4CTBC 2020-03-27 21:51:54 +05:30
llc_conn.h llc: fix sk_buff leak in llc_conn_service() 2020-04-07 09:28:32 +02:00
llc_if.h A750FXXU4CTBC 2020-03-27 21:51:54 +05:30
llc_pdu.h A750FXXU4CTBC 2020-03-27 21:51:54 +05:30
llc_s_ac.h A750FXXU4CTBC 2020-03-27 21:51:54 +05:30
llc_s_ev.h A750FXXU4CTBC 2020-03-27 21:51:54 +05:30
llc_s_st.h A750FXXU4CTBC 2020-03-27 21:51:54 +05:30
llc_sap.h A750FXXU4CTBC 2020-03-27 21:51:54 +05:30
llc.h A750FXXU4CTBC 2020-03-27 21:51:54 +05:30
lwtunnel.h A750FXXU4CTBC 2020-03-27 21:51:54 +05:30
mac80211.h A750FXXU4CTBC 2020-03-27 21:51:54 +05:30
mac802154.h A750FXXU4CTBC 2020-03-27 21:51:54 +05:30
mip6.h A750FXXU4CTBC 2020-03-27 21:51:54 +05:30
mld.h A750FXXU4CTBC 2020-03-27 21:51:54 +05:30
mpls_iptunnel.h A750FXXU4CTBC 2020-03-27 21:51:54 +05:30
mpls.h A750FXXU4CTBC 2020-03-27 21:51:54 +05:30
mptcp_v4.h A750FXXU4CTBC 2020-03-27 21:51:54 +05:30
mptcp_v6.h A750FXXU4CTBC 2020-03-27 21:51:54 +05:30
mptcp.h A750FXXU4CTBC 2020-03-27 21:51:54 +05:30
mrp.h A750FXXU4CTBC 2020-03-27 21:51:54 +05:30
ncm.h A750FXXU4CTBC 2020-03-27 21:51:54 +05:30
ndisc.h A750FXXU4CTBC 2020-03-27 21:51:54 +05:30
neighbour.h A750FXXU4CTBC 2020-03-27 21:51:54 +05:30
net_namespace.h netns: provide pure entropy for net_hash_mix() 2020-04-06 15:08:06 +02:00
net_ratelimit.h A750FXXU4CTBC 2020-03-27 21:51:54 +05:30
netevent.h A750FXXU4CTBC 2020-03-27 21:51:54 +05:30
netlabel.h A750FXXU4CTBC 2020-03-27 21:51:54 +05:30
netlink.h A750FXXU4CTBC 2020-03-27 21:51:54 +05:30
netprio_cgroup.h A750FXXU4CTBC 2020-03-27 21:51:54 +05:30
netrom.h A750FXXU4CTBC 2020-03-27 21:51:54 +05:30
nexthop.h A750FXXU4CTBC 2020-03-27 21:51:54 +05:30
nl802154.h A750FXXU4CTBC 2020-03-27 21:51:54 +05:30
p8022.h A750FXXU4CTBC 2020-03-27 21:51:54 +05:30
ping.h A750FXXU4CTBC 2020-03-27 21:51:54 +05:30
pkt_cls.h A750FXXU4CTBC 2020-03-27 21:51:54 +05:30
pkt_sched.h A750FXXU4CTBC 2020-03-27 21:51:54 +05:30
protocol.h A750FXXU4CTBC 2020-03-27 21:51:54 +05:30
psnap.h A750FXXU4CTBC 2020-03-27 21:51:54 +05:30
raw.h A750FXXU4CTBC 2020-03-27 21:51:54 +05:30
rawv6.h A750FXXU4CTBC 2020-03-27 21:51:54 +05:30
red.h A750FXXU4CTBC 2020-03-27 21:51:54 +05:30
regulatory.h A750FXXU4CTBC 2020-03-27 21:51:54 +05:30
request_sock.h A750FXXU4CTBC 2020-03-27 21:51:54 +05:30
rose.h A750FXXU4CTBC 2020-03-27 21:51:54 +05:30
route.h A750FXXU4CTBC 2020-03-27 21:51:54 +05:30
rtnetlink.h A750FXXU4CTBC 2020-03-27 21:51:54 +05:30
sch_generic.h sch_netem: fix rcu splat in netem_enqueue() 2020-04-07 09:28:38 +02:00
scm.h A750FXXU4CTBC 2020-03-27 21:51:54 +05:30
secure_seq.h A750FXXU4CTBC 2020-03-27 21:51:54 +05:30
slhc_vj.h A750FXXU4CTBC 2020-03-27 21:51:54 +05:30
snmp.h A750FXXU4CTBC 2020-03-27 21:51:54 +05:30
sock.h packets: Always register packet sk in the same order 2020-04-06 12:57:10 +02:00
Space.h A750FXXU4CTBC 2020-03-27 21:51:54 +05:30
stp.h A750FXXU4CTBC 2020-03-27 21:51:54 +05:30
switchdev.h A750FXXU4CTBC 2020-03-27 21:51:54 +05:30
tcp_memcontrol.h A750FXXU4CTBC 2020-03-27 21:51:54 +05:30
tcp_states.h A750FXXU4CTBC 2020-03-27 21:51:54 +05:30
tcp.h tcp: fix tcp_rtx_queue_tail in case of empty retransmit queue 2020-04-06 21:33:16 +02:00
timewait_sock.h A750FXXU4CTBC 2020-03-27 21:51:54 +05:30
transp_v6.h A750FXXU4CTBC 2020-03-27 21:51:54 +05:30
tso.h A750FXXU4CTBC 2020-03-27 21:51:54 +05:30
udp_tunnel.h A750FXXU4CTBC 2020-03-27 21:51:54 +05:30
udp.h A750FXXU4CTBC 2020-03-27 21:51:54 +05:30
udplite.h A750FXXU4CTBC 2020-03-27 21:51:54 +05:30
vsock_addr.h A750FXXU4CTBC 2020-03-27 21:51:54 +05:30
vxlan.h A750FXXU4CTBC 2020-03-27 21:51:54 +05:30
wext.h A750FXXU4CTBC 2020-03-27 21:51:54 +05:30
wimax.h A750FXXU4CTBC 2020-03-27 21:51:54 +05:30
x25.h A750FXXU4CTBC 2020-03-27 21:51:54 +05:30
x25device.h A750FXXU4CTBC 2020-03-27 21:51:54 +05:30
xfrm.h xfrm: clean up xfrm protocol checks 2020-04-06 21:34:53 +02:00