diff options
| author | 2022-10-04 11:55:48 +0200 | |
|---|---|---|
| committer | 2022-10-04 11:55:48 +0200 | |
| commit | f521285d753c38ec99f5e982cbabf871ac107936 (patch) | |
| tree | 1403bebf9037d6bc32332f78ceeffe699abbf3da | |
| parent | Updated documentation. (diff) | |
| download | snac2-f521285d753c38ec99f5e982cbabf871ac107936.tar.gz snac2-f521285d753c38ec99f5e982cbabf871ac107936.tar.xz snac2-f521285d753c38ec99f5e982cbabf871ac107936.zip | |
Ensure the login information is null-terminated.
| -rw-r--r-- | html.c | 7 |
1 files changed, 6 insertions, 1 deletions
| @@ -132,7 +132,12 @@ int login(snac *snac, char *headers) | |||
| 132 | int sz; | 132 | int sz; |
| 133 | xs *s1 = xs_crop(xs_dup(auth), 6, 0); | 133 | xs *s1 = xs_crop(xs_dup(auth), 6, 0); |
| 134 | xs *s2 = xs_base64_dec(s1, &sz); | 134 | xs *s2 = xs_base64_dec(s1, &sz); |
| 135 | xs *l1 = xs_split_n(s2, ":", 1); | 135 | |
| 136 | /* copy to asciiz it */ | ||
| 137 | xs *s3 = calloc(sz + 1, 1); | ||
| 138 | memcpy(s3, s2, sz); | ||
| 139 | |||
| 140 | xs *l1 = xs_split_n(s3, ":", 1); | ||
| 136 | 141 | ||
| 137 | if (xs_list_len(l1) == 2) { | 142 | if (xs_list_len(l1) == 2) { |
| 138 | logged_in = check_password( | 143 | logged_in = check_password( |