Send IRC pings with random INTs

This commit is contained in:
Alex 2020-08-26 09:40:51 +02:00
parent c72fefc38d
commit a0f249f654
Signed by: caskd
GPG Key ID: F92BA85F61F4C173
1 changed files with 2 additions and 0 deletions

View File

@ -118,6 +118,7 @@ int run_main(Connection* conn, unsigned int recon_inter, unsigned int ping_inter
pinginter = (ping_inter) ? ping_inter : 10, reconinter = (recon_inter) ? recon_inter : 10; /* Intervals */
get_connstr(connstr, sizeof(connstr), conn);
srand(time(NULL));
for (;;) {
struct timespec sleep = {0, 10000000L};
nanosleep(&sleep, NULL);
@ -205,6 +206,7 @@ int run_main(Connection* conn, unsigned int recon_inter, unsigned int ping_inter
} else if (connstate == CONN_ACTIVE) {
if (ctime - lastping >= ping_inter) {
char mesg[] = "uIRC PING XXXXXX";
snprintf(mesg + sizeof(mesg) - 7, 7, "%.7i", rand());
if ((sendbufpos = Assm_mesg(sendbuf, Assm_cmd_PING(mesg, NULL), sizeof(sendbuf))) > 0) {
LOG(LOG_DEBUG, "Sending ping to " ADDRFMT " with message \"%s\"", conn->data.addr, conn->data.port, mesg);
if (flush_buffer(sendbuf, sendbufpos, fds[0]) == -1) {