| Commit message (Collapse) | Author | Age | Files | Lines |
| |
|
|
|
|
|
| |
Add support for SSPI on Windows, which offers NTLM and Negotiate
authentication.
|
|
|
|
|
|
|
|
| |
Add functions to use convert a string with length, instead of assuming
NUL termination.
In addition, move the utf8 to 16 conversion routines into the `git_utf8`
namespace instead of using namespaceless `git__` prefixed names.
|
|
|
|
|
|
|
|
|
|
| |
Name the GSSAPI and ntlmclient authentication providers as such. Today
they're named after the authentication mechanism ("Negotiate", "NTLM")
instead of their implementation.
If we have competing implementations for the same mechanism (eg, a
future Windows SSPI-based provider for Negotiate and NTLM) then this
will get confusing.
|
|
|
|
|
|
|
|
|
|
| |
Provide a stream interface for Schannel - the native crypto APIs - on
Windows. This allows Windows to use the same HTTP transport that all the
other platforms use, with its own native crypto.
Ultimately this allows us to deprecate WinHTTP and we need not add
support for our socket changes in two places (our HTTP stack and the
WinHTTP stack).
|
|
|
|
|
|
| |
It is a bit too hidden why we want 64 bits when we're assigning to a 32-bit
integer later on to store the number of objects, so go back to uint32_t and cast
to uint64_t during the size calculation.
|
|
|
|
|
| |
Keeping it as a 32-bit value means the min size calculation overflows or gets
truncated which can lead to issues with large packfiles.
|
|
|
|
|
| |
Including the `include/git2` build path is a seemingly unnecessary
oversight to include the generated `experimental.h` file.
|
|
|
|
|
| |
These declaration poses problems on some embedded or retro Linux systems
that deliberately disable support for wchar_t from their libc.
|
|
|
|
|
|
|
| |
When the contents of an entire new directory is ignored, and `FORCE` is
specified to `git_index_add_all`, ensure that we expand the entire file
list. By default, diff will coalesce a fully ignored folder into a
single diff entry; expand it.
|
|\
| |
| | |
odb: restore `git_odb_open`
|
| |
| |
| |
| |
| | |
`git_odb_open` was erroneously removed during a refactoring; add it
back.
|
|/
|
| |
Found this randomly while debugging #6517
|
|\ |
|
| |
| |
| |
| |
| | |
The library name is correctly libgit2 (not git2) or libgit2-experimental
depending on configuration.
|
|\ \ |
|
| |/
| |
| |
| |
| | |
`git_odb_backend_loose` was erroneously removed during a refactoring;
add it back.
|
|\ \
| |/
|/| |
Revert #6503
|
| |
| |
| |
| | |
This reverts commit f68b40c0af9c7c5c2c8740fe4a8fbcba367e0087.
|
|/
|
|
|
| |
In b1e83cca1bbc255627950b4e8d4fdb1174bf7a12 we erroneously stopped
setting the old ID to zero; correct that.
|
|
|
|
| |
Co-authored-by: Stefan Karpinski <stefan@karpinski.org>
|
| |
|
|
|
|
|
|
| |
`git_odb_stream` should have an `oid_type` to disambiguate; that's not
necessary on non-experimental SHA256 builds. Avoid unnecessary ABI
breakage for consumers and hide it behind an ifdef for now.
|
|
|
|
|
|
|
|
|
| |
Fixes https://github.com/libgit2/libgit2/issues/3866
Has been applied in all Julia builds since 2017:
https://github.com/JuliaLang/julia/pull/17459
Authored-by: Keno Fischer <kfischer@college.harvard.edu>
|
|\
| |
| | |
Handle Win32 shares
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
Git for Windows does some truly bizarre things with
paths that start with a forward slash; and expects you
to escape that with `%(prefix)`. This syntax generally
means to add the prefix that Git was installed to -- eg
`/usr/local` -- unless it's an absolute path, in which
case the leading `%(prefix)/` is just removed. And Git
for Windows expects you to use this syntax for absolute
Unix-style paths (in "Git Bash" or Windows Subsystem for
Linux).
Worse, the behavior used to be that a leading `/` was
not absolute. It would indicate that Git for Windows
should add the prefix. So `//` is required for absolute
Unix-style paths. Yes, this is truly horrifying.
Emulate that behavior, I guess, but only for absolute
paths. We won't deal with the Git install prefix. Also,
give WSL users an escape hatch where they don't have to
think about this and can use the literal path that the
filesystem APIs provide (`//wsl.localhost/...`).
|
| |
| |
| |
| |
| |
| |
| | |
With some paths on Win32, we cannot identify the owner because it's on a
file share (WSL2 or UNC). In that case, don't fail, but identify that
the current user does not own the path. This matches Git for Windows
behavior.
|
| | |
|
|/ |
|
| |
|
|\
| |
| | |
stash: partial stash specific files
|
| | |
|
| | |
|
| | |
|
| | |
|
| |
| |
| |
| |
| |
| | |
`git_strarray_copy` is deprecated (and has been included in
`deprecated.h` for some time). It should not have remained in
the public `strarray.h`. Remove it.
|
| | |
|
| | |
|
|\ \
| | |
| | | |
SHA256: more SHA256 support
|
| | | |
|
| | | |
|
| | | |
|
| | | |
|
| | | |
|
| | | |
|
| | | |
|
| | |
| | |
| | |
| | |
| | | |
This is much of the plumbing for the object database to support SHA256,
and for objects to be able to parse SHA256 versions of themselves.
|
| | |
| | |
| | |
| | | |
Teach the packfile machinery to cope with SHA256.
|
| | |
| | |
| | |
| | |
| | | |
Ensure that we maintain the `core.repositoryFormatVersion` value instead
of always overwriting it with the default.
|
| | |
| | |
| | |
| | |
| | | |
Provide an internal function to set the repository's `objectformat`,
both in the internal object and in the configuration.
|