Merge branch 'issue362' into 'master'

Log disconnects from TCP healt probe at debug level

See merge request openconnect/ocserv!229
This commit is contained in:
Alan Jowett
2020-10-16 15:56:53 +00:00
3 changed files with 21 additions and 1 deletions

View File

@@ -200,6 +200,25 @@ const char *discon_reason_to_str(unsigned reason)
}
}
unsigned int discon_reason_to_log_level(unsigned int reason)
{
switch (reason) {
case 0:
case REASON_ANY:
case REASON_HEALTH_PROBE:
return LOG_DEBUG;
case REASON_USER_DISCONNECT:
case REASON_TEMP_DISCONNECT:
case REASON_SERVER_DISCONNECT:
case REASON_IDLE_TIMEOUT:
case REASON_DPD_TIMEOUT:
case REASON_ERROR:
case REASON_SESSION_TIMEOUT:
default:
return LOG_INFO;
}
}
ssize_t force_write(int sockfd, const void *buf, size_t len)
{
int left = len;

View File

@@ -85,6 +85,7 @@ int recv_msg_data(int fd, uint8_t *cmd, uint8_t *data, size_t data_size, int *re
const char* cmd_request_to_str(unsigned cmd);
const char* discon_reason_to_str(unsigned reason);
unsigned int discon_reason_to_log_level(unsigned reason);
ssize_t oc_recvfrom_at(int sockfd, void *buf, size_t len, int flags,
struct sockaddr *src_addr, socklen_t *addrlen,

View File

@@ -117,7 +117,7 @@ void remove_proc(main_server_st * s, struct proc_st *proc, unsigned flags)
}
}
mslog(s, proc, (proc->discon_reason != REASON_HEALTH_PROBE ? LOG_INFO : LOG_DEBUG), "user disconnected (reason: %s, rx: %"PRIu64", tx: %"PRIu64")",
mslog(s, proc, discon_reason_to_log_level(proc->discon_reason), "user disconnected (reason: %s, rx: %"PRIu64", tx: %"PRIu64")",
discon_reason_to_str(proc->discon_reason), proc->bytes_in, proc->bytes_out);
pid = remove_from_script_list(s, proc);