<feed xmlns='http://www.w3.org/2005/Atom'>
<title>delta/libgit2.git/src, branch cmn/embed-libssh2</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>Merge pull request #2421 from libgit2/cmn/init-ssl-once</title>
<updated>2014-06-14T10:58:03+00:00</updated>
<author>
<name>Vicent Marti</name>
<email>vicent@github.com</email>
</author>
<published>2014-06-14T10:58:03+00:00</published>
<link rel='alternate' type='text/html' href='http://91.123.203.49/cgit/delta/libgit2.git/commit/?id=e93206e0f5bd9a1f2ad17d0d566b1e815a762420'/>
<id>e93206e0f5bd9a1f2ad17d0d566b1e815a762420</id>
<content type='text'>
netops: init OpenSSL once under lock</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
netops: init OpenSSL once under lock</pre>
</div>
</content>
</entry>
<entry>
<title>http: fix typo in credentials logic</title>
<updated>2014-06-13T00:35:33+00:00</updated>
<author>
<name>Carlos Martín Nieto</name>
<email>cmn@dwim.me</email>
</author>
<published>2014-06-13T00:35:33+00:00</published>
<link rel='alternate' type='text/html' href='http://91.123.203.49/cgit/delta/libgit2.git/commit/?id=9c3e4e97f6995bde7879a5907497c35f83ef6b56'/>
<id>9c3e4e97f6995bde7879a5907497c35f83ef6b56</id>
<content type='text'>
We want to check whether the credentials callback is NULL, not whether
the payload is.
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
We want to check whether the credentials callback is NULL, not whether
the payload is.
</pre>
</div>
</content>
</entry>
<entry>
<title>ssl: init everything all the time</title>
<updated>2014-06-12T14:58:25+00:00</updated>
<author>
<name>Carlos Martín Nieto</name>
<email>cmn@dwim.me</email>
</author>
<published>2014-06-12T14:20:52+00:00</published>
<link rel='alternate' type='text/html' href='http://91.123.203.49/cgit/delta/libgit2.git/commit/?id=081e76bac26e1ed6adafb402d15b30c622866d61'/>
<id>081e76bac26e1ed6adafb402d15b30c622866d61</id>
<content type='text'>
Bring together all of the OpenSSL initialization to
git_threads_init() so it's together and doesn't need locks.

Moving it here also gives us libssh2 thread safety (when built against
openssl).
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
Bring together all of the OpenSSL initialization to
git_threads_init() so it's together and doesn't need locks.

Moving it here also gives us libssh2 thread safety (when built against
openssl).
</pre>
</div>
</content>
</entry>
<entry>
<title>ssl: init also without threads</title>
<updated>2014-06-12T12:50:08+00:00</updated>
<author>
<name>Carlos Martín Nieto</name>
<email>cmn@dwim.me</email>
</author>
<published>2014-06-12T12:50:08+00:00</published>
<link rel='alternate' type='text/html' href='http://91.123.203.49/cgit/delta/libgit2.git/commit/?id=8f897b6f2f4742a7d9189528e082cfe7cecd6f29'/>
<id>8f897b6f2f4742a7d9189528e082cfe7cecd6f29</id>
<content type='text'>
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
</pre>
</div>
</content>
</entry>
<entry>
<title>ssl: cargo-cult thread safety</title>
<updated>2014-06-12T12:37:03+00:00</updated>
<author>
<name>Carlos Martín Nieto</name>
<email>cmn@dwim.me</email>
</author>
<published>2014-06-12T01:20:34+00:00</published>
<link rel='alternate' type='text/html' href='http://91.123.203.49/cgit/delta/libgit2.git/commit/?id=cf15ac8aa96304a36699ae65398b7adac0d2ddde'/>
<id>cf15ac8aa96304a36699ae65398b7adac0d2ddde</id>
<content type='text'>
OpenSSL's tests init everything in the main thread, so let's do that.
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
OpenSSL's tests init everything in the main thread, so let's do that.
</pre>
</div>
</content>
</entry>
<entry>
<title>ssl: use locking</title>
<updated>2014-06-11T21:19:48+00:00</updated>
<author>
<name>Carlos Martín Nieto</name>
<email>cmn@dwim.me</email>
</author>
<published>2014-06-11T21:19:48+00:00</published>
<link rel='alternate' type='text/html' href='http://91.123.203.49/cgit/delta/libgit2.git/commit/?id=5fa0494328b78a1ce8dba983c3f8028d123a62a4'/>
<id>5fa0494328b78a1ce8dba983c3f8028d123a62a4</id>
<content type='text'>
When using in a multithreaded context, OpenSSL needs to lock, and leaves
it up to application to provide said locks.

