summaryrefslogtreecommitdiff
Commit message (Collapse)AuthorAgeFilesLines
* crashdebugcmn/tmpCarlos Martín Nieto2017-11-211-0/+6
|
* Bump version to 0.25.1Edward Thomson2017-01-061-2/+2
|
* Merge branch '25_smartpktparse' into maint/v0.25Edward Thomson2017-01-062-16/+13
|\
| * smart_pkt: treat empty packet lines as errorPatrick Steinhardt2017-01-062-16/+5
| | | | | | | | | | | | | | | | | | | | | | | | | | The Git protocol does not specify what should happen in the case of an empty packet line (that is a packet line "0004"). We currently indicate success, but do not return a packet in the case where we hit an empty line. The smart protocol was not prepared to handle such packets in all cases, though, resulting in a `NULL` pointer dereference. Fix the issue by returning an error instead. As such kind of packets is not even specified by upstream, this is the right thing to do.
| * smart_pkt: verify packet length exceeds PKT_LEN_SIZEPatrick Steinhardt2017-01-061-0/+8
| | | | | | | | | | | | | | | | | | | | | | | | | | | | Each packet line in the Git protocol is prefixed by a four-byte length of how much data will follow, which we parse in `git_pkt_parse_line`. The transmitted length can either be equal to zero in case of a flush packet or has to be at least of length four, as it also includes the encoded length itself. Not checking this may result in a buffer overflow as we directly pass the length to functions which accept a `size_t` length as parameter. Fix the issue by verifying that non-flush packets have at least a length of `PKT_LEN_SIZE`.
* | Merge branch '25_certcheckcb' into maint/v0.25Edward Thomson2017-01-062-2/+30
|\ \ | |/ |/|
| * http: perform 'badssl' check also via certificate callbackCarlos Martín Nieto2017-01-061-0/+29
| | | | | | | | | | | | Make sure that the callbacks do also get a 'valid' value of zero when the certificate we're looking at is in valid and assert that within the test.
| * http: check certificate validity before clobbering the error variableEtienne Samson2017-01-061-2/+1
|/
* Merge pull request #3980 from tiennou/doc-fixesv0.25.0-rc2v0.25.0Carlos Martín Nieto2016-12-203-5/+17
|\ | | | | Documentation fixes
| * transaction: fix documentationEtienne Samson2016-11-011-0/+9
| |
| * remote: fix documentation and indentEtienne Samson2016-11-011-1/+3
| |
| * remote: unused function typedefEtienne Samson2016-11-011-2/+0
| |
| * describe: fix documentationEtienne Samson2016-11-011-2/+5
| |
* | Merge pull request #4041 from libgit2/cmn/bump-pretend-gitEdward Thomson2016-12-201-1/+1
|\ \ | | | | | | http: bump the pretend git version in the User-Agent
| * | http: bump the pretend git version in the User-Agentcmn/bump-pretend-gitCarlos Martín Nieto2016-12-201-1/+1
|/ / | | | | | | | | | | | | | | | | We want to keep the git UA in order for services to recognise that we're a Git client and not a browser. But in order to stop dumb HTTP some services have blocked UAs that claim to be pre-1.6.6 git. Thread these needles by using the "git/2.0" prefix which is still close enough to git's yet distinct enough that you can tell it's us.
* | Merge pull request #4034 from libgit2/cmn/sysdir-no-reguessEdward Thomson2016-12-202-1/+22
|\ \ | | | | | | sysdir: don't re-guess when using variable substitution
| * | sysdir: don't guess the paths again when $PATH is specifiedcmn/sysdir-no-reguessCarlos Martín Nieto2016-12-181-1/+1
| | | | | | | | | | | | We should replace it with whatever the user set, not start again.
| * | sysdir: add failing test for variable substitutionCarlos Martín Nieto2016-12-181-0/+21
| | | | | | | | | | | | | | | When given $PATH as part of a search path, we guess again instead of substituting what the user already set.
* | | Merge pull request #4032 from libgit2/cmn/https-cap-no-hardcodeEdward Thomson2016-12-202-0/+20
|\ \ \ | | | | | | | | Don't hard-code HTTPS cap & clarify the meanings of the features enum
| * | | settings: clarify what each value meanscmn/https-cap-no-hardcodeCarlos Martín Nieto2016-12-171-0/+18
| | | | | | | | | | | | | | | | Most importantly, clarify what it means for HTTPS and SSH to be supported.
| * | | settings: don't hard-code HTTPS capabilityCarlos Martín Nieto2016-12-171-0/+2
| |/ / | | | | | | | | | | | | | | | | | | | | | | | | | | | This partially reverts bdec62dce1c17465b7330100ea2f71e63fc411dd which activates the transport code-paths which allow you to use a custom TLS implementation without having to have one at build-time. However the capabilities describe how libgit2 was built, not what it could potentially support, bring back the ifdefs so we only say we support HTTPS if libgit2 was itself built with a TLS implementation.
* | | Merge pull request #4037 from libgit2/cmn/goalsCarlos Martín Nieto2016-12-201-3/+11
|\ \ \ | | | | | | | | README: be more explicit in the goals and scope
| * | | README: be more explicit in the goals and scopecmn/goalsCarlos Martín Nieto2016-12-191-3/+11
| | | | | | | | | | | | | | | | | | | | Make it clearer from the get-go that we do not aim to implement user-facing commands from the git tool.
* | | | Merge pull request #4038 from lucasderraugh/patch-1Carlos Martín Nieto2016-12-191-1/+1
|\ \ \ \ | | | | | | | | | | Gift deprecated in favor of SwiftGit2
| * | | | Gift deprecated in favor of SwiftGit2Lucas Derraugh2016-12-191-1/+1
| | | | |
* | | | | Merge pull request #4026 from libgit2/cmn/refdb-fs-errorsCarlos Martín Nieto2016-12-191-2/+2
|\ \ \ \ \ | | | | | | | | | | | | refdb: bubble up recursive rm when locking a ref
| * | | | | refdb: bubble up recursive rm when locking a refcmn/refdb-fs-errorsCarlos Martín Nieto2016-12-161-2/+2
| | |_|/ / | |/| | | | | | | | | | | | | | | | | | Failure to bubble up this error means some locking errors do not get reported as such on Windows.
* | | | | Merge pull request #4027 from pks-t/pks/pack-deref-cache-on-errorCarlos Martín Nieto2016-12-191-1/+4
|\ \ \ \ \ | |_|/ / / |/| | | | pack: dereference cached pack entry on error
| * | | | pack: dereference cached pack entry on errorPatrick Steinhardt2016-12-121-1/+4
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | When trying to uncompress deltas in a packfile's delta chain, we try to add object bases to the packfile cache, subsequently decrementing its reference count if it has been added successfully. This may lead to a mismatched reference count in the case where we exit the loop early due to an encountered error. Fix the issue by decrementing the reference count in error cleanup.
* | | | | Merge pull request #4033 from andhe/masterCarlos Martín Nieto2016-12-191-1/+1
|\ \ \ \ \ | |_|_|/ / |/| | | | Fix off-by-one problems in git_signature__parse
| * | | | Fix off-by-one problems in git_signature__parseAndreas Henriksson2016-12-171-1/+1
|/ / / / | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Etc/GMT-14 aka UTC+14:00 is a thing.... https://en.wikipedia.org/wiki/UTC%2B14:00 Also allow offsets on the last minute (59). Addresses: https://bugs.debian.org/841532 Fixes: #3970
* | | | Merge pull request #4031 from libgit2/cmn/plug-test-leakCarlos Martín Nieto2016-12-171-0/+1
|\ \ \ \ | |_|/ / |/| | | rebase: plug a leak in the tests
| * | | rebase: plug a leak in the testscmn/plug-test-leakCarlos Martín Nieto2016-12-171-0/+1
|/ / /
* | | Merge pull request #4029 from libgit2/cmn/windows-no-concurrent-compressv0.24.4Edward Thomson2016-12-151-2/+8
|\ \ \ | | | | | | | | refdb: disable concurrent compress in the threading tests on Windows
| * | | refdb: disable concurrent compress in the threading tests on Windowscmn/windows-no-concurrent-compressCarlos Martín Nieto2016-12-121-2/+8
| |/ / | | | | | | | | | | | | | | | | | | | | | | | | This is far from an ideal situation, but this causes issues on Windows which make it harder to develop anything, as these tests hit issues which relate specifically to the Windows filesystem like permission errors for files we should be able to access. There is an issue likely related to the ordering of the repack, but there's enough noise that it does not currently help us to run this aspect of the test in CI.
* | | Merge pull request #4018 from pks-t/pks/various-fixesCarlos Martín Nieto2016-12-128-12/+13
|\ \ \ | |/ / |/| | Various fixes
| * | Fix potential use of uninitialized valuesPatrick Steinhardt2016-12-123-3/+5
| | |
| * | graph: flag fields should be declared as unsignedPatrick Steinhardt2016-12-121-1/+1
| | |
| * | transports: smart: do not redeclare loop countersPatrick Steinhardt2016-12-121-4/+4
| | |
| * | path: remove unused local variablePatrick Steinhardt2016-12-121-1/+0
| | |
| * | revwalk: do not re-declare `commit` variablePatrick Steinhardt2016-12-121-1/+1
| | |
| * | odb_mempack: mark zero-length array as GIT_FLEX_ARRAYPatrick Steinhardt2016-12-121-1/+1
| | |
| * | clar: mark `cl_git_thread_check()` as inlinePatrick Steinhardt2016-12-121-1/+1
|/ / | | | | | | | | | | | | | | | | The function `cl_git_thread_check()` is defined as static. As the function is defined in a header file which is included by our tests, this can result in warnings for every test file where `cl_git_thread_check` is never used. Fix the issue by marking it as inline instead.
* | Merge pull request #4020 from novalis/rebase-detachedEdward Thomson2016-12-072-1/+54
|\ \ | | | | | | git_rebase_init: correctly handle detached HEAD
| * | git_rebase_init: correctly handle detached HEADDavid Turner2016-12-012-1/+54
| | | | | | | | | | | | | | | | | | | | | | | | git_rebase_finish relies on head_detached being set, but rebase_init_merge was only setting it when branch->ref_name was unset. But branch->ref_name would be set to "HEAD" in the case of detached HEAD being either implicitly (NULL) or explicitly passed to git_rebase_init.
* | | Merge pull request #4014 from bokic/patch-1Edward Thomson2016-12-071-1/+1
|\ \ \ | | | | | | | | Properly pass `wchar *` type to giterr_set
| * | | Properly pass `wchar *` type to giterr_setBoris Barbulovski2016-12-061-1/+1
| | | |
| * | | Properly pass `wchar *` type to giterr_setBoris Barbulovski2016-11-201-1/+1
| |/ /
* | | Merge pull request #4022 from josharian/patch-1Edward Thomson2016-12-041-1/+1
|\ \ \ | |/ / |/| | remote: fix typo in git_fetch_init_options docs
| * | remote: fix typo in git_fetch_init_options docsJosh Bleecher Snyder2016-12-021-1/+1
|/ /