/* Connect to proxy server or directly to server. */
if (global_proxy_host != NULL && global_proxy_port != NULL) {
LOG(DEBUG, "connecting to %s:%s", global_proxy_host,
- global_proxy_port);
+ global_proxy_port);
server_socket = connect_to_host(global_proxy_host, global_proxy_port);
} else {
LOG(DEBUG, "connecting to %s:%s", host, port);
result = gnutls_handshake(server_session);
if (result != GNUTLS_E_SUCCESS) {
LOG(WARNING, "server TLS handshake failed: %s",
- gnutls_strerror(result));
+ gnutls_strerror(result));
send_forwarding_failure(client_fd_write);
goto out;
}
result = gnutls_handshake(client_session);
if (result != GNUTLS_E_SUCCESS) {
LOG(WARNING, "client TLS handshake failed: %s",
- gnutls_strerror(result));
+ gnutls_strerror(result));
send_forwarding_failure(client_fd_write);
goto out;
}
if (proxy_certificate_path(hostname, path, sizeof(path)) != 0) {
LOG(ERROR,
- "initialize_tls_session_client(): \
-failed to get proxy certificate path");
+ "initialize_tls_session_client(): "
+ "failed to get proxy certificate path");
return -1;
}
result = gnutls_certificate_allocate_credentials(x509_cred);
if (result != GNUTLS_E_SUCCESS) {
LOG(ERROR,
- "initialize_tls_session_client(): \
-gnutls_certificate_allocate_credentials(): %s",
+ "initialize_tls_session_client(): "
+ "gnutls_certificate_allocate_credentials(): %s",
gnutls_strerror(result));
return -1;
}
}
if (result != GNUTLS_E_SUCCESS) {
LOG(ERROR,
- "initialize_tls_session_client(): \
-can't read server certificate ('%s') or key file ('%s'): %s",
+ "initialize_tls_session_client(): "
+ "can't read server certificate ('%s') or key file ('%s'): %s",
path, PROXY_KEY_FILE, gnutls_strerror(result));
gnutls_certificate_free_credentials(*x509_cred);
/* Could be a missing certificate. */
result = gnutls_certificate_allocate_credentials(x509_cred);
if (result != GNUTLS_E_SUCCESS) {
LOG(ERROR,
- "initialize_tls_session_server(): \
-gnutls_certificate_allocate_credentials(): %s",
+ "initialize_tls_session_server(): "
+ "gnutls_certificate_allocate_credentials(): %s",
gnutls_strerror(result));
return -1;
}
}
if (size_read != size_written) {
LOG(ERROR, "read_from_write_to(): only written %ld of %ld bytes!",
- (long int)size_written, (long int)size_read);
+ (long int)size_written, (long int)size_read);
return -1;
}
buffer_size = gnutls_record_get_max_size(server_session);
}
LOG(DEBUG, "transfer_data_tls(): suggested buffer size: %ld",
- (long int)buffer_size);
+ (long int)buffer_size);
for (;;) {
int result = poll(fds, 2 /* fd count */, -1 /* no timeout */);
buffer_size = sizeof(buffer);
}
LOG(DEBUG, "read_from_write_to_tls(): used buffer size: %ld",
- (long int)buffer_size);
+ (long int)buffer_size);
size_read = gnutls_record_recv(from, buffer, buffer_size);
if (size_read < 0) {
LOG(WARNING, "read_from_write_to_tls(): gnutls_record_recv(): %s",
- gnutls_strerror((int)size_read));
+ gnutls_strerror((int)size_read));
return -1;
/* EOF */
} else if (size_read == 0) {
size_written = gnutls_record_send(to, buffer, (size_t)size_read);
if (size_written < 0) {
LOG(WARNING, "read_from_write_to_tls(): gnutls_record_send(): %s",
- gnutls_strerror((int)size_written));
+ gnutls_strerror((int)size_written));
return -1;
}
if (size_read != size_written) {
LOG(ERROR, "read_from_write_to_tls(): only written %ld of %ld bytes!",
- (long int)size_written, (long int)size_read);
+ (long int)size_written, (long int)size_read);
return -1;
}
LOG_PERROR(WARNING, "connect_to_host(): getaddrinfo()");
} else {
LOG(WARNING, "connect_to_host(): getaddrinfo(): %s",
- gai_strerror(gai_return));
+ gai_strerror(gai_return));
}
return -1;
}
* more checks. */
if (result < 0) {
LOG(WARNING,
- "verify_tls_connection(): gnutls_certificate_verify_peers2() failed: %s",
+ "verify_tls_connection(): "
+ "gnutls_certificate_verify_peers2() failed: %s",
gnutls_strerror(result));
return -1;
}
|| status & GNUTLS_CERT_REVOKED
|| status & GNUTLS_CERT_NOT_ACTIVATED
|| status & GNUTLS_CERT_INSECURE_ALGORITHM) {
- LOG(WARNING,
- "verify_tls_connection(): invalid server certificate");
+ LOG(WARNING, "verify_tls_connection(): invalid server certificate");
return -1;
}
* prevent an attacker from changing the certificate type to prevent
* detection. */
if (gnutls_certificate_type_get(session) != GNUTLS_CRT_X509) {
- LOG(WARNING,
- "verify_tls_connection(): no X509 server certificate");
+ LOG(WARNING, "verify_tls_connection(): no X509 server certificate");
return -1;
}
strcat(stored_cert, buffer);
}
if (ferror(file)) {
- LOG(WARNING,
- "verify_tls_connection(): failed to read from '%s': %s",
- path, strerror(errno));
+ LOG(WARNING, "verify_tls_connection(): failed to read from '%s': %s",
+ path, strerror(errno));
fclose(file);
LOG(DEBUG, "server certificate:\n%s", server_cert);
/* Check if the server certificate matches our stored certificate. */
if (strcmp(stored_cert, server_cert)) {
- LOG(ERROR,
- "verify_tls_connection(): server certificate changed!",
- path, strerror(errno));
+ LOG(ERROR, "verify_tls_connection(): server certificate changed!",
+ path, strerror(errno));
LOG(WARNING, "server certificate:\n%s", server_cert);
return -2;
/* Hostname too long. */
assert(size > strlen(format));
if (size - strlen(format) <= strlen(hostname)) {
- LOG(WARNING,
- "get_certificate_path(): hostname too long: '%s'",
- hostname);
+ LOG(WARNING, "get_certificate_path(): hostname too long: '%s'",
+ hostname);
return -1;
}
/* Try to prevent path traversals in hostnames. */
if (strstr(hostname, "..") != NULL) {
- LOG(WARNING,
- "get_certificate_path(): possible path traversal: '%s'",
- hostname);
+ LOG(WARNING, "get_certificate_path(): possible path traversal: '%s'",
+ hostname);
return -1;
}
/* Safe as format is no user input. */
char *path, size_t size) {
if (get_certificate_path(STORED_SERVER_CERT_FORMAT,
hostname, path, size) != 0) {
- LOG_PERROR(ERROR,
- "server_certificate_file(): failed to get path");
+ LOG_PERROR(ERROR, "server_certificate_file(): failed to get path");
return -1;
}
*file = fopen(path, "rb");
if (*file == NULL) {
if (global_passthrough_unknown) {
- LOG(DEBUG,
- "server_certificate_file(): failed to open '%s': %s",
- path, strerror(errno));
+ LOG(DEBUG, "server_certificate_file(): failed to open '%s': %s",
+ path, strerror(errno));
} else {
- LOG(WARNING,
- "server_certificate_file(): failed to open '%s': %s",
- path, strerror(errno));
+ LOG(WARNING, "server_certificate_file(): failed to open '%s': %s",
+ path, strerror(errno));
}
/* Couldn't open the file, special case. */
return -2;