- 03 Jul, 2017 1 commit
-
-
Next to including several files, our "common.h" header also declares various macros which are then used throughout the project. As such, we have to make sure to always include this file first in all implementation files. Otherwise, we might encounter problems or even silent behavioural differences due to macros or defines not being defined as they should be. So in fact, our header and implementation files should make sure to always include "common.h" first. This commit does so by establishing a common include pattern. Header files inside of "src" will now always include "common.h" as its first other file, separated by a newline from all the other includes to make it stand out as special. There are two cases for the implementation files. If they do have a matching header file, they will always include this one first, leading to "common.h" being transitively included as first file. If they do not have a matching header file, they instead include "common.h" as first file themselves. This fixes the outlined problems and will become our standard practice for header and source files inside of the "src/" from now on.
Patrick Steinhardt committed
-
- 29 Dec, 2016 1 commit
-
-
Error messages should be sentence fragments, and therefore: 1. Should not begin with a capital letter, 2. Should not conclude with punctuation, and 3. Should not end a sentence and begin a new one
Edward Thomson committed
-
- 19 Aug, 2015 1 commit
-
-
Carlos Martín Nieto committed
-
- 02 Jun, 2015 1 commit
-
-
Pierre-Olivier Latour committed
-
- 27 May, 2015 3 commits
-
-
Declare GIT_CREDTYPE_SSH_MEMORY to have consistent API independently of whether libgit2 was built with or without in-memory key passing support. Or rather, to have it at all since build-time definitions are not stored in headers.
Michał Górny committed -
To not modify the external api.
David Calavera committed -
David Calavera committed
-
- 13 Feb, 2015 2 commits
-
-
Make our overflow checking look more like gcc and clang's, so that we can substitute it out with the compiler instrinsics on platforms that support it. This means dropping the ability to pass `NULL` as an out parameter. As a result, the macros also get updated to reflect this as well.
Edward Thomson committed -
Introduce some helper macros to test integer overflow from arithmetic and set error message appropriately.
Edward Thomson committed
-
- 26 Jun, 2014 2 commits
-
-
Since each cred defines the username on their own, introduce git_cred__username to retrieve the username pointer from them.
Carlos Martín Nieto committed -
This exists as ssh needs to know about the username to use before it can query for the supported authentication methods.
Carlos Martín Nieto committed
-
- 18 Apr, 2014 4 commits
-
-
Jacques Germishuys committed
-
Jacques Germishuys committed
-
This allows for keyboard-interactive based SSH authentication
Jacques Germishuys committed -
The ssh-specific credentials allow the username to be missing. The idea being that the ssh transport will then use the username provided in the url, if it's available. There are two main issues with this. The credential callback already knows what username was provided by the url and needs to figure out whether it wants to ask the user for it or it can reuse it, so passing NULL as the username means the credential callback is suspicious. The username provided in the url is not in fact used by the transport. The only time it even considers it is for the user/pass credential, which asserts the existence of a username in its constructor. For the ssh-specific ones, it passes in the username stored in the credential, which is NULL. The libssh2 macro we use runs strlen() against this value (which is no different from what we would be doing ourselves), so we then crash. As the documentation doesn't suggest to leave out the username, assert the need for a username in the code, which removes this buggy behavior and removes implicit state. git_cred_has_username() becomes a blacklist of credential types that do not have a username. The only one at the moment is the 'default' one, which is meant to call up some Microsoft magic.
Carlos Martín Nieto committed
-
- 20 Nov, 2013 1 commit
-
-
Alessandro Ghedini committed
-
- 18 Nov, 2013 1 commit
-
-
Edward Thomson committed
-
- 23 Oct, 2013 1 commit
-
-
The names from libssh2 are somewhat obtuse for us. We can simplify the usual key/passphrase credential's name, as well as make clearer what the custom signature function is.
Carlos Martín Nieto committed
-
- 21 Oct, 2013 1 commit
-
-
Edward Thomson committed
-
- 12 Aug, 2013 1 commit
-
-
Key-based authentication also needs an username, so include it in each one. Also stop assuming a default username of "git" in the ssh transport which has no business making such a decision.
Carlos Martín Nieto committed
-
- 10 Jul, 2013 1 commit
-
-
The SSH error checking and reporting could still be further improved by using the libssh2 native methods to get error info, but at least this ensures that all error codes are checked and translated into libgit2 error messages.
Russell Belfer committed
-
- 09 Jul, 2013 4 commits
-
-
This makes all of the credential objects use the same pattern to clear the contents and call git__memzero when done. Much of this information is probably not sensitive, but it also seems better to just clear consistently.
Russell Belfer committed -
Russell Belfer committed
-
Much of the SSH credential creation API can be left enabled even on platforms with no SSH support. We really just have to give an error when you attempt to open the SSH connection.
Russell Belfer committed -
The SSH APIs will just return an error code and state that the library was built without SSH support if they are called in that case.
Russell Belfer committed
-
- 17 Jun, 2013 1 commit
-
-
yorah committed
-
- 15 May, 2013 2 commits
-
-
Brad Morgan committed
-
Brad Morgan committed
-
- 07 May, 2013 2 commits
-
-
Brad Morgan committed
-
Brad Morgan committed
-
- 04 May, 2013 1 commit
-
-
Brad Morgan committed
-
- 09 Jan, 2013 2 commits
-
-
Ben Straub committed
-
Ben Straub committed
-
- 08 Jan, 2013 1 commit
-
-
Edward Thomson committed
-
- 29 Nov, 2012 1 commit
-
-
Philip Kelley committed
-
- 27 Nov, 2012 1 commit
-
-
Russell Belfer committed
-
- 06 Nov, 2012 1 commit
-
-
Philip Kelley committed
-