Tom Grace [Wed, 13 Mar 2013 03:58:51 +0000 (04:58 +0100)]
build_vms.com: VMS build fixes
Added missing slash in cc_full_list.
Removed unwanted extra quotes inside symbol tool_main
for non-VAX architectures that triggered link failure.
Replaced curl_sys_inc with sys_inc.
Tom Grace [Wed, 13 Mar 2013 02:13:52 +0000 (03:13 +0100)]
tool_main.c: fix VMS global variable storage-class specifier
An extern submits a psect and a global reference to the linker to point
to it. Using "extern int vms_show = 0" also creates a globaldef.
The use of the extern by itself does declare a psect but does not declare
a globalsymbol. It does declare a globalref. But the linker needs one and
only one globaldef or there is an error.
Patrick Monnerat [Tue, 12 Mar 2013 14:37:34 +0000 (15:37 +0100)]
OS400: synchronize RPG binding
Steve Holme [Tue, 12 Mar 2013 13:09:03 +0000 (13:09 +0000)]
pop3: Fixed continuous wait when using --ftp-list
Don't initiate a transfer when using --ftp-list.
Zdenek Pavlas [Mon, 11 Mar 2013 13:57:07 +0000 (14:57 +0100)]
curl_global_init: accept the CURL_GLOBAL_ACK_EINTR flag
The flag can be used in pycurl-based applications where using the multi
interface would not be acceptable because of the performance lost caused
by implementing the select() loop in python.
Bug: http://curl.haxx.se/bug/view.cgi?id=1168
Downstream Bug: https://bugzilla.redhat.com/919127
Kamil Dudka [Mon, 11 Mar 2013 15:57:25 +0000 (16:57 +0100)]
easy: do not ignore poll() failures other than EINTR
Yang Tse [Mon, 11 Mar 2013 23:24:37 +0000 (00:24 +0100)]
curl.h: stricter CURL_EXTERN linkage decorations logic
No API change involved.
Info: http://curl.haxx.se/mail/lib-2013-02/0234.html
Daniel Stenberg [Mon, 11 Mar 2013 18:40:02 +0000 (19:40 +0100)]
THANKS: Latin-1'ified Jiri's name
Steve Holme [Mon, 11 Mar 2013 13:06:55 +0000 (13:06 +0000)]
test806: Added CRLF to reply data to be compliant with RFC-822
Daniel Stenberg [Mon, 11 Mar 2013 12:26:15 +0000 (13:26 +0100)]
test805: added crlf newlines to make data size match
since mails sent are supposed to have CRLF line endings I added them and
now the data size after (\Seen) matches again properly
Daniel Stenberg [Mon, 11 Mar 2013 12:23:51 +0000 (13:23 +0100)]
test: fix newline for the data check of 807
Yang Tse [Mon, 11 Mar 2013 11:48:36 +0000 (12:48 +0100)]
test801 to test807: fix protocol section line endings
Steve Holme [Sun, 10 Mar 2013 20:27:05 +0000 (20:27 +0000)]
Makefile.am: Corrected a couple of spurious tab characters
Corrected a couple of tab characters between test702 and test703, and
between test900 and test901 which should be spaces.
Jiri Hruska [Sun, 10 Mar 2013 20:22:10 +0000 (21:22 +0100)]
imap: Added test807 for custom request functionality (STORE)
Jiri Hruska [Sun, 10 Mar 2013 20:13:59 +0000 (21:13 +0100)]
imap: Added test806 for IMAP (folder) LIST command
Jiri Hruska [Sun, 10 Mar 2013 20:02:55 +0000 (21:02 +0100)]
imap: Added test805 for APPEND functionality
Jiri Hruska [Sun, 10 Mar 2013 19:52:30 +0000 (20:52 +0100)]
imap: Added test804 for skipping SELECT if in the same mailbox
Jiri Hruska [Sun, 10 Mar 2013 19:40:28 +0000 (20:40 +0100)]
imap: Added test802 and test803 for UIDVALIDITY verification
Added one test for a request with matching UIDVALIDITY and one which is
a mismatched request that will fail.
Jiri Hruska [Sun, 10 Mar 2013 19:37:41 +0000 (20:37 +0100)]
imap: Added test801 for UID and SECTION URL parameters
Jiri Hruska [Sun, 10 Mar 2013 19:29:31 +0000 (20:29 +0100)]
imap-tests: Accept quoted parameters in ftpserver.pl
Any IMAP parameter can come in escaped and in double quotes. Added a
simple function to unquote the command parameters and applied it to
the IMAP command handlers.
Jiri Hruska [Sun, 10 Mar 2013 19:23:27 +0000 (20:23 +0100)]
tests: Fix ftpserver.pl indentation
The whole of FETCH_imap() had one extra space of indentation, whilst
APPEND_imap() used indentation of 2 instead of 4 in places.
Steve Holme [Sun, 10 Mar 2013 19:00:39 +0000 (19:00 +0000)]
Makefile.am: Corrected end of line filler character
The majority of lines, that specify a test file for inclusion, end with
a tab character before the slash whilst some end with a space. Corrected
those that end with a space to end with a tab character as well.
Steve Holme [Sun, 10 Mar 2013 19:55:22 +0000 (19:55 +0000)]
email-tests: Updated the test data that corresponds to the test number
Finished segregating the email protocol tests, into their own protocol
based ranges, in preparation of adding more e-mail related tests to the
test suite.
Steve Holme [Sun, 10 Mar 2013 18:50:43 +0000 (18:50 +0000)]
email-tests: Renamed the IMAP test to be 800
Continued segregating the email protocol tests, into their own protocol
based ranges, in preparation of adding more e-mail related tests to the
test suite.
Steve Holme [Sun, 10 Mar 2013 18:48:08 +0000 (18:48 +0000)]
email-tests: Renamed the SMTP tests to be in the range 900-906
Continued segregating the email protocol tests, into their own protocol
based ranges, in preparation of adding more e-mail related tests to the
test suite.
Steve Holme [Sun, 10 Mar 2013 18:45:24 +0000 (18:45 +0000)]
email-tests: Renamed the POP3 tests to be in the range 850-857
Started segregating the email protocol tests, into their own protocol
based ranges, in preparation of adding more e-mail related tests to the
test suite.
Daniel Stenberg [Sun, 10 Mar 2013 18:44:48 +0000 (19:44 +0100)]
hiperfifo: updated to use current libevent API
Patch by: Myk Taylor
Steve Holme [Sun, 10 Mar 2013 12:56:45 +0000 (12:56 +0000)]
imap: Reworked some function descriptions
Steve Holme [Sun, 10 Mar 2013 12:47:28 +0000 (12:47 +0000)]
imap: Added some missing comments to imap_sendf()
Steve Holme [Sat, 9 Mar 2013 22:25:40 +0000 (22:25 +0000)]
email: Removed hard returns from init functions
Daniel Stenberg [Sat, 9 Mar 2013 21:26:07 +0000 (22:26 +0100)]
curl_multi_wait: avoid second loop if nothing to do
... hopefully this will also make clang-analyzer stop warning on
potentional NULL dereferences (which were false positives anyway).
Daniel Stenberg [Sat, 9 Mar 2013 17:05:28 +0000 (18:05 +0100)]
multi_runsingle: avoid NULL dereference
When Curl_do() returns failure, the connection pointer could be NULL so
the code path following needs to that that into account.
Bug: http://curl.haxx.se/mail/lib-2013-03/0062.html
Reported by: Eric Hu
Steve Holme [Sat, 9 Mar 2013 18:50:41 +0000 (18:50 +0000)]
imap: Re-factored all perform based functions
Standardised the naming of all perform based functions to be in the form
imap_perform_something().
Cédric Deltheil [Sun, 24 Feb 2013 17:17:30 +0000 (18:17 +0100)]
examples/getinmemory.c: abort the transfer if not enough memory
No more use exit(3) but instead tell libcurl that no byte has been
written to let it return a `CURLE_WRITE_ERROR`. In addition, check
curl easy handle return code.
Daniel Stenberg [Sat, 9 Mar 2013 15:31:57 +0000 (16:31 +0100)]
RELEASE-NOTES: synced with
ca3c0ed3a9c
8 more bugfixes, one change and a bunch of contributors
Yang Tse [Sat, 9 Mar 2013 15:23:04 +0000 (16:23 +0100)]
Makefile.am: empty AM_LDFLAGS definition for automake 1.7 compatibility
Steve Holme [Sat, 9 Mar 2013 14:02:56 +0000 (14:02 +0000)]
imap: Added description comments to all perform based functions
Steve Holme [Sat, 9 Mar 2013 13:26:59 +0000 (13:26 +0000)]
imap: Removed the need for separate custom request functions
Moved the custom request processing into the LIST command as the logic
is the same.
Steve Holme [Sat, 9 Mar 2013 13:25:15 +0000 (13:25 +0000)]
imap: Corrected typo in comment
Yang Tse [Sat, 9 Mar 2013 12:57:55 +0000 (13:57 +0100)]
Makefile.am: empty AM_LDFLAGS definition for automake 1.7 compatibility
Steve Holme [Sat, 9 Mar 2013 12:12:20 +0000 (12:12 +0000)]
imap: Moved imap_logout() to be grouped with the other perform functions
Steve Holme [Sat, 9 Mar 2013 12:10:01 +0000 (12:10 +0000)]
email: Updated the function descriptions for the logout / quit functions
Updated the function description comments following commit
4838d196fdbf.
Steve Holme [Sat, 9 Mar 2013 11:55:48 +0000 (11:55 +0000)]
email: Simplified the logout / quit functions
Moved the blocking state machine to the disconnect functions so that the
logout / quit functions are only responsible for sending the actual
command needed to logout or quit.
Additionally removed the hard return on failure.
Steve Holme [Fri, 8 Mar 2013 23:25:04 +0000 (23:25 +0000)]
email: Tidied up the *_regular_transfer() functions
Added comments and simplified convoluted dophase_done comparison.
Steve Holme [Fri, 8 Mar 2013 23:02:20 +0000 (23:02 +0000)]
email: Simplified nesting of if statements in *_doing() functions
Daniel Stenberg [Fri, 8 Mar 2013 15:34:40 +0000 (16:34 +0100)]
RELEASE-NOTES: mention that krb4 is up for consideration
Steve Holme [Fri, 8 Mar 2013 21:18:36 +0000 (21:18 +0000)]
imap: Fixed handling of untagged responses for the STORE custom command
Added an exception, for the STORE command, to the untagged response
processor in imap_endofresp() as servers will back respones containing
the FETCH keyword instead.
Yang Tse [Fri, 8 Mar 2013 17:43:03 +0000 (18:43 +0100)]
curlbuild.h.dist: enhance non-configure GCC ABI detection logic
GCC specific adjustments:
- check __ILP32__ before 32 and 64bit processor architectures in
order to detect ILP32 programming model on 64 bit processors
which, of course, also support LP64 programming model, when using
gcc 4.7 or newer.
- keep 32bit processor architecture checks in order to support gcc
versions older than 4.7 which don't define __ILP32__
- check __LP64__ for gcc 3.3 and newer, while keeping 64bit processor
architecture checks for older versions which don't define __LP64__
Yang Tse [Fri, 8 Mar 2013 14:30:44 +0000 (15:30 +0100)]
curlbuild.h.dist: fix GCC build on ARM systems without configure script
Bug: http://curl.haxx.se/bug/view.cgi?id=1205
Reported by: technion
Gisle Vanem [Fri, 8 Mar 2013 13:02:01 +0000 (14:02 +0100)]
polarssl.c: fix header filename typo
Yang Tse [Fri, 8 Mar 2013 12:26:08 +0000 (13:26 +0100)]
configure: use XC_LIBTOOL for portability across libtool versions
Yang Tse [Fri, 8 Mar 2013 12:25:07 +0000 (13:25 +0100)]
xc-lt-iface.m4: provide XC_LIBTOOL macro
Steve Holme [Thu, 7 Mar 2013 22:56:19 +0000 (22:56 +0000)]
imap: Fixed SELECT not being performed for custom requests
Steve Holme [Thu, 7 Mar 2013 22:44:10 +0000 (22:44 +0000)]
email: Minor code tidy up following recent changes
Removed unwanted braces and added variable initialisation.
Steve Holme [Thu, 7 Mar 2013 20:53:15 +0000 (20:53 +0000)]
DOCS: Corrected the IMAP URL grammar of the UIDVALIDITY parameter
Steve Holme [Thu, 7 Mar 2013 18:31:48 +0000 (18:31 +0000)]
FEATURES: Provided a little clarity in some IMAP features
Steve Holme [Thu, 7 Mar 2013 18:21:58 +0000 (18:21 +0000)]
email: Optimised block_statemach() functions
Optimised the result test in each of the block_statemach() functions.
Steve Holme [Thu, 7 Mar 2013 11:51:40 +0000 (11:51 +0000)]
DOCS: Added the list command to the IMAP URL section
Added examples of the list command and clarified existing example URLs
following recent changes.
Steve Holme [Thu, 7 Mar 2013 11:03:16 +0000 (11:03 +0000)]
FEATURES: Updated for recent imap additions
Updated the imap features list, corrected a typo in the smtp features
and clarified a pop3 feature.
Daniel Stenberg [Thu, 7 Mar 2013 10:14:16 +0000 (11:14 +0100)]
version bump: the next release will be 7.30.0
Daniel Stenberg [Wed, 6 Mar 2013 12:27:51 +0000 (13:27 +0100)]
checksrc: ban unsafe functions
The list of unsafe functions currently consists of sprintf, vsprintf,
strcat, strncat and gets.
Subsequently, some existing code needed updating to avoid warnings on
this.
Steve Holme [Thu, 7 Mar 2013 10:03:28 +0000 (10:03 +0000)]
RELEASE-NOTES: Added missing imap fixes and additions
With all the recent imap changes it wasn't clear what new features and
fixes should be included in the release notes.
Nick Zitzmann [Thu, 7 Mar 2013 03:03:18 +0000 (20:03 -0700)]
RELEASE-NOTES: brought this up-to-date with the latest changes
Jiri Hruska [Wed, 6 Mar 2013 21:19:17 +0000 (22:19 +0100)]
imap: Fixed test801 and test1321 to specify a message UID
Just a folder list would be retrieved if UID was not specified now.
Jiri Hruska [Wed, 6 Mar 2013 21:16:19 +0000 (22:16 +0100)]
imap: Fixed ftpserver.pl to allow verification even through LIST command
Commit
198012ee inadvertently broke LIST_imap().
Steve Holme [Wed, 6 Mar 2013 20:31:53 +0000 (20:31 +0000)]
imap: Tidied up the APPEND and final APPEND response functions
Removed unnecessary state changes on failure and setting of result codes
on success.
Steve Holme [Wed, 6 Mar 2013 20:19:46 +0000 (20:19 +0000)]
imap: Tidied up the final FETCH response function
Removed unnecessary state change on failure and setting of result code on
success.
Steve Holme [Wed, 6 Mar 2013 20:10:53 +0000 (20:10 +0000)]
imap: Tidied up the LIST response function
Reworked comments as they referenced custom commands, removed
unnecessary state change on failure and setting of result code on
success.
Steve Holme [Wed, 6 Mar 2013 19:58:34 +0000 (19:58 +0000)]
imap: Removed the custom request response function
Removed imap_state_custom_resp() as imap_state_list_resp() provides the
same functionality.
Jiri Hruska [Tue, 5 Mar 2013 17:03:48 +0000 (18:03 +0100)]
imap: Updated ftpserver.pl to be more compliant, added new commands
Enriched IMAP capabilities of ftpserver.pl in order to be able to
add tests for the new IMAP features.
* Added support for APPEND - Saves uploaded data to log/upload.$testno
* Added support for LIST - Returns the contents of <reply/> section in
the current test, like e.g FETCH.
* Added support for STORE - Returns hardcoded updated flags
* Changed handling of SELECT - Returns much more information in the
usual set of untagged responses; uses hardcoded data from an example
in the IMAP RFC
* Changed handling of FETCH - Fixed response format
Steve Holme [Wed, 6 Mar 2013 19:33:49 +0000 (19:33 +0000)]
imap: Added check for empty UID in FETCH command
As the UID has to be specified by the user for the FETCH command to work
correctly, added a check to imap_fetch(), although strictly speaking it
is protected by the call from imap_perform().
Kamil Dudka [Tue, 5 Mar 2013 16:51:01 +0000 (17:51 +0100)]
nss: fix misplaced code enabling non-blocking socket mode
The option needs to be set on the SSL socket. Setting it on the model
takes no effect. Note that the non-blocking mode is still not enabled
for the handshake because the code is not yet ready for that.
Daniel Stenberg [Wed, 6 Mar 2013 07:28:05 +0000 (08:28 +0100)]
imap: fix compiler warning
imap.c:694:21: error: unused variable 'imapc' [-Werror=unused-variable]
Steve Holme [Tue, 5 Mar 2013 22:04:03 +0000 (22:04 +0000)]
imap: Added support for list command
Steve Holme [Tue, 5 Mar 2013 21:36:25 +0000 (21:36 +0000)]
imap: Added list perform and response handler functions
Steve Holme [Tue, 5 Mar 2013 21:34:53 +0000 (21:34 +0000)]
imap: Introduced IMAP_LIST state
Steve Holme [Tue, 5 Mar 2013 19:59:53 +0000 (19:59 +0000)]
imap: Small tidy up of imap_select() to match imap_append()
Updated the style of imap_select() before adding the LIST command.
Steve Holme [Tue, 5 Mar 2013 19:52:11 +0000 (19:52 +0000)]
imap: Moved mailbox check from the imap_do() function
In preparation for the addition of the LIST command, moved the mailbox
check from imap_do() to imap_select() and imap_append().
Steve Holme [Tue, 5 Mar 2013 19:45:51 +0000 (19:45 +0000)]
curl_setup.h: Added S_IRDIR() macro for compilers that don't support it
Commit
26eaa8383001 introduces the use of S_ISDIR() yet some compilers,
such as MSVC don't support it, so we must define a substitute using
file flags and mask.
Daniel Stenberg [Mon, 4 Mar 2013 14:20:22 +0000 (15:20 +0100)]
AddFormData: prevent only directories from being posted
Commit
f4cc54cb4746ae5a6d (shipped as part of the 7.29.0 release) was a
bug fix that introduced a regression in that while trying to avoid
allowing directory names, it also forbade "special" files like character
devices and more. like "/dev/null" as was used by Oliver who reported
this regression.
Reported by: Oliver Gondža
Bug: http://curl.haxx.se/mail/archive-2013-02/0040.html
Nick Zitzmann [Mon, 4 Mar 2013 05:11:10 +0000 (22:11 -0700)]
darwinssl: fix infinite loop if server disconnected abruptly
If the server hung up the connection without sending a closure alert,
then we'd keep probing the socket for data even though it's dead. Now
we're ready for this situation.
Bug: http://curl.haxx.se/mail/lib-2013-03/0014.html
Reported by: Aki Koskinen
Steve Holme [Sun, 3 Mar 2013 16:44:53 +0000 (16:44 +0000)]
imap: Added comments to imap_append()
Jiri Hruska [Sun, 3 Mar 2013 10:37:10 +0000 (11:37 +0100)]
imap: Added required mailbox check for FETCH and APPEND commands
Steve Holme [Sun, 3 Mar 2013 13:55:01 +0000 (13:55 +0000)]
pingpong.c: Fix enumerated type mixed with another type
Steve Holme [Sun, 3 Mar 2013 13:48:22 +0000 (13:48 +0000)]
smtp: Updated the coding style for state changes after a send operation
Some state changes would be performed after a failure test that
performed a hard return, whilst others would be performed within a test
for success. Updated the code, for consistency, so all instances are
performed within a success test.
Steve Holme [Sun, 3 Mar 2013 13:36:12 +0000 (13:36 +0000)]
pop3: Updated the coding style for state changes after a send operation
Some state changes would be performed after a failure test that
performed a hard return, whilst others would be performed within a test
for success. Updated the code, for consistency, so all instances are
performed within a success test.
Steve Holme [Sun, 3 Mar 2013 13:13:59 +0000 (13:13 +0000)]
imap: Fixed typo in variable assignment
Jiri Hruska [Sun, 3 Mar 2013 10:33:53 +0000 (11:33 +0100)]
imap: Fixed custom request handling in imap_done()
Fixed imap_done() so that neither the FINAL states are not entered when
a custom command has been performed.
Jiri Hruska [Sun, 3 Mar 2013 10:27:18 +0000 (11:27 +0100)]
imap: Enabled custom requests in imap_select_resp()
Changed imap_select_resp() to invoke imap_custom() instead of
imap_fetch() after the mailbox has been selected if a custom
command has been set.
Jiri Hruska [Sun, 3 Mar 2013 10:21:29 +0000 (11:21 +0100)]
imap: Enabled custom requests in imap_perform()
Modified imap_perform() to start with the custom command instead of
SELECT when a custom command is to be performed and no mailbox has
been given.
Jiri Hruska [Sun, 3 Mar 2013 10:09:44 +0000 (11:09 +0100)]
imap: Added custom request perform and response handler functions
Added imap_custom(), which initiates the custom command processing,
and an associated response handler imap_state_custom_resp(), which
handles any responses by sending them to the client as body data.
All untagged responses with the same name as the first word of the
custom request string are accepted, with the exception of SELECT and
EXAMINE which have responses that cannot be easily identified. An
extra check has been provided for them so that any untagged responses
are accepted for them.
Steve Holme [Sun, 3 Mar 2013 11:10:24 +0000 (11:10 +0000)]
pop3: Fixed unnecessary parent structure reference
Updated pop3 code following recent imap changes.
Jiri Hruska [Sun, 3 Mar 2013 09:49:37 +0000 (10:49 +0100)]
imap: Added custom request parsing
Added imap_parse_custom_request() for parsing the CURLOPT_CUSTOMREQUEST
parameter which URL decodes the value and separates the request from
any parameters - This makes it easier to filter untagged responses
by the request command.
Jiri Hruska [Sun, 3 Mar 2013 09:12:27 +0000 (10:12 +0100)]
imap: Introduced custom request parameters
Added custom request parameters to the per-request structure.
Jiri Hruska [Sun, 3 Mar 2013 09:10:01 +0000 (10:10 +0100)]
imap: Introduced IMAP_CUSTOM state
Steve Holme [Sat, 2 Mar 2013 21:22:44 +0000 (21:22 +0000)]
imap: Minor code tidy up
Minor tidy up of code layout and comments following recent changes.
Steve Holme [Sat, 2 Mar 2013 20:40:38 +0000 (20:40 +0000)]
imap: Simplified the imap_state_append_resp() function
Introduced the result code variable to simplify the state changes and
remove the hard returns.
Steve Holme [Sat, 2 Mar 2013 20:35:03 +0000 (20:35 +0000)]
imap: Changed successful response logic in imap_state_append_resp()
For consistency changed the logic of the imap_state_append_resp()
function to test for an unsucessful continuation response rather than a
succesful one.
Steve Holme [Sat, 2 Mar 2013 20:29:27 +0000 (20:29 +0000)]
imap: Standardised imapcode condition tests
For consistency changed two if(constant != imapcode) tests to be
if(imapcode != constant).
Steve Holme [Sat, 2 Mar 2013 20:24:49 +0000 (20:24 +0000)]
imap: Moved imap_append() to be with the other perform functions