forked from Green-Sky/tomato
Squashed 'external/toxcore/c-toxcore/' changes from f1df709b87..8f0d505f9a
8f0d505f9a feat: add ngc events 9b8216e70c refactor: Make event dispatch ordered by receive time. 814c12a6f4 cleanup: Add dynamically derived array sizes to the API. 226b23be12 cleanup: Add explicit array sizes to toxencryptsave. ef33cb4de0 cleanup: Add Toxav alias for ToxAV. 1da723b34d cleanup: Make Tox_Options a typedef. b148a2afff chore: Simplify msvc build using vcpkg. 5cac6d7eb1 cleanup: Move `tox_get_system` out of the public API. c9ca4007e3 refactor: Align group message sending with other send functions. 6c6c0b1b1b cleanup: Make setters take non-const `Tox *`. a76f758d70 cleanup: Mark arrays in the tox API as `[]` instead of `*`. baf6d1f6cf cleanup: Make array params in toxav `[]` instead of `*`. 79f55bd06a cleanup: Put the size of fixed arrays into the API types. 1e73698db2 cleanup: Add typedefs for public API int identifiers. cac074c57f chore: Add fetch-sha256 script to update bootstrap node hash. 32576656bb Make the comment capitalization uniform aff4dda17c Spellcheck tox-bootstrapd 40b5fbbe9d chore: Remove settings.yml in favour of hs-github-tools. ebafd51be7 chore: Use GPL license with https. 0e42752f0f cleanup: Move all vptr-to-ptr casts to the beginning of a function. 5407384211 cleanup: Use github actions matrix to simplify CI. 82d8265688 fix: Use QueryPerformanceCounter on windows for monotonic time. 1224e656e3 chore: Add `net_(new|kill)_strerror` to cppcheck's allocators. 6a90ddfe4e cleanup: Run clang-tidy on headers, as well. bd930cc80a cleanup: Make TCP connection failures a warning instead of error. fad6e4e173 cleanup: Make all .c files include the headers they need. ef4897a898 cleanup: Upgrade to clang-tidy-17 and fix some warnings. REVERT: f1df709b87 feat: add ngc events REVERT: 1b6c907235 refactor: Make event dispatch ordered by receive time. git-subtree-dir: external/toxcore/c-toxcore git-subtree-split: 8f0d505f9a598cc41c682178e1589bcc01efe9cb
This commit is contained in:
@ -89,7 +89,7 @@
|
||||
|
||||
#include "ccompat.h"
|
||||
#include "logger.h"
|
||||
#include "mono_time.h"
|
||||
#include "mem.h"
|
||||
#include "util.h"
|
||||
|
||||
// Disable MSG_NOSIGNAL on systems not supporting it, e.g. Windows, FreeBSD
|
||||
@ -340,12 +340,20 @@ static void fill_addr6(const IP6 *ip, struct in6_addr *addr)
|
||||
#endif
|
||||
|
||||
static const IP empty_ip = {{0}};
|
||||
const IP_Port empty_ip_port = {{{0}}};
|
||||
|
||||
const IP4 ip4_broadcast = { INADDR_BROADCAST };
|
||||
const IP6 ip6_broadcast = {
|
||||
{ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff }
|
||||
};
|
||||
IP4 get_ip4_broadcast(void)
|
||||
{
|
||||
const IP4 ip4_broadcast = { INADDR_BROADCAST };
|
||||
return ip4_broadcast;
|
||||
}
|
||||
|
||||
IP6 get_ip6_broadcast(void)
|
||||
{
|
||||
const IP6 ip6_broadcast = {
|
||||
{ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff }
|
||||
};
|
||||
return ip6_broadcast;
|
||||
}
|
||||
|
||||
IP4 get_ip4_loopback(void)
|
||||
{
|
||||
@ -357,7 +365,7 @@ IP4 get_ip4_loopback(void)
|
||||
IP6 get_ip6_loopback(void)
|
||||
{
|
||||
/* in6addr_loopback isn't available everywhere, so we do it ourselves. */
|
||||
IP6 loopback = empty_ip_port.ip.ip.v6;
|
||||
IP6 loopback = empty_ip.ip.v6;
|
||||
loopback.uint8[15] = 1;
|
||||
return loopback;
|
||||
}
|
||||
@ -366,7 +374,11 @@ IP6 get_ip6_loopback(void)
|
||||
#define INVALID_SOCKET (-1)
|
||||
#endif
|
||||
|
||||
const Socket net_invalid_socket = { (int)INVALID_SOCKET };
|
||||
Socket net_invalid_socket(void)
|
||||
{
|
||||
const Socket invalid_socket = { (int)INVALID_SOCKET };
|
||||
return invalid_socket;
|
||||
}
|
||||
|
||||
Family net_family_unspec(void)
|
||||
{
|
||||
@ -460,7 +472,8 @@ bool net_family_is_tox_tcp_ipv6(Family family)
|
||||
|
||||
bool sock_valid(Socket sock)
|
||||
{
|
||||
return sock.sock != net_invalid_socket.sock;
|
||||
const Socket invalid_socket = net_invalid_socket();
|
||||
return sock.sock != invalid_socket.sock;
|
||||
}
|
||||
|
||||
struct Network_Addr {
|
||||
@ -1447,6 +1460,7 @@ void ipport_reset(IP_Port *ipport)
|
||||
return;
|
||||
}
|
||||
|
||||
const IP_Port empty_ip_port = {{{0}}};
|
||||
*ipport = empty_ip_port;
|
||||
}
|
||||
|
||||
@ -1748,8 +1762,8 @@ bool net_connect(const Memory *mem, const Logger *log, Socket sock, const IP_Por
|
||||
// Non-blocking socket: "Operation in progress" means it's connecting.
|
||||
if (!should_ignore_connect_error(error)) {
|
||||
char *net_strerror = net_new_strerror(error);
|
||||
LOGGER_ERROR(log, "failed to connect to %s:%d: %d (%s)",
|
||||
net_ip_ntoa(&ip_port->ip, &ip_str), net_ntohs(ip_port->port), error, net_strerror);
|
||||
LOGGER_WARNING(log, "failed to connect to %s:%d: %d (%s)",
|
||||
net_ip_ntoa(&ip_port->ip, &ip_str), net_ntohs(ip_port->port), error, net_strerror);
|
||||
net_kill_strerror(net_strerror);
|
||||
return false;
|
||||
}
|
||||
|
Reference in New Issue
Block a user