X-Git-Url: https://ruderich.org/simon/gitweb/?a=blobdiff_plain;f=tests%2Fclient.c;h=2b7fb07465c41c05bc12992e5a5a751d08cb0949;hb=19b4321866194060cfc28419d52531a924f1b986;hp=d4edf7f8ba6f911fe674c1d1a697e21eb8bb908b;hpb=1d507eaf013fdffb6c17f0f02f6ee9a91d44aa62;p=tlsproxy%2Ftlsproxy.git diff --git a/tests/client.c b/tests/client.c index d4edf7f..2b7fb07 100644 --- a/tests/client.c +++ b/tests/client.c @@ -53,9 +53,10 @@ int main (int argc, char *argv[]) { const gnutls_datum_t *cert_list; unsigned int cert_list_size; - if (argc != 5) { + if (argc != 5 && argc != 6) { fprintf(stderr, - "Usage: %s \n", + "Usage: %s " + "[]\n", argv[0]); return EXIT_FAILURE; } @@ -82,6 +83,9 @@ int main (int argc, char *argv[]) { /* Talk to tlsproxy. */ fprintf(fd, "CONNECT %s:%s HTTP/1.0\r\n", argv[2], argv[3]); + if (argc == 6) { + fprintf(fd, "Proxy-Authorization: Basic %s\r\n", argv[5]); + } fprintf(fd, "\r\n"); fflush(fd); if (read_http_request(fd, buffer, sizeof(buffer)) == -1) { @@ -200,12 +204,12 @@ static int connect_to_host(const char *hostname, const char *port) { server_socket = socket(server->ai_family, server->ai_socktype, server->ai_protocol); - if (server_socket == -1) { + if (server_socket < 0) { perror("connect_to_host(): socket(), trying next"); continue; } - if (connect(server_socket, server->ai_addr, server->ai_addrlen) != -1) { + if (connect(server_socket, server->ai_addr, server->ai_addrlen) == 0) { break; } perror("connect_to_host(): connect(), trying next"); @@ -231,11 +235,11 @@ static int read_http_request(FILE *client_fd, char *request, size_t length) { perror("read_http_request(): fgets()"); return -1; } - + /* EOF */ return -2; } - while (fgets(buffer, MAX_REQUEST_LINE, client_fd) != NULL) { + while (fgets(buffer, sizeof(buffer), client_fd) != NULL) { /* End of header. */ if (!strcmp(buffer, "\n") || !strcmp(buffer, "\r\n")) { break;