Please sign in to comment.
xfer: Support IPv6 DCC.
There are two primary changes to weechat_network_connect_to(): * Because a ulong obviously can't transfer an IPv6 address, struct addrinfo* is used instead, and the port parameter is unused as it would be redundant, ignored, or confusing. * Because the proxy may be at an IPv4 address and the target IPv6--or vice versa--the socket() call must be made in network_connect_to() so that it is created in the correct family. So network_connect_to() now returns the socket fd. struct t_xfer is modified: local/remote_address are no longer ulong, but instead struct sockaddr_storage. local/remote_addrlen and local/remote_address_str fields are also added.
- Loading branch information...
Showing with 344 additions and 211 deletions.
- +50 −30 src/core/wee-network.c
- +6 −2 src/core/wee-network.h
- +16 −10 src/plugins/irc/irc-command.c
- +33 −4 src/plugins/irc/irc-server.c
- +6 −5 src/plugins/weechat-plugin.h
- +4 −7 src/plugins/xfer/xfer-buffer.c
- +2 −6 src/plugins/xfer/xfer-chat.c
- +2 −5 src/plugins/xfer/xfer-command.c
- +4 −2 src/plugins/xfer/xfer-dcc.c
- +42 −17 src/plugins/xfer/xfer-network.c
- +134 −82 src/plugins/xfer/xfer.c
- +45 −41 src/plugins/xfer/xfer.h
Oops, something went wrong.