diff options
author | Michael Drake <michael.drake@codethink.co.uk> | 2018-08-14 11:34:30 +0100 |
---|---|---|
committer | Michael Drake <tlsa@netsurf-browser.org> | 2018-08-15 07:29:58 +0100 |
commit | 66a97b863ce450bb0932ea4813b81c9b62d84b83 (patch) | |
tree | e105c2dd0cc633053e8f66af91bf7c8537a0c557 /frontends/atari/login.c | |
parent | c55a31aa110cd5f469a7758f63c0f0dbb26da2c9 (diff) | |
download | netsurf-66a97b863ce450bb0932ea4813b81c9b62d84b83.tar.gz netsurf-66a97b863ce450bb0932ea4813b81c9b62d84b83.tar.bz2 |
Atari: Move to new HTTP auth API.
Diffstat (limited to 'frontends/atari/login.c')
-rw-r--r-- | frontends/atari/login.c | 18 |
1 files changed, 12 insertions, 6 deletions
diff --git a/frontends/atari/login.c b/frontends/atari/login.c index 1b21c5d2a..6736c3ab2 100644 --- a/frontends/atari/login.c +++ b/frontends/atari/login.c @@ -34,7 +34,7 @@ #include "atari/res/netsurf.rsh" -bool login_form_do(nsurl * url, char * realm, char ** out) +bool login_form_do(nsurl * url, char * realm, char ** u_out char ** p_out) { char user[255]; char pass[255]; @@ -45,8 +45,6 @@ bool login_form_do(nsurl * url, char * realm, char ** out) user[0] = 0; pass[0] = 0; - // TODO: use auth details for predefined login data - // auth = urldb_get_auth_details(url, realm); tree = gemtk_obj_get_tree(LOGIN); assert(tree != NULL); @@ -57,10 +55,18 @@ bool login_form_do(nsurl * url, char * realm, char ** out) get_string(tree, LOGIN_TB_USER, user); get_string(tree, LOGIN_TB_PASSWORD, pass); int size = strlen((char*)&user) + strlen((char*)&pass) + 2 ; - *out = malloc(size); - snprintf(*out, size, "%s:%s", user, pass); + *u_out = malloc(strlen((char*)&user) + 1); + *p_out = malloc(strlen((char*)&pass) + 1); + if (u_out == NULL || p_out == NULL) { + free(*u_out); + free(*p_out); + return false; + } + memcpy(*u_out, (char*)&user, strlen((char*)&user) + 1); + memcpy(*p_out, (char*)&pass, strlen((char*)&pass) + 1); } else { - *out = NULL; + *u_out = NULL; + *p_out = NULL; } return((exit_obj == LOGIN_BT_LOGIN)); } |