|
2ab26a98
|
2020-04-05T22:17:41
|
|
transport: use GIT_ASSERT
|
|
f673e232
|
2018-12-27T13:47:34
|
|
git_error: use new names in internal APIs and usage
Move to the `git_error` name in the internal API for error-related
functions.
|
|
ecf4f33a
|
2018-02-08T11:14:48
|
|
Convert usage of `git_buf_free` to new `git_buf_dispose`
|
|
0c7f49dd
|
2017-06-30T13:39:01
|
|
Make sure to always include "common.h" first
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.
|
|
909d5494
|
2016-12-29T12:25:15
|
|
giterr_set: consistent error messages
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
|
|
0d84de02
|
2016-08-04T13:20:49
|
|
Merge pull request #3869 from richardipsum/fix-outdated-comment
Fix outdated comment
|
|
8b2ad593
|
2016-07-23T11:55:43
|
|
Make comment conform to style guide
Style guide says // style comments should be avoided.
|
|
877282ea
|
2016-07-23T11:47:59
|
|
Fix outdated comment
SSH transport seems to be supported now.
|
|
bdec62dc
|
2016-07-06T13:06:25
|
|
remove conditions that prevent use of custom TLS stream
|
|
813d73f6
|
2015-12-28T11:37:39
|
|
Tabs
|
|
ed21fd74
|
2015-12-22T10:38:31
|
|
Handle git+ssh:// and ssh+git:// protocols support
|
|
24e53d2f
|
2015-03-19T09:55:20
|
|
Rename GIT_SSL to GIT_OPENSSL
This is what it's meant all along, but now we actually have multiple
implementations, it's clearer to use the name of the library.
|
|
6bb54cbf
|
2014-11-02T13:23:32
|
|
Add a SecureTransport TLS channel
As an alternative to OpenSSL when we're on OS X. This one can actually
take advantage of stacking the streams.
|
|
142e5379
|
2015-03-17T12:49:33
|
|
Add a custom param to git_smart_subtransport_definition
The smart transport has already take the payload param. For the
sub transport a payload param is useful for the implementer.
|
|
0862f617
|
2014-10-24T12:19:13
|
|
remote: delete git_remote_supported_url()
This function does not in fact tell us anything, as almost anything with
a colon in it is a valid rsync-style SSH path; it can not tell us that
we do not support ftp or afp or similar as those are still valid SSH
paths and we do support that.
|
|
ba67c075
|
2014-08-31T17:16:40
|
|
remote: get rid of git_remote_valid_url()
It does the same as git_remote_supported_url() but has a name which
implies we'd check the URL for correctness while we're simply looking at
the scheme and looking it up in our lists.
While here, fix up the tests so we check all the combination of what's
supported.
|
|
bd3854a0
|
2014-08-31T17:12:45
|
|
transport: return ENOTFOUND for HTTPS and SSH when they're not supported
The previous commit makes it harder to figure out if the library was
built with support for a particular transport. Roll back some of the
changes and remove ssh:// and https:// from the list if we're being
built without support for them.
|
|
dbc77850
|
2014-08-31T16:48:41
|
|
transport: distinguish between unknown and unsupported transports
Even when built without a SSH support, we know about this transport. It
is implemented, but the current code makes us return an error message
saying it's not.
This is a leftover from the initial implementation of the transports
when there were in fact transports we knew about but were not
implemented.
Instead, let the SSH transport itself say it cannot run, the same as we
do for HTTPS.
|
|
34e510ce
|
2014-07-30T01:41:43
|
|
Allow to override default ssh transport_cb
W/o this patch it is not possible to have a third party ssh transport_cb if GIT_SSH is disabled or a third party transport_cb which has a higher priority than the default one.
Signed-off-by: Sven Strickroth <email@cs-ware.de>
|
|
c180c065
|
2014-07-09T17:58:39
|
|
Custom transport: minor cleanups
* Move the transport registration mechanisms into a new header under
'sys/' because this is advanced stuff.
* Remove the 'priority' argument from the registration as it adds
unnecessary complexity. (Since transports cannot decline to operate,
only the highest priority transport is ever executed.) Users who
require per-priority transports can implement that in their custom
transport themselves.
* Simplify registration further by taking a scheme (eg "http") instead
of a prefix (eg "http://").
|
|
1697cd6f
|
2014-06-25T13:20:27
|
|
Improvements to git_transport extensibility
git_remote_set_transport now takes a transport factory rather than a transport
git_clone_options now allows the caller to specify a remote creation callback
|
|
bc91347b
|
2014-04-30T11:16:31
|
|
Fix remaining init_options inconsistencies
There were a couple of "init_opts()" functions a few more cases
of structure initialization that I somehow missed.
|
|
b9f81997
|
2014-03-05T21:49:23
|
|
Added function-based initializers for every options struct.
The basic structure of each function is courtesy of arrbee.
|
|
ed5b77b0
|
2013-12-05T11:13:58
|
|
Fixed compilation on Windows when using libssh2.
|
|
83786956
|
2013-01-04T14:39:05
|
|
Add git_transport_register, git_transport_unregister
|
|
a3c062db
|
2013-07-09T09:58:33
|
|
Make SSH APIs present even without SSH support
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.
|
|
574b86b7
|
2013-05-07T13:53:23
|
|
Fixed compilation issues when libssh2 is missing
|
|
7261d983
|
2013-05-05T13:36:11
|
|
Added support for ssh:// urls
|
|
d04c3840
|
2013-05-03T14:53:23
|
|
Adding ssh transport logic
|
|
297758dc
|
2013-05-03T10:37:33
|
|
Added ssh transport file
|
|
359fc2d2
|
2013-01-08T17:07:25
|
|
update copyrights
|
|
f0a2def5
|
2012-12-13T18:08:45
|
|
Fix comment so it doesn't go over 100 chars
|
|
cb2ace69
|
2012-12-13T12:51:23
|
|
Transport resolution on Win32 should handle absolute local paths
|
|
613d5eb9
|
2012-11-28T11:42:37
|
|
Push! By schu, phkelley, and congyiwu, et al
|
|
41fb1ca0
|
2012-10-29T13:41:14
|
|
Reorganize transport architecture (squashed 3)
|
|
66024c7c
|
2012-05-01T00:05:25
|
|
http: add https support when GnuTLS is available
If it's not available, an error saying so will be returned when trying
to use a https:// URL.
This also unifies a lot of the network code to use git_transport in
many places instead of an socket descriptor.
|
|
e172cf08
|
2012-05-18T01:21:06
|
|
errors: Rename the generic return codes
|
|
3fbcac89
|
2012-05-02T19:56:38
|
|
Remove old and unused error codes
|
|
40879fac
|
2012-05-02T15:59:02
|
|
Merge branch 'new-error-handling' into development
Conflicts:
.travis.yml
include/git2/diff.h
src/config_file.c
src/diff.c
src/diff_output.c
src/mwindow.c
src/path.c
tests-clar/clar_helpers.c
tests-clar/object/tree/frompath.c
tests/t00-core.c
tests/t03-objwrite.c
tests/t08-tag.c
tests/t10-refs.c
tests/t12-repo.c
tests/t18-status.c
tests/test_helpers.c
tests/test_main.c
|
|
4376f7f6
|
2012-03-06T08:12:35
|
|
error-handling: remote, transport
|
|
864ac49e
|
2012-03-05T19:32:41
|
|
Merge branch 'ssh-urls' into development
|
|
4f8efc97
|
2012-03-05T19:32:21
|
|
Make git_remote_supported_url() public and shorten error string
|
|
854eccbb
|
2012-02-29T12:04:59
|
|
Clean up GIT_UNUSED macros on all platforms
It turns out that commit 31e9cfc4cbcaf1b38cdd3dbe3282a8f57e5366a5
did not fix the GIT_USUSED behavior on all platforms. This commit
walks through and really cleans things up more thoroughly, getting
rid of the unnecessary stuff.
To remove the use of some GIT_UNUSED, I ended up adding a couple
of new iterators for hashtables that allow you to iterator just
over keys or just over values.
In making this change, I found a bug in the clar tests (where we
were doing *count++ but meant to do (*count)++ to increment the
value). I fixed that but then found the test failing because it
was not really using an empty repo. So, I took some of the code
that I wrote for iterator testing and moved it to clar_helpers.c,
then made use of that to make it easier to open fixtures on a
per test basis even within a single test file.
|
|
7a544966
|
2012-03-01T08:31:50
|
|
introduced new function: git_remote_supported_url() <-- returns true if this version of libgit2 supports the correct transport mechanism for a URL or path
|
|
253d6df5
|
2012-03-01T08:30:38
|
|
fix up previous SSH path parsing commit based on @carlosmn feedback
|
|
58448910
|
2012-02-29T17:37:18
|
|
implement support for username@host:path URLs in transport_find_fn()
|
|
5e0de328
|
2012-02-13T17:10:24
|
|
Update Copyright header
Signed-off-by: schu <schu-github@schulog.org>
|
|
86360ffd
|
2012-01-17T14:33:26
|
|
transport: prevent the transport determination mechanism from segfaulting when being passed an url starting with an unknown prefix
|
|
d88d4311
|
2011-11-28T08:40:40
|
|
remote: Cleanup the remotes code
- Hide the remaining transports code
- Drop `git_headarray`, switch to using a callback to list refs. Makes
the code cleaner.
|
|
2869f404
|
2011-11-22T15:48:37
|
|
transport: Add `git_transport_valid_url`
|
|
8114ee4c
|
2011-09-22T10:17:43
|
|
Merge pull request #405 from carlosmn/http-ls
Implement ls-remote over HTTP
|
|
bb742ede
|
2011-09-19T01:54:32
|
|
Cleanup legal data
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.
|
|
3d975abc
|
2011-09-02T14:20:43
|
|
Add HTTP transport skeleton
Signed-off-by: Carlos Martín Nieto <carlos@cmartin.tk>
|
|
b5a8aa94
|
2011-08-22T15:18:19
|
|
Don't hide the transport details
Transports shouldn't get used outside of the library, so don't expose
accessor functions.
Signed-off-by: Carlos Martín Nieto <carlos@cmartin.tk>
|
|
22f65b9e
|
2011-08-10T20:49:43
|
|
Move negotiation to the transport
There are many ways how a transport might negotiate with the server,
so instead of making it fit into the smart protocol model, let the
transport do its thing. For now, the git protocol limits itself to
send only 160 "have" lines so we don't flood the server.
Signed-off-by: Carlos Martín Nieto <carlos@cmartin.tk>
|
|
9cf0f287
|
2011-08-04T17:50:50
|
|
Tell the user where the downloaded packfile is stored
Signed-off-by: Carlos Martín Nieto <carlos@cmartin.tk>
|
|
da290220
|
2011-07-31T02:40:43
|
|
Download pack
Signed-off-by: Carlos Martín Nieto <carlos@cmartin.tk>
|
|
7e1a94db
|
2011-07-31T01:16:47
|
|
Move have sending
Signed-off-by: Carlos Martín Nieto <carlos@cmartin.tk>
|
|
b4c90630
|
2011-07-30T22:29:00
|
|
Implement sending haves
Signed-off-by: Carlos Martín Nieto <carlos@cmartin.tk>
|
|
0e20ba60
|
2011-07-30T18:56:20
|
|
Add a generic send_wants
Signed-off-by: Carlos Martín Nieto <carlos@cmartin.tk>
|
|
0ac2726f
|
2011-06-27T20:23:47
|
|
Slim down git_transport
Remove the unused repo and private pointers and make the direction a
flag, as it can only have two states. Change the connect signature to
use an int instead of git_net_direction and remove that enum.
Signed-off-by: Carlos Martín Nieto <carlos@cmartin.tk>
|
|
ce90a407
|
2011-06-22T15:34:37
|
|
Remove the repo param from git_transport_new
Signed-off-by: Carlos Martín Nieto <carlos@cmartin.tk>
|
|
4e913309
|
2011-06-17T16:38:21
|
|
Move transports to an inheritance model
Rather than an 'private' pointer, make the private structures inherit
from the generic git_transport struct. This way, we only have to worry
about one memory allocation instead of two. The structures are so
simple that this may even make the code use less memory overall.
Signed-off-by: Carlos Martín Nieto <carlos@cmartin.tk>
|
|
ecb6ca0e
|
2011-06-08T13:09:47
|
|
Implement the git TCP transport up to ls-remote
Signed-off-by: Carlos Martín Nieto <carlos@cmartin.tk>
|
|
d6258deb
|
2011-06-25T15:10:09
|
|
Implement ls-remote on local drive
Signed-off-by: Carlos Martín Nieto <carlos@cmartin.tk>
|
|
8f866dae
|
2011-05-16T22:07:08
|
|
Lay down the fundations for the network code
Signed-off-by: Carlos Martín Nieto <carlos@cmartin.tk>
|