diff --git a/src/ChangeLog b/src/ChangeLog index 846fa4b2..86ba0a16 100644 --- a/src/ChangeLog +++ b/src/ChangeLog @@ -1,3 +1,7 @@ +2006-04-08 Hrvoje Niksic + + * http.c (parse_content_disposition): Doc fix. + 2006-03-15 Mauro Tortonesi * utils.c: Restricted operational semantics of frontcmp and proclist diff --git a/src/http.c b/src/http.c index d28ee7a8..70f6aa00 100644 --- a/src/http.c +++ b/src/http.c @@ -932,6 +932,23 @@ extract_param (const char **source, param_token *name, param_token *value, #undef MAX #define MAX(p, q) ((p) > (q) ? (p) : (q)) +/* Parse the contents of the `Content-Disposition' header, extracting + the information useful to Wget. Content-Disposition is a header + borrowed from MIME; when used in HTTP, it typically serves for + specifying the desired file name of the resource. For example: + + Content-Disposition: attachment; filename="flora.jpg" + + Wget will skip the tokens it doesn't care about, such as + "attachment" in the previous example; it will also skip other + unrecognized params. If the header is syntactically correct and + contains a file name, a copy of the file name is stored in + *filename and true is returned. Otherwise, the function returns + false. + + The file name is stripped of directory components and must not be + empty. */ + static bool parse_content_disposition (const char *hdr, char **filename) {