1. 07 Oct, 2022 1 commit
  2. 23 Mar, 2022 1 commit
  3. 09 Feb, 2022 1 commit
    • rand: introduce git_rand PRNG · 3c53796c
      Introduce `git_rand`, a PRNG based on xoroshiro256**, a fast,
      all-purpose pseudo-random number generator: https://prng.di.unimi.it
      
      The PRNG will be seeded by the system's entropy store when possible,
      falling back to current time and system data (pid, uptime, etc).
      Inspiration for this was taken from libressl, but since our PRNG is
      not used for cryptographic purposes (and indeed currently only generates
      a unique temp file name that is written in a protected directory),
      this should be more than sufficient.
      
      Our implementation of xoroshiro256** was taken almost strictly from
      the original author's sources, but was tested against PractRand to
      ensure that there were no foolish mistranslations:
      
      ```
      RNG_test using PractRand version 0.94
      RNG = RNG_stdin64, seed = unknown
      test set = core, folding = standard (64 bit)
      
      rng=RNG_stdin64, seed=unknown
      length= 256 megabytes (2^28 bytes), time= 2.9 seconds
        no anomalies in 210 test result(s)
      
      rng=RNG_stdin64, seed=unknown
      length= 512 megabytes (2^29 bytes), time= 6.2 seconds
        no anomalies in 226 test result(s)
      
      rng=RNG_stdin64, seed=unknown
      length= 1 gigabyte (2^30 bytes), time= 12.7 seconds
        no anomalies in 243 test result(s)
      
      rng=RNG_stdin64, seed=unknown
      length= 2 gigabytes (2^31 bytes), time= 25.4 seconds
        no anomalies in 261 test result(s)
      
      rng=RNG_stdin64, seed=unknown
      length= 4 gigabytes (2^32 bytes), time= 50.6 seconds
        no anomalies in 277 test result(s)
      
      rng=RNG_stdin64, seed=unknown
      length= 8 gigabytes (2^33 bytes), time= 104 seconds
        no anomalies in 294 test result(s)
      ```
      Edward Thomson committed
  4. 23 Jan, 2022 1 commit
  5. 24 Aug, 2021 1 commit
    • openssl: dynamically load libssl and symbols (optionally) · 0903cac1
      Provide an interface around OpenSSL to dynamically load the libraries
      and symbols, so that users can distribute a libgit2 library that is not
      linked directly against OpenSSL.  This enables users to target multiple
      distributions with a single binary.
      
      This mechanism is optional and disabled by default.  Configure cmake
      with -DUSE_HTTPS=OpenSSL-Dynamic to use it.
      Edward Thomson committed
  6. 15 Jun, 2019 1 commit
    • wildmatch: import wildmatch from git.git · a9f57629
      In commit 70a8fc999d (stop using fnmatch (either native or
      compat), 2014-02-15), upstream git has switched over all code
      from their internal fnmatch copy to its new wildmatch code. We
      haven't followed suit, and thus have developed some
      incompatibilities in how we match regular expressions.
      
      Import git's wildmatch from v2.22.0 and add a test suite based on
      their t3070-wildmatch.sh tests.
      Patrick Steinhardt committed
  7. 03 Mar, 2017 1 commit
  8. 25 Aug, 2015 1 commit
  9. 11 Feb, 2015 1 commit
  10. 04 Feb, 2014 1 commit
    • Replace pqueue with code from hashsig heap · 4075e060
      I accidentally wrote a separate priority queue implementation when
      I was working on file rename detection as part of the file hash
      signature calculation code.  To simplify licensing terms, I just
      adapted that to a general purpose priority queue and replace the
      old priority queue implementation that was borrowed from elsewhere.
      
      This also removes parts of the COPYING document that no longer
      apply to libgit2.
      Russell Belfer committed
  11. 16 Aug, 2013 1 commit
  12. 08 Jan, 2013 1 commit
  13. 17 Feb, 2012 1 commit
  14. 13 Feb, 2012 1 commit
  15. 18 Sep, 2011 1 commit
    • Cleanup legal data · bb742ede
      1. The license header is technically not valid if it doesn't have a
      copyright signature.
      
      2. The COPYING file has been updated with the different licenses used in
      the project.
      
      3. The full GPLv2 header in each file annoys me.
      Vicent Marti committed
  16. 01 Jul, 2011 1 commit
  17. 01 Nov, 2008 1 commit