e3b802ba88
Alexey Dobriyan points out: 1. simple_strtoul() silently accepts all characters for given base even if result won't fit into unsigned long. This is amazing stupidity in itself, but 2. nf_conntrack_irc helper use simple_strtoul() for DCC request parsing. Data first copied into 64KB buffer, so theoretically nothing prevents reading past the end of it, since data comes from network given 1). This is not actually a problem currently since we're guaranteed to have a 0 byte in skb_shared_info or in the buffer the data is copied to, but to make this more robust, make sure the string is actually terminated. Signed-off-by: Patrick McHardy <kaber@trash.net> Signed-off-by: David S. Miller <davem@davemloft.net> |
||
---|---|---|
.. | ||
core.c | ||
Kconfig | ||
Makefile | ||
nf_conntrack_acct.c | ||
nf_conntrack_amanda.c | ||
nf_conntrack_core.c | ||
nf_conntrack_ecache.c | ||
nf_conntrack_expect.c | ||
nf_conntrack_extend.c | ||
nf_conntrack_ftp.c | ||
nf_conntrack_h323_asn1.c | ||
nf_conntrack_h323_main.c | ||
nf_conntrack_h323_types.c | ||
nf_conntrack_helper.c | ||
nf_conntrack_irc.c | ||
nf_conntrack_l3proto_generic.c | ||
nf_conntrack_netbios_ns.c | ||
nf_conntrack_netlink.c | ||
nf_conntrack_pptp.c | ||
nf_conntrack_proto.c | ||
nf_conntrack_proto_dccp.c | ||
nf_conntrack_proto_generic.c | ||
nf_conntrack_proto_gre.c | ||
nf_conntrack_proto_sctp.c | ||
nf_conntrack_proto_tcp.c | ||
nf_conntrack_proto_udp.c | ||
nf_conntrack_proto_udplite.c | ||
nf_conntrack_sane.c | ||
nf_conntrack_sip.c | ||
nf_conntrack_standalone.c | ||
nf_conntrack_tftp.c | ||
nf_internals.h | ||
nf_log.c | ||
nf_queue.c | ||
nf_sockopt.c | ||
nfnetlink.c | ||
nfnetlink_log.c | ||
nfnetlink_queue.c | ||
x_tables.c | ||
xt_CLASSIFY.c | ||
xt_comment.c | ||
xt_connbytes.c | ||
xt_connlimit.c | ||
xt_CONNMARK.c | ||
xt_connmark.c | ||
xt_CONNSECMARK.c | ||
xt_conntrack.c | ||
xt_dccp.c | ||
xt_dscp.c | ||
xt_DSCP.c | ||
xt_esp.c | ||
xt_hashlimit.c | ||
xt_helper.c | ||
xt_iprange.c | ||
xt_length.c | ||
xt_limit.c | ||
xt_mac.c | ||
xt_MARK.c | ||
xt_mark.c | ||
xt_multiport.c | ||
xt_NFLOG.c | ||
xt_NFQUEUE.c | ||
xt_NOTRACK.c | ||
xt_owner.c | ||
xt_physdev.c | ||
xt_pkttype.c | ||
xt_policy.c | ||
xt_quota.c | ||
xt_RATEEST.c | ||
xt_rateest.c | ||
xt_realm.c | ||
xt_sctp.c | ||
xt_SECMARK.c | ||
xt_state.c | ||
xt_statistic.c | ||
xt_string.c | ||
xt_TCPMSS.c | ||
xt_tcpmss.c | ||
xt_TCPOPTSTRIP.c | ||
xt_tcpudp.c | ||
xt_time.c | ||
xt_TRACE.c | ||
xt_u32.c |