<feed xmlns='http://www.w3.org/2005/Atom'>
<title>delta/libgit2.git/src, branch hf/master_patch</title>
<subtitle>github.com: libgit2/libgit2.git
</subtitle>
<link rel='alternate' type='text/html' href='http://91.123.203.49/cgit/delta/libgit2.git/'/>
<entry>
<title>treebuilder: take a repository for path validation</title>
<updated>2014-12-17T18:05:27+00:00</updated>
<author>
<name>Edward Thomson</name>
<email>ethomson@microsoft.com</email>
</author>
<published>2014-12-17T01:24:04+00:00</published>
<link rel='alternate' type='text/html' href='http://91.123.203.49/cgit/delta/libgit2.git/commit/?id=dce7b1a4e75551804a33591744d40d0582c57cfb'/>
<id>dce7b1a4e75551804a33591744d40d0582c57cfb</id>
<content type='text'>
Path validation may be influenced by `core.protectHFS` and
`core.protectNTFS` configuration settings, thus treebuilders
can take a repository to influence their configuration.
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
Path validation may be influenced by `core.protectHFS` and
`core.protectNTFS` configuration settings, thus treebuilders
can take a repository to influence their configuration.
</pre>
</div>
</content>
</entry>
<entry>
<title>Introduce core.protectHFS and core.protectNTFS</title>
<updated>2014-12-17T17:52:07+00:00</updated>
<author>
<name>Edward Thomson</name>
<email>ethomson@microsoft.com</email>
</author>
<published>2014-12-17T00:53:55+00:00</published>
<link rel='alternate' type='text/html' href='http://91.123.203.49/cgit/delta/libgit2.git/commit/?id=ec74b40ceef3dc3892c7d84bb4f5d99bab504ba4'/>
<id>ec74b40ceef3dc3892c7d84bb4f5d99bab504ba4</id>
<content type='text'>
Validate HFS ignored char ".git" paths when `core.protectHFS` is
specified.  Validate NTFS invalid ".git" paths when `core.protectNTFS`
is specified.
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
Validate HFS ignored char ".git" paths when `core.protectHFS` is
specified.  Validate NTFS invalid ".git" paths when `core.protectNTFS`
is specified.
</pre>
</div>
</content>
</entry>
<entry>
<title>path: Use UTF8 iteration for HFS chars</title>
<updated>2014-12-16T16:24:18+00:00</updated>
<author>
<name>Vicent Marti</name>
<email>tanoku@gmail.com</email>
</author>
<published>2014-12-16T12:03:02+00:00</published>
<link rel='alternate' type='text/html' href='http://91.123.203.49/cgit/delta/libgit2.git/commit/?id=8e35527de25ac156f3600e2ce49b0c3483c258c4'/>
<id>8e35527de25ac156f3600e2ce49b0c3483c258c4</id>
<content type='text'>
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
</pre>
</div>
</content>
</entry>
<entry>
<title>checkout: disallow bad paths on HFS</title>
<updated>2014-12-16T16:08:59+00:00</updated>
<author>
<name>Edward Thomson</name>
<email>ethomson@microsoft.com</email>
</author>
<published>2014-12-11T00:12:16+00:00</published>
<link rel='alternate' type='text/html' href='http://91.123.203.49/cgit/delta/libgit2.git/commit/?id=11d67b754d47967642570f796601e8850f001d73'/>
<id>11d67b754d47967642570f796601e8850f001d73</id>
<content type='text'>
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&lt;U+200C&gt;" will also match.  Protect our
".git" folder by ensuring that ".git&lt;U+200C&gt;" and friends do not match it.
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
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&lt;U+200C&gt;" will also match.  Protect our
".git" folder by ensuring that ".git&lt;U+200C&gt;" and friends do not match it.
</pre>
</div>
</content>
</entry>
<entry>
<title>reference_create: validate loose names</title>
<updated>2014-12-16T16:08:56+00:00</updated>
<author>
<name>Edward Thomson</name>
<email>ethomson@microsoft.com</email>
</author>
<published>2014-12-03T03:20:42+00:00</published>
<link rel='alternate' type='text/html' href='http://91.123.203.49/cgit/delta/libgit2.git/commit/?id=ee5da720e58f8870e5b6b272ef7514c2a717544a'/>
<id>ee5da720e58f8870e5b6b272ef7514c2a717544a</id>
<content type='text'>
Validate loose reference names on Win32.
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
Validate loose reference names on Win32.
</pre>
</div>
</content>
</entry>
<entry>
<title>checkout: disallow bad paths on win32</title>
<updated>2014-12-16T16:08:53+00:00</updated>
<author>
<name>Edward Thomson</name>
<email>ethomson@microsoft.com</email>
</author>
<published>2014-11-25T23:13:00+00:00</published>
<link rel='alternate' type='text/html' href='http://91.123.203.49/cgit/delta/libgit2.git/commit/?id=a64119e3963fcd358ba914c9e1a81a890666d15a'/>
<id>a64119e3963fcd358ba914c9e1a81a890666d15a</id>
<content type='text'>
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.
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
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.
</pre>
</div>
</content>
</entry>
<entry>
<title>index: Check for valid paths before creating an index entry</title>
<updated>2014-12-16T16:08:49+00:00</updated>
<author>
<name>Vicent Marti</name>
<email>tanoku@gmail.com</email>
</author>
<published>2014-11-24T23:58:03+00:00</published>
<link rel='alternate' type='text/html' href='http://91.123.203.49/cgit/delta/libgit2.git/commit/?id=0d388adc86946f3c8cddc2493b470d47a653c4a5'/>
<id>0d388adc86946f3c8cddc2493b470d47a653c4a5</id>
<content type='text'>
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
</pre>
</div>
</content>
</entry>
<entry>
<title>tree: Check for `.git` with case insensitivy</title>
<updated>2014-12-16T16:08:46+00:00</updated>
<author>
<name>Vicent Marti</name>
<email>tanoku@gmail.com</email>
</author>
<published>2014-11-24T23:14:52+00:00</published>
<link rel='alternate' type='text/html' href='http://91.123.203.49/cgit/delta/libgit2.git/commit/?id=62155257d2d30d8f8d7108539df0681dce27ff61'/>
<id>62155257d2d30d8f8d7108539df0681dce27ff61</id>
<content type='text'>
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
</pre>
</div>
</content>
</entry>
<entry>
<title>win32: use NT-prefixed "\\?\" paths</title>
<updated>2014-12-16T16:08:43+00:00</updated>
<author>
<name>Edward Thomson</name>
<email>ethomson@microsoft.com</email>
</author>
<published>2014-12-01T18:09:58+00:00</published>
<link rel='alternate' type='text/html' href='http://91.123.203.49/cgit/delta/libgit2.git/commit/?id=cceae9a25d0bed8b00f4981e051d5f380ef54401'/>
<id>cceae9a25d0bed8b00f4981e051d5f380ef54401</id>
<content type='text'>
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:\)
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
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:\)
</pre>
</div>
</content>
</entry>
<entry>
<title>push: fold unpack_ok() into finish()</title>
<updated>2014-12-10T17:55:54+00:00</updated>
<author>
<name>Carlos Martín Nieto</name>
<email>cmn@dwim.me</email>
</author>
<published>2014-12-10T16:23:33+00:00</published>
<link rel='alternate' type='text/html' href='http://91.123.203.49/cgit/delta/libgit2.git/commit/?id=d524b2d3d13cd306f4405b2e48cf586c04e4e5dc'/>
<id>d524b2d3d13cd306f4405b2e48cf586c04e4e5dc</id>
<content type='text'>
The push cannot be successful if we sent a bad packfile. We should
return an error in that case instead of storing it elsewhere.
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
The push cannot be successful if we sent a bad packfile. We should
return an error in that case instead of storing it elsewhere.
</pre>
</div>
</content>
</entry>
</feed>
