mirror of
https://gitlab.com/openconnect/ocserv.git
synced 2026-04-02 15:27:49 +08:00
tls_print -> tls_puts to distinguish from printf
This commit is contained in:
80
src/auth.c
80
src/auth.c
@@ -55,33 +55,33 @@ int ret;
|
||||
|
||||
ret = stat(file, &st);
|
||||
if (ret == 0) {
|
||||
tls_print(server->session, "HTTP/1.1 200 OK\r\n");
|
||||
tls_puts(server->session, "HTTP/1.1 200 OK\r\n");
|
||||
tls_printf(server->session, "Content-Length: %u\r\n", (unsigned int)st.st_size);
|
||||
tls_print(server->session, "Content-Type: text/html\r\n");
|
||||
tls_print(server->session, "X-Transcend-Version: 1\r\n");
|
||||
tls_print(server->session, "\r\n");
|
||||
tls_puts(server->session, "Content-Type: text/html\r\n");
|
||||
tls_puts(server->session, "X-Transcend-Version: 1\r\n");
|
||||
tls_puts(server->session, "\r\n");
|
||||
|
||||
ret = tls_send_file(server->session, file);
|
||||
|
||||
return 0;
|
||||
} else {
|
||||
tls_print(server->session, "HTTP/1.1 200 OK\r\n");
|
||||
tls_print(server->session, "Connection: close\r\n");
|
||||
tls_print(server->session, "Content-Type: text/xml\r\n");
|
||||
tls_print(server->session, "X-Transcend-Version: 1\r\n");
|
||||
tls_print(server->session, "\r\n");
|
||||
tls_print(server->session,
|
||||
tls_puts(server->session, "HTTP/1.1 200 OK\r\n");
|
||||
tls_puts(server->session, "Connection: close\r\n");
|
||||
tls_puts(server->session, "Content-Type: text/xml\r\n");
|
||||
tls_puts(server->session, "X-Transcend-Version: 1\r\n");
|
||||
tls_puts(server->session, "\r\n");
|
||||
tls_puts(server->session,
|
||||
"<?xml version=\"1.0\" encoding=\"UTF-8\"?>\r\n");
|
||||
tls_print(server->session, "<auth id=\"main\">\r\n");
|
||||
tls_print(server->session,
|
||||
tls_puts(server->session, "<auth id=\"main\">\r\n");
|
||||
tls_puts(server->session,
|
||||
"<message>Please enter your username and password.</message>\r\n");
|
||||
tls_print(server->session,
|
||||
tls_puts(server->session,
|
||||
"<form method=\"post\" action=\"/auth.xml\">\r\n");
|
||||
tls_print(server->session,
|
||||
tls_puts(server->session,
|
||||
"<input type=\"text\" name=\"username\" label=\"Username:\" />\r\n");
|
||||
tls_print(server->session,
|
||||
tls_puts(server->session,
|
||||
"<input type=\"password\" name=\"password\" label=\"Password:\" />\r\n");
|
||||
tls_print(server->session, "</form></auth>\r\n");
|
||||
tls_puts(server->session, "</form></auth>\r\n");
|
||||
|
||||
return 1;
|
||||
}
|
||||
@@ -230,17 +230,17 @@ struct stored_cookie_st sc;
|
||||
|
||||
/* reply */
|
||||
|
||||
tls_print(server->session, "HTTP/1.1 200 OK\r\n");
|
||||
tls_print(server->session, "Content-Type: text/xml\r\n");
|
||||
tls_puts(server->session, "HTTP/1.1 200 OK\r\n");
|
||||
tls_puts(server->session, "Content-Type: text/xml\r\n");
|
||||
tls_printf(server->session, "Content-Length: %u\r\n", (unsigned)(sizeof(SUCCESS_MSG)-1));
|
||||
tls_print(server->session, "X-Transcend-Version: 1\r\n");
|
||||
tls_puts(server->session, "X-Transcend-Version: 1\r\n");
|
||||
tls_printf(server->session, "Set-Cookie: webvpn=%s\r\n", str_cookie);
|
||||
tls_print(server->session, "\r\n"SUCCESS_MSG);
|
||||
tls_puts(server->session, "\r\n"SUCCESS_MSG);
|
||||
|
||||
return 0;
|
||||
|
||||
auth_fail:
|
||||
tls_print(server->session, "HTTP/1.1 503 Service Unavailable\r\n");
|
||||
tls_puts(server->session, "HTTP/1.1 503 Service Unavailable\r\n");
|
||||
tls_printf(server->session,
|
||||
"X-Reason: %s\r\n\r\n", reason);
|
||||
tls_fatal_close(server->session, GNUTLS_A_ACCESS_DENIED);
|
||||
@@ -257,31 +257,31 @@ int ret;
|
||||
|
||||
ret = stat(file, &st);
|
||||
if (ret == 0) {
|
||||
tls_print(server->session, "HTTP/1.1 200 OK\r\n");
|
||||
tls_puts(server->session, "HTTP/1.1 200 OK\r\n");
|
||||
tls_printf(server->session, "Content-Length: %u\r\n", (unsigned int)st.st_size);
|
||||
tls_print(server->session, "Content-Type: text/html\r\n");
|
||||
tls_print(server->session, "X-Transcend-Version: 1\r\n");
|
||||
tls_print(server->session, "\r\n");
|
||||
tls_puts(server->session, "Content-Type: text/html\r\n");
|
||||
tls_puts(server->session, "X-Transcend-Version: 1\r\n");
|
||||
tls_puts(server->session, "\r\n");
|
||||
|
||||
tls_send_file(server->session, file);
|
||||
|
||||
return 0;
|
||||
} else {
|
||||
tls_print(server->session, "HTTP/1.1 200 OK\r\n");
|
||||
tls_print(server->session, "Connection: close\r\n");
|
||||
tls_print(server->session, "Content-Type: text/xml\r\n");
|
||||
tls_print(server->session, "X-Transcend-Version: 1\r\n");
|
||||
tls_print(server->session, "\r\n");
|
||||
tls_print(server->session,
|
||||
tls_puts(server->session, "HTTP/1.1 200 OK\r\n");
|
||||
tls_puts(server->session, "Connection: close\r\n");
|
||||
tls_puts(server->session, "Content-Type: text/xml\r\n");
|
||||
tls_puts(server->session, "X-Transcend-Version: 1\r\n");
|
||||
tls_puts(server->session, "\r\n");
|
||||
tls_puts(server->session,
|
||||
"<?xml version=\"1.0\" encoding=\"UTF-8\"?>\r\n");
|
||||
tls_print(server->session, "<auth id=\"main\">\r\n");
|
||||
tls_print(server->session,
|
||||
tls_puts(server->session, "<auth id=\"main\">\r\n");
|
||||
tls_puts(server->session,
|
||||
"<message>Please enter your login cookie.</message>\r\n");
|
||||
tls_print(server->session,
|
||||
tls_puts(server->session,
|
||||
"<form method=\"post\" action=\"/login.xml\">\r\n");
|
||||
tls_print(server->session,
|
||||
tls_puts(server->session,
|
||||
"<input type=\"text\" name=\"cookie\" label=\"Cookie:\" />\r\n");
|
||||
tls_print(server->session, "</form></auth>\r\n");
|
||||
tls_puts(server->session, "</form></auth>\r\n");
|
||||
|
||||
return 1;
|
||||
}
|
||||
@@ -315,13 +315,13 @@ struct stored_cookie_st sc;
|
||||
|
||||
oclog(server, LOG_INFO, "User '%s' logged in via cookie\n", sc.username);
|
||||
|
||||
tls_print(server->session, "HTTP/1.1 200 OK\r\n");
|
||||
tls_print(server->session, "Content-Type: text/xml\r\n");
|
||||
tls_print(server->session, "X-Transcend-Version: 1\r\n");
|
||||
tls_puts(server->session, "HTTP/1.1 200 OK\r\n");
|
||||
tls_puts(server->session, "Content-Type: text/xml\r\n");
|
||||
tls_puts(server->session, "X-Transcend-Version: 1\r\n");
|
||||
tls_printf(server->session, "Content-Length: %u\r\n", (unsigned)(sizeof(SUCCESS_MSG)-1));
|
||||
tls_printf(server->session, "Set-Cookie: webvpn=%s\r\n",
|
||||
str_cookie);
|
||||
tls_print(server->session, "\r\n"SUCCESS_MSG);
|
||||
tls_puts(server->session, "\r\n"SUCCESS_MSG);
|
||||
|
||||
return 0;
|
||||
|
||||
|
||||
@@ -3,7 +3,7 @@
|
||||
|
||||
#include <gnutls/gnutls.h>
|
||||
|
||||
#define tls_print(s, str) tls_send(s, str, sizeof(str)-1)
|
||||
#define tls_puts(s, str) tls_send(s, str, sizeof(str)-1)
|
||||
|
||||
int __attribute__ ((format(printf, 2, 3)))
|
||||
tls_printf(gnutls_session_t session, const char *fmt, ...);
|
||||
|
||||
26
src/vpn.c
26
src/vpn.c
@@ -262,7 +262,7 @@ restart:
|
||||
fn = get_url_handler(req.url);
|
||||
if (fn == NULL) {
|
||||
oclog(server, LOG_INFO, "Unexpected URL %s", req.url);
|
||||
tls_print(session, "HTTP/1.1 404 Nah, go away\r\n\r\n");
|
||||
tls_puts(session, "HTTP/1.1 404 Nah, go away\r\n\r\n");
|
||||
goto finish;
|
||||
}
|
||||
|
||||
@@ -286,7 +286,7 @@ restart:
|
||||
fn = post_url_handler(req.url);
|
||||
if (fn == NULL) {
|
||||
oclog(server, LOG_INFO, "Unexpected POST URL %s", req.url);
|
||||
tls_print(session, "HTTP/1.1 404 Nah, go away\r\n\r\n");
|
||||
tls_puts(session, "HTTP/1.1 404 Nah, go away\r\n\r\n");
|
||||
goto finish;
|
||||
}
|
||||
|
||||
@@ -301,7 +301,7 @@ restart:
|
||||
|
||||
} else {
|
||||
oclog(server, LOG_INFO, "Unexpected method %s", http_method_str(parser.method));
|
||||
tls_print(session, "HTTP/1.1 404 Nah, go away\r\n\r\n");
|
||||
tls_puts(session, "HTTP/1.1 404 Nah, go away\r\n\r\n");
|
||||
}
|
||||
|
||||
finish:
|
||||
@@ -463,7 +463,7 @@ unsigned int buffer_size;
|
||||
|
||||
if (req->cookie_set == 0) {
|
||||
oclog(server, LOG_INFO, "Connect request without authentication");
|
||||
tls_print(server->session, "HTTP/1.1 503 Service Unavailable\r\n\r\n");
|
||||
tls_puts(server->session, "HTTP/1.1 503 Service Unavailable\r\n\r\n");
|
||||
tls_fatal_close(server->session, GNUTLS_A_ACCESS_DENIED);
|
||||
exit(1);
|
||||
}
|
||||
@@ -471,21 +471,21 @@ unsigned int buffer_size;
|
||||
ret = retrieve_cookie(server, req->cookie, sizeof(req->cookie), &sc);
|
||||
if (ret < 0) {
|
||||
oclog(server, LOG_INFO, "Connect request without authentication");
|
||||
tls_print(server->session, "HTTP/1.1 503 Service Unavailable\r\n\r\n");
|
||||
tls_puts(server->session, "HTTP/1.1 503 Service Unavailable\r\n\r\n");
|
||||
tls_fatal_close(server->session, GNUTLS_A_ACCESS_DENIED);
|
||||
exit(1);
|
||||
}
|
||||
|
||||
if (strcmp(req->url, "/CSCOSSLC/tunnel") != 0) {
|
||||
oclog(server, LOG_INFO, "Bad connect request: '%s'\n", req->url);
|
||||
tls_print(server->session, "HTTP/1.1 404 Nah, go away\r\n\r\n");
|
||||
tls_puts(server->session, "HTTP/1.1 404 Nah, go away\r\n\r\n");
|
||||
tls_fatal_close(server->session, GNUTLS_A_ACCESS_DENIED);
|
||||
exit(1);
|
||||
}
|
||||
|
||||
if (server->config->networks_size == 0) {
|
||||
oclog(server, LOG_ERR, "No networks are configured. Rejecting client.");
|
||||
tls_print(server->session, "HTTP/1.1 503 Service Unavailable\r\n\r\n");
|
||||
tls_puts(server->session, "HTTP/1.1 503 Service Unavailable\r\n\r\n");
|
||||
return -1;
|
||||
}
|
||||
|
||||
@@ -495,7 +495,7 @@ unsigned int buffer_size;
|
||||
buffer = malloc(buffer_size);
|
||||
if (buffer == NULL) {
|
||||
oclog(server, LOG_ERR, "Memory error. Rejecting client.");
|
||||
tls_print(server->session, "HTTP/1.1 503 Service Unavailable\r\n\r\n");
|
||||
tls_puts(server->session, "HTTP/1.1 503 Service Unavailable\r\n\r\n");
|
||||
return -1;
|
||||
}
|
||||
|
||||
@@ -503,13 +503,13 @@ unsigned int buffer_size;
|
||||
&vinfo, buffer, buffer_size);
|
||||
if (ret < 0) {
|
||||
oclog(server, LOG_ERR, "Network interfaces are not configured. Rejecting client.");
|
||||
tls_print(server->session, "HTTP/1.1 503 Service Unavailable\r\n\r\n");
|
||||
tls_puts(server->session, "HTTP/1.1 503 Service Unavailable\r\n\r\n");
|
||||
return -1;
|
||||
}
|
||||
|
||||
tls_print(server->session, "HTTP/1.1 200 CONNECTED\r\n");
|
||||
tls_puts(server->session, "HTTP/1.1 200 CONNECTED\r\n");
|
||||
tls_printf(server->session, "X-CSTP-MTU: %u\r\n", vinfo.mtu);
|
||||
tls_print(server->session, "X-CSTP-DPD: 60\r\n");
|
||||
tls_puts(server->session, "X-CSTP-DPD: 60\r\n");
|
||||
|
||||
if (vinfo.ipv4_netmask) {
|
||||
tls_printf(server->session, "X-CSTP-Address: 172.31.255.%d\r\n",
|
||||
@@ -529,8 +529,8 @@ unsigned int buffer_size;
|
||||
tls_printf(server->session,
|
||||
"X-CSTP-Split-Include: %s\r\n", vinfo.routes[i]);
|
||||
}
|
||||
tls_print(server->session, "X-CSTP-Banner: Hello there\r\n");
|
||||
tls_print(server->session, "\r\n");
|
||||
tls_puts(server->session, "X-CSTP-Banner: Hello there\r\n");
|
||||
tls_puts(server->session, "\r\n");
|
||||
|
||||
free(buffer);
|
||||
buffer = NULL;
|
||||
|
||||
Reference in New Issue
Block a user