diff --git a/src/apps/relay/http_server.c b/src/apps/relay/http_server.c index b8c990e..d731abc 100644 --- a/src/apps/relay/http_server.c +++ b/src/apps/relay/http_server.c @@ -79,6 +79,7 @@ void handle_http_echo(ioa_socket_handle s) { static struct headers_list * post_parse(char *data, size_t data_len) { + while((*data=='\r')||(*data=='\n')) ++data; char *post_data = calloc(data_len + 1, sizeof(char)); memcpy(post_data, data, data_len); char *fmarker = NULL; diff --git a/src/apps/relay/turn_admin_server.c b/src/apps/relay/turn_admin_server.c index c8c7a33..f730cf1 100644 --- a/src/apps/relay/turn_admin_server.c +++ b/src/apps/relay/turn_admin_server.c @@ -1357,6 +1357,24 @@ int send_turn_session_info(struct turn_session_info* tsi) /////////// HTTPS ///////////// +enum _AS_FORM { + AS_FORM_UNKNOWN, + AS_FORM_LOGON +}; + +typedef enum _AS_FORM AS_FORM; + +#define HR_USERNAME "uname" +#define HR_PASSWORD "pwd" + +#define AS_FORM_NAME_LOGON "logon" + +static AS_FORM get_form(const char* path) { + while(*path=='/') ++path; + if(!strcmp(path,AS_FORM_NAME_LOGON)) return AS_FORM_LOGON; + return AS_FORM_UNKNOWN; +} + static void write_https_logon_page(ioa_socket_handle s) { if(s && !ioa_socket_tobeclosed(s)) { @@ -1370,8 +1388,14 @@ static void write_https_logon_page(ioa_socket_handle s) str_buffer_append(sb,"\r\n \r\n
\r\n "); str_buffer_append(sb,title); str_buffer_append(sb,"