We were not doing this, and it's just luck that's kept us from crashing
up to now.
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
When using in a multithreaded context, OpenSSL needs to lock, and leaves
it up to application to provide said locks.

We were not doing this, and it's just luck that's kept us from crashing
up to now.
</pre>
</div>
</content>
</entry>
<entry>
<title>netops: init OpenSSL once under lock</title>
<updated>2014-06-11T18:54:42+00:00</updated>
<author>
<name>Carlos Martín Nieto</name>
<email>cmn@dwim.me</email>
</author>
<published>2014-06-11T18:52:15+00:00</published>
<link rel='alternate' type='text/html' href='http://91.123.203.49/cgit/delta/libgit2.git/commit/?id=1d3364ac9d2bcd2d194f0afa0d301456d0d4e276'/>
<id>1d3364ac9d2bcd2d194f0afa0d301456d0d4e276</id>
<content type='text'>
The OpenSSL init functions are not reentrant, which means that running
multiple fetches in parallel can cause us to crash.

Use a mutex to init OpenSSL, and since we're adding this extra checks,
init it only once.
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
The OpenSSL init functions are not reentrant, which means that running
multiple fetches in parallel can cause us to crash.

Use a mutex to init OpenSSL, and since we're adding this extra checks,
init it only once.
</pre>
</div>
</content>
</entry>
<entry>
<title>revwalk: more sensible array handling</title>
<updated>2014-06-10T22:06:44+00:00</updated>
<author>
<name>Carlos Martín Nieto</name>
<email>cmn@dwim.me</email>
</author>
<published>2014-06-10T22:06:44+00:00</published>
<link rel='alternate' type='text/html' href='http://91.123.203.49/cgit/delta/libgit2.git/commit/?id=f9a97667945a87abfca50e153a7d2fdf5c4319a8'/>
<id>f9a97667945a87abfca50e153a7d2fdf5c4319a8</id>
<content type='text'>
Instead of using a sentinel empty value to detect the last commit, let's
check for when we get a NULL from popping the stack, which lets us know
when we're done.

The current code causes us to read uninitialized data, although only on
RHEL/CentOS 6 in release mode. This is a readability win overall.
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
Instead of using a sentinel empty value to detect the last commit, let's
check for when we get a NULL from popping the stack, which lets us know
when we're done.

The current code causes us to read uninitialized data, although only on
RHEL/CentOS 6 in release mode. This is a readability win overall.
</pre>
</div>
</content>
</entry>
<entry>
<title>treebuilder: insert sorted</title>
<updated>2014-06-09T22:06:21+00:00</updated>
<author>
<name>Carlos Martín Nieto</name>
<email>cmn@dwim.me</email>
</author>
<published>2014-06-09T21:23:53+00:00</published>
<link rel='alternate' type='text/html' href='http://91.123.203.49/cgit/delta/libgit2.git/commit/?id=2c11d2eeb550ed2f795c714829b3fd3788b2ab68'/>
<id>2c11d2eeb550ed2f795c714829b3fd3788b2ab68</id>
<content type='text'>
By inserting in the right position, we can keep the vector sorted,
making entry insertion almost twice as fast.
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
By inserting in the right position, we can keep the vector sorted,
making entry insertion almost twice as fast.
</pre>
</div>
</content>
</entry>
<entry>
<title>Merge pull request #2407 from libgit2/cmn/remote-rename-more</title>
<updated>2014-06-08T14:44:32+00:00</updated>
<author>
<name>Vicent Marti</name>
<email>vicent@github.com</email>
</author>
<published>2014-06-08T14:44:32+00:00</published>
<link rel='alternate' type='text/html' href='http://91.123.203.49/cgit/delta/libgit2.git/commit/?id=ce5e6617b08829d3a473595322a0e67bef9ea645'/>
<id>ce5e6617b08829d3a473595322a0e67bef9ea645</id>
<content type='text'>
More remote rename fixes</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
More remote rename fixes</pre>
</div>
</content>
</entry>
</feed>
