- 19 Dec, 2014 3 commits
-
-
Linquize committed
-
We need to know what wchar_t and MAX_PATH are. Including common.h takes care of that for us.
Carlos Martín Nieto committed -
Edward Thomson committed
-
- 18 Dec, 2014 4 commits
-
-
Vicent Marti committed
-
Edward Thomson committed
-
Carlos Martín Nieto committed
-
We need these directories to exist so cl_git_mkfile() can create the files we ask it to.
Carlos Martín Nieto committed
-
- 17 Dec, 2014 2 commits
-
-
Path validation may be influenced by `core.protectHFS` and `core.protectNTFS` configuration settings, thus treebuilders can take a repository to influence their configuration.
Edward Thomson committed -
Validate HFS ignored char ".git" paths when `core.protectHFS` is specified. Validate NTFS invalid ".git" paths when `core.protectNTFS` is specified.
Edward Thomson committed
-
- 16 Dec, 2014 7 commits
-
-
Vicent Marti committed
-
HFS filesystems ignore some characters like U+200C. When these characters are included in a path, they will be ignored for the purposes of comparison with other paths. Thus, if you have a ".git" folder, a folder of ".git<U+200C>" will also match. Protect our ".git" folder by ensuring that ".git<U+200C>" and friends do not match it.
Edward Thomson committed -
Validate loose reference names on Win32.
Edward Thomson committed -
Disallow: 1. paths with trailing dot 2. paths with trailing space 3. paths with trailing colon 4. paths that are 8.3 short names of .git folders ("GIT~1") 5. paths that are reserved path names (COM1, LPT1, etc). 6. paths with reserved DOS characters (colons, asterisks, etc) These paths would (without \\?\ syntax) be elided to other paths - for example, ".git." would be written as ".git". As a result, writing these paths literally (using \\?\ syntax) makes them hard to operate with from the shell, Windows Explorer or other tools. Disallow these.
Edward Thomson committed -
Vicent Marti committed
-
Vicent Marti committed
-
When turning UTF-8 paths into UCS-2 paths for Windows, always use the \\?\-prefixed paths. Because this bypasses the system's path canonicalization, handle the canonicalization functions ourselves. We must: 1. always use a backslash as a directory separator 2. only use a single backslash between directories 3. not rely on the system to translate "." and ".." in paths 4. remove trailing backslashes, except at the drive root (C:\)
Edward Thomson committed
-
- 10 Dec, 2014 19 commits
-
-
Edward Thomson committed
-
Edward Thomson committed
-
Fold `git_push_unpack_ok()` into `git_push_finish()`
Edward Thomson committed -
This should make it clearer what the return value implies.
Carlos Martín Nieto committed -
The push cannot be successful if we sent a bad packfile. We should return an error in that case instead of storing it elsewhere.
Carlos Martín Nieto committed -
Introduce stackable IO streams
Edward Thomson committed -
Carlos Martín Nieto committed
-
Carlos Martín Nieto committed
-
Minor Readme improvments
Carlos Martín Nieto committed -
nulltoken committed
-
nulltoken committed
-
nulltoken committed
-
Most of the network-facing facilities have been copied to the socket and openssl streams. No code now uses these functions directly anymore, so we can now remove them.
Carlos Martín Nieto committed -
Having an ssh stream would require extra work for stream capabilities we don't need anywhere else (oob auth and command execution) so for now let's move away from the gitno connection to use socket_stream. We can introduce an ssh stream interface if and as we need it.
Carlos Martín Nieto committed -
Carlos Martín Nieto committed
-
Carlos Martín Nieto committed
-
Win32 leaks
Carlos Martín Nieto committed -
This unfortunately isn't as stackable as could be possible, as it hard-codes the socket stream. This is because the method of using a custom openssl BIO is not clear, and we do not need this for now. We can still bring this in if and as we need it.
Carlos Martín Nieto committed -
We currently have gitno for talking over TCP, but this needs to know about both plaintext and OpenSSL connections and the code has gotten somewhat messy with ifdefs determining which version of the function should be called. In order to clean this up and abstract away the details of sending over the different types of streams, we can instead use an interface and stack stream implementations. We may not be able to use the stackability with all streams, but we are definitely be able to use the abstraction which is currently spread between different bits of gitno.
Carlos Martín Nieto committed
-
- 09 Dec, 2014 5 commits
-
-
Edward Thomson committed
-
Edward Thomson committed
-
Edward Thomson committed
-
Edward Thomson committed
-
Update clar to e3985dd
Edward Thomson committed
-