Skip to content


Subversion checkout URL

You can clone with HTTPS or Subversion.

Download ZIP
Commits on Jun 16, 2014
  1. Michał Górny

    tool_metalink: Support polarssl as digest provider

    mgorny authored committed
Commits on Mar 1, 2014
  1. Steve Holme
Commits on Feb 23, 2014
  1. Steve Holme

    tool_cfgable: Renamed Configurable structure to OperationConfig

    captain-caveman2k authored
    To allow for the addition of a global config structure and prevent
    confusion between the two.
Commits on Dec 2, 2013
  1. Kamil Dudka

    tool_metalink: do not use HAVE_NSS_INITCONTEXT

    kdudka authored
    ... no longer provided by the configure script
Commits on Jul 31, 2013
  1. nickzman

    md5 & metalink: use better build macros on Apple operating systems

    nickzman authored
    Previously we used __MAC_10_X and __IPHONE_X to mark digest-generating
    code that was specific to OS X and iOS. Now we use
    instead of those macros.
    Reported by: Edward Rudd
Commits on Jan 6, 2013
  1. yangtse

    Revert changes relative to lib/*.[ch] recent renaming

    yangtse authored
    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 13606bb follow-up 1
    Start of related discussion thread:
    Asking for confirmation on pushing this revertion commit:
    Confirmation summary:
    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.
Commits on Dec 28, 2012
  1. yangtse

    build: make use of 76 lib/*.h renamed files

    yangtse authored
    76 private header files renamed to use our standard naming scheme.
    This change affects 322 files in libcurl's source tree.
Commits on Dec 14, 2012
  1. yangtse

    setup_once.h: refactor inclusion of <unistd.h> and <sys/socket.h>

    yangtse authored
    Inclusion of top two most included header files now done in setup_once.h
Commits on Nov 13, 2012
  1. Kamil Dudka

    tool_metalink: fix error detection of hash alg initialization

    kdudka authored
    The {MD5,SHA1,SHA256}_Init functions from OpenSSL are called directly
    without any wrappers and they return 1 for success, 0 otherwise.  Hence,
    we have to use the same approach in all the wrapper functions that are
    used for the other crypto libraries.
    This commit fixes a regression introduced in commit dca8ae5.
Commits on Nov 9, 2012
  1. Kamil Dudka
  2. Kamil Dudka
  3. Kamil Dudka

    tool_metalink: introduce metalink_cleanup() in the internal API

    kdudka authored
    ... to release resources allocated at global scope
Commits on Oct 22, 2012
  1. metalink/md5: Use CommonCrypto on Apple operating systems

    Nick Zitzmann authored committed
    Previously the Metalink code used Apple's CommonCrypto library only if
    curl was built using the --with-darwinssl option. Now we use CommonCrypto
    on all Apple operating systems including Tiger or later, or iOS 5 or
    later, so you don't need to build --with-darwinssl anymore. Also rolled
    out this change to libcurl's md5 code.
Commits on Oct 12, 2012
  1. Guenter Knauf
Commits on Oct 1, 2012
  1. Tatsuhiro Tsujikawa

    tool_metalink.c: Filtered resource URLs by type

    tatsuhiro-t authored committed
    In Metalink v3, the type attribute of url element indicates the
    type of the resource the URL points to. It can include URL to the
    meta data, such as BitTorrent metainfo file.  In Curl, we are not
    interested in these meta data URLs. Instead, we are only
    interested in the HTTP and FTP URLs. This change filters out
    non-HTTP and FTP URLs. If we don't filter out them, it will be
    downloaded by curl and hash check will fail if hash is provided
    and next URL will be tried. This change will cut this useless
    network transfer.
Commits on Sep 11, 2012
  1. Marc Hörsken

    tool_metalink.c: Added name of validation hash to messages

    mback2k authored
    This makes it easier to debug broken hashes or hash functions.
  2. Marc Hörsken

    wincrypt: Fixed cross-compilation issues caused by include name

    mback2k authored
    For some reason WinCrypt.h is named wincrypt.h under MinGW.
  3. Marc Hörsken

    tool_metalink.c: Added support for Microsoft Windows CryptoAPI

    mback2k authored
    Since Metalink support requires a crypto library for hash functions
    and Windows comes with the builtin CryptoAPI, this patch adds that
    API as a fallback to the supported crypto libraries.
    It is automatically used on Windows if no other library is provided.
  4. Marc Hörsken

    tool_metalink.c: Fixed error: 'O_BINARY' undeclared

    mback2k authored
    Check for O_BINARY which is not available on every system.
Commits on Sep 10, 2012
  1. Marc Hörsken

    tool_metalink.c: Fixed validation of binary files containing EOF

    mback2k authored
    Since Windows/MinGW threat 0x1A as the EOF character, reading binary
    files which contain that byte does not work using text mode.
    The read function will only read until the first 0x1A byte. This
    means that the hash is not computed from the whole file and the
    final validation check using hash comparision fails.
Commits on Aug 8, 2012
  1. metalink: Un-broke the build when building --with-darwinssl

    Nick Zitzmann authored committed
Commits on Aug 6, 2012
Commits on Jun 27, 2012
  1. Tatsuhiro Tsujikawa yangtse

    Metalink: message updates

    tatsuhiro-t authored yangtse committed
    Print "parsing (...) OK" only when no warnings are generated.  If
    no file is found in Metalink, treat it FAILED.
    If no digest is provided, print WARNING in parse_metalink().
    Also print validating FAILED after download.
    These changes make tests 2012 to 2016 pass.
  2. Tatsuhiro Tsujikawa yangtse

    Metalink: updated message format

    tatsuhiro-t authored yangtse committed
Commits on Jun 21, 2012
  1. Tatsuhiro Tsujikawa yangtse
  2. Tatsuhiro Tsujikawa yangtse

    curl: Made --metalink option toggle Metalink functionality

    tatsuhiro-t authored yangtse committed
    In this change, --metalink option no longer takes argument.  If
    it is specified, given URIs are processed as Metalink XML file.
    If given URIs are remote (e.g., http URI), curl downloads it
    first. Regardless URI is local file (e.g., file URI scheme) or
    remote, Metalink XML file is not written to local file system and
    the received data is fed into Metalink XML parser directly.  This
    means with --metalink option, filename related options like -O
    and -o are ignored.
    Usage examples:
    $ curl --metalink
    This will download foo.metalink and parse it and then download
    the URI described there.
    $ curl --metalink file://foo.metalink
    This will parse local file foo.metalink and then download the URI
    described there.
  3. Tatsuhiro Tsujikawa yangtse

    curl: Refactored metalink_checksum

    tatsuhiro-t authored yangtse committed
    When creating metalink_checksum from metalink_checksum_t, first
    check hex digest is valid for the given hash function.  We do
    this check in the order of digest_aliases so that first good
    match will be chosen (strongest hash function available).  As a
    result, the metalinkfile now only contains at most one
    metalink_checksum because other entries are just redundant.
Commits on Jun 8, 2012
  1. metalink: restore some includes

    Commit eeeba14 removed them and thus broke my Linux build
  2. yangtse

    metalink: build fixes and adjustments II

    yangtse authored
    Additionally, make hash checking ability mandatory in order to allow metalink
    support in curl.
    A command line option could be introduced to skip hash checking at runtime,
    but the ability to check hashes should always be built-in when providing
    metalink support.
Commits on Jun 7, 2012
  1. yangtse
Commits on May 26, 2012
  1. Tatsuhiro Tsujikawa

    Reduced #ifdef HAVE_METALINK

    tatsuhiro-t authored committed
  2. Tatsuhiro Tsujikawa
  3. Tatsuhiro Tsujikawa

    Minimize usage of structs from libmetalink

    tatsuhiro-t authored committed
  4. Tatsuhiro Tsujikawa

    Check checksum of downloaded file if checksum is available

    tatsuhiro-t authored committed
    Metalink file contains several hash types of checksums, such as
    md5, sha-1, sha-256, etc. To deal with these checksums, I created
    abstraction layer based on lib/curl_md5.h and
    lib/md5.c. Basically, they are almost the same but I changed the
    code so that it is not hash type dependent. Currently,
    GNUTLS(nettle or gcrypt) and OpenSSL functions are supported.
    Checksum checking is done by reopening download file.  If there
    is an I/O error, the current implementation just prints error
    message and does not try next resource.
    In this patch, the supported hash types are: md5, sha-1 and sha-256.
Something went wrong with that request. Please try again.