summaryrefslogtreecommitdiff
path: root/src/tool_cb_hdr.c
Commit message (Collapse)AuthorAgeFilesLines
* gcc7: fix ‘*’ in boolean context, suggest ‘&&’ instead ↵Alexis La Goutte2017-03-301-1/+1
| | | | | | [-Wint-in-bool-context] Closes #1371
* curl: fix callback argument inconsistencyHanno Böck2017-03-291-1/+1
| | | | | | | As you can see the callback definition uses a char* for the first argument, while the function uses a void*. URL: https://curl.haxx.se/mail/lib-2017-03/0116.html
* spelling fixesklemens2017-03-261-2/+2
| | | | Closes #1356
* Improve code readbilitySylvestre Ledru2017-03-131-2/+1
| | | | | | ... by removing the else branch after a return, break or continue. Closes #1310
* checksrc: white space edits to comply to stricter checksrcDaniel Stenberg2016-11-241-1/+1
|
* strcasecompare: all case insensitive string compares ignore locale nowDaniel Stenberg2016-10-311-2/+2
| | | | | We had some confusions on when each function was used. We should not act differently on different locales anyway.
* tool_cb_hdr: Fix --remote-header-name with schemeless URLJay Satiro2016-05-011-1/+4
| | | | | | | | | | | | | | - Move the existing scheme check from tool_operate. In the case of --remote-header-name we want to parse Content-disposition for a filename, but only if the scheme is http or https. A recent adjustment 0dc4d8e was made to account for schemeless URLs however it's not 100% accurate. To remedy that I've moved the scheme check to the header callback, since at that point the library has already determined the scheme. Bug: https://github.com/curl/curl/issues/760 Reported-by: Kai Noda
* tool_doswin: Improve sanitization processingJay Satiro2016-02-051-17/+22
| | | | | | | | | | | | | | | | | | | | | | | | | | | | - Add unit test 1604 to test the sanitize_file_name function. - Use -DCURL_STATICLIB when building libcurltool for unit testing. - Better detection of reserved DOS device names. - New flags to modify sanitize behavior: SANITIZE_ALLOW_COLONS: Allow colons SANITIZE_ALLOW_PATH: Allow path separators and colons SANITIZE_ALLOW_RESERVED: Allow reserved device names SANITIZE_ALLOW_TRUNCATE: Allow truncating a long filename - Restore sanitization of banned characters from user-specified outfile. Prior to this commit sanitization of a user-specified outfile was temporarily disabled in 2b6dadc because there was no way to allow path separators and colons through while replacing other banned characters. Now in such a case we call the sanitize function with SANITIZE_ALLOW_PATH which allows path separators and colons to pass through. Closes https://github.com/curl/curl/issues/624 Reported-by: Octavio Schroeder
* URLs: change all http:// URLs to https://Daniel Stenberg2016-02-031-1/+1
|
* curl: avoid local drive traversal when saving file (Windows)Ray Satiro2016-01-261-18/+22
| | | | | | | | | | | curl does not sanitize colons in a remote file name that is used as the local file name. This may lead to a vulnerability on systems where the colon is a special path character. Currently Windows/DOS is the only OS where this vulnerability applies. CVE-2016-0754 Bug: http://curl.haxx.se/docs/adv_20160127B.html
* tool_header_cb: fflush the header streamDaniel Stenberg2015-06-251-0/+2
| | | | | | | | Flush the header stream when -D is used so that they are sent off earlier. Bug: https://github.com/bagder/curl/issues/324 Reported-by: Cédric Connes
* tool: Updated the warnf() function to use the GlobalConfig structureSteve Holme2015-02-271-2/+3
| | | | | | As the 'error' and 'mute' options are now part of the GlobalConfig, rather than per Operation, updated the warnf() function to use this structure rather than the OperationConfig.
* Revert changes relative to lib/*.[ch] recent renamingYang Tse2013-01-061-2/+2
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This reverts renaming and usage of lib/*.h header files done 28-12-2012, reverting 2 commits: f871de0... build: make use of 76 lib/*.h renamed files ffd8e12... build: rename 76 lib/*.h files This also reverts removal of redundant include guard (redundant thanks to changes in above commits) done 2-12-2013, reverting 1 commit: c087374... curl_setup.h: remove redundant include guard This also reverts renaming and usage of lib/*.c source files done 3-12-2013, reverting 3 commits: 13606bb... build: make use of 93 lib/*.c renamed files 5b6e792... build: rename 93 lib/*.c files 7d83dff... build: commit 13606bbfde follow-up 1 Start of related discussion thread: http://curl.haxx.se/mail/lib-2013-01/0012.html Asking for confirmation on pushing this revertion commit: http://curl.haxx.se/mail/lib-2013-01/0048.html Confirmation summary: http://curl.haxx.se/mail/lib-2013-01/0079.html NOTICE: The list of 2 files that have been modified by other intermixed commits, while renamed, and also by at least one of the 6 commits this one reverts follows below. These 2 files will exhibit a hole in history unless git's '--follow' option is used when viewing logs. lib/curl_imap.h lib/curl_smtp.h
* build: make use of 76 lib/*.h renamed filesYang Tse2012-12-281-2/+2
| | | | | | 76 private header files renamed to use our standard naming scheme. This change affects 322 files in libcurl's source tree.
* Fixes allowing 26 more test cases in 1334 to 1393 range to succeedYang Tse2012-06-091-25/+21
|
* Fixes allowing HTTP test cases 1338, 1339, 1368 and 1369 to succeedYang Tse2012-06-071-2/+20
|
* Made -D option work with -O and -J.Tatsuhiro Tsujikawa2012-05-251-2/+10
| | | | | | | | | | | | | | To achieve this, first new structure HeaderData is defined to hold necessary data to perform header-related work. Then tool_header_cb now receives HeaderData pointer as userdata. All header-related work (currently, dumping header and Content-Disposition inspection) are done in this callback function. HeaderData.outs->config is used to determine whether each work is done. Unit tests were also updated because after this change, curl code always sets CURLOPT_HEADERFUNCTION and CURLOPT_HEADERDATA. Tested with -O -J -D, -O -J -i and -O -J -D -i and all worked fine.
* curl tool: make curl.h first header included in tool_setup.hYang Tse2012-04-081-2/+0
|
* curl tool: use configuration files from lib directoryYang Tse2012-04-061-2/+2
| | | | | | | | | | | Configuration files such as curl_config.h and all config-*.h no longer exist nor are generated/copied into 'src' directory, now these only exist in 'lib' directory from where curl tool sources uses them. Additionally old src/setup.h has been refactored into src/tool_setup.h which now pulls lib/setup.h The possibility of a makefile needing an include path adjustment exists.
* -J -O: use -O name if no Content-Disposition header comes!Daniel Stenberg2011-11-201-2/+1
| | | | | | | | | | | A regression between 7.22.0 and 7.23.0 -- downloading a file with the flags -O and -J results in the content being written to stdout if and only if there was no Content-Disposition header in the http response. If there is a C-D header with a filename attribute, the output is correctly written. Reported by: Dave Reisner Bug: http://curl.haxx.se/mail/archive-2011-11/0030.html
* large headers: have curl accept >16K headersDaniel Stenberg2011-10-241-2/+1
| | | | | | | As commit 5850cc4808ab clarifies, libcurl can deliver header lines that are longer than CURL_MAX_WRITE_SIZE, only body data is limited to that size. The curl tool has check (when built debug-enabled) that made the wrong checks and this new test 1205 verifies that larger headers work.
* curl tool: fix some more OOM handlingYang Tse2011-09-301-1/+8
|
* curl tool: adjust header callback single call write limit warningYang Tse2011-09-281-1/+2
| | | | | | Maximum amount of data a header callback is supposed to get in a single call from libcurl is limited by the lowest value of CURL_MAX_WRITE_SIZE and CURL_MAX_HTTP_HEADER.
* curl tool: fix a compiler warningYang Tse2011-09-261-2/+1
|
* curl tool: fix some OOM handling - f4853db5 follow-upYang Tse2011-09-261-1/+2
|
* curl tool: fix some OOM handlingYang Tse2011-09-261-3/+20
|
* remove short-lived CURL_WRITEFUNC_OUT_OF_MEMORYYang Tse2011-09-261-6/+1
|
* allow write callbacks to indicate OOM to libcurlYang Tse2011-09-251-1/+6
| | | | | | Allow (*curl_write_callback) write callbacks to return CURL_WRITEFUNC_OUT_OF_MEMORY to properly indicate libcurl of OOM conditions inside the callback itself.
* curl tool: reviewed code moved to tool_*.[ch] filesYang Tse2011-09-241-0/+182