diff options
author | Tatsuya Kinoshita <tats@debian.org> | 2016-11-17 11:19:55 +0000 |
---|---|---|
committer | Tatsuya Kinoshita <tats@debian.org> | 2016-11-19 12:26:24 +0000 |
commit | 62de166f5531faae1e4ac36de32e27d566d4beb9 (patch) | |
tree | 30ef93aad909a17f5acb8e3b9388640ae388a436 /url.c | |
parent | Prevent deref null pointer in HTMLlineproc0() (diff) | |
download | w3m-62de166f5531faae1e4ac36de32e27d566d4beb9.tar.gz w3m-62de166f5531faae1e4ac36de32e27d566d4beb9.zip |
Prevent global-buffer-overflow in parseURL()
Bug-Debian: https://github.com/tats/w3m/issues/41
Origin: https://anonscm.debian.org/cgit/collab-maint/w3m.git/commit/?id=ba9d78faeba9024c3e8840579c3b0e959ae2cb0f
Diffstat (limited to 'url.c')
-rw-r--r-- | url.c | 5 |
1 files changed, 4 insertions, 1 deletions
@@ -841,7 +841,10 @@ parseURL(char *url, ParsedURL *p_url, ParsedURL *current) case '#': p_url->host = copyPath(q, p - q, COPYPATH_SPC_IGNORE | COPYPATH_LOWERCASE); - p_url->port = DefaultPort[p_url->scheme]; + if (p_url->scheme != SCM_UNKNOWN) + p_url->port = DefaultPort[p_url->scheme]; + else + p_url->port = 0; break; } analyze_file: |