forked from premiere/premiere-libtorrent
Merge branch 'RC_1_1'
This commit is contained in:
commit
9f45156b5a
|
@ -5,6 +5,7 @@
|
||||||
|
|
||||||
1.1.0 release
|
1.1.0 release
|
||||||
|
|
||||||
|
* deprecate support for adding torrents by HTTP URL
|
||||||
* allow specifying which tracker to scrape in scrape_tracker
|
* allow specifying which tracker to scrape in scrape_tracker
|
||||||
* tracker response alerts from user initiated announces/scrapes are now
|
* tracker response alerts from user initiated announces/scrapes are now
|
||||||
posted regardless of alert mask
|
posted regardless of alert mask
|
||||||
|
|
|
@ -145,21 +145,21 @@ instructions for how to use it <a class="reference external" href="client_test.h
|
||||||
<span class="keyword type">FILE</span><span class="operator">*</span> <span class="name">f</span> <span class="operator">=</span> <span class="name">fopen</span><span class="punctuation">(</span><span class="name">filename</span><span class="punctuation">.</span><span class="name">c_str</span><span class="punctuation">(),</span> <span class="literal string">"rb"</span><span class="punctuation">);</span>
|
<span class="keyword type">FILE</span><span class="operator">*</span> <span class="name">f</span> <span class="operator">=</span> <span class="name">fopen</span><span class="punctuation">(</span><span class="name">filename</span><span class="punctuation">.</span><span class="name">c_str</span><span class="punctuation">(),</span> <span class="literal string">"rb"</span><span class="punctuation">);</span>
|
||||||
<span class="keyword">if</span> <span class="punctuation">(</span><span class="name">f</span> <span class="operator">==</span> <span class="name builtin">NULL</span><span class="punctuation">)</span>
|
<span class="keyword">if</span> <span class="punctuation">(</span><span class="name">f</span> <span class="operator">==</span> <span class="name builtin">NULL</span><span class="punctuation">)</span>
|
||||||
<span class="punctuation">{</span>
|
<span class="punctuation">{</span>
|
||||||
<span class="name">ec</span><span class="punctuation">.</span><span class="name">assign</span><span class="punctuation">(</span><span class="name">errno</span><span class="punctuation">,</span> <span class="name">boost</span><span class="operator">::</span><span class="name">system</span><span class="operator">::</span><span class="name">generic_category</span><span class="punctuation">());</span>
|
<span class="name">ec</span><span class="punctuation">.</span><span class="name">assign</span><span class="punctuation">(</span><span class="name">errno</span><span class="punctuation">,</span> <span class="name">boost</span><span class="operator">::</span><span class="name">system</span><span class="operator">::</span><span class="name">system_category</span><span class="punctuation">());</span>
|
||||||
<span class="keyword">return</span> <span class="operator">-</span><span class="literal number integer">1</span><span class="punctuation">;</span>
|
<span class="keyword">return</span> <span class="operator">-</span><span class="literal number integer">1</span><span class="punctuation">;</span>
|
||||||
<span class="punctuation">}</span>
|
<span class="punctuation">}</span>
|
||||||
|
|
||||||
<span class="keyword type">int</span> <span class="name">r</span> <span class="operator">=</span> <span class="name">fseek</span><span class="punctuation">(</span><span class="name">f</span><span class="punctuation">,</span> <span class="literal number integer">0</span><span class="punctuation">,</span> <span class="name">SEEK_END</span><span class="punctuation">);</span>
|
<span class="keyword type">int</span> <span class="name">r</span> <span class="operator">=</span> <span class="name">fseek</span><span class="punctuation">(</span><span class="name">f</span><span class="punctuation">,</span> <span class="literal number integer">0</span><span class="punctuation">,</span> <span class="name">SEEK_END</span><span class="punctuation">);</span>
|
||||||
<span class="keyword">if</span> <span class="punctuation">(</span><span class="name">r</span> <span class="operator">!=</span> <span class="literal number integer">0</span><span class="punctuation">)</span>
|
<span class="keyword">if</span> <span class="punctuation">(</span><span class="name">r</span> <span class="operator">!=</span> <span class="literal number integer">0</span><span class="punctuation">)</span>
|
||||||
<span class="punctuation">{</span>
|
<span class="punctuation">{</span>
|
||||||
<span class="name">ec</span><span class="punctuation">.</span><span class="name">assign</span><span class="punctuation">(</span><span class="name">errno</span><span class="punctuation">,</span> <span class="name">boost</span><span class="operator">::</span><span class="name">system</span><span class="operator">::</span><span class="name">generic_category</span><span class="punctuation">());</span>
|
<span class="name">ec</span><span class="punctuation">.</span><span class="name">assign</span><span class="punctuation">(</span><span class="name">errno</span><span class="punctuation">,</span> <span class="name">boost</span><span class="operator">::</span><span class="name">system</span><span class="operator">::</span><span class="name">system_category</span><span class="punctuation">());</span>
|
||||||
<span class="name">fclose</span><span class="punctuation">(</span><span class="name">f</span><span class="punctuation">);</span>
|
<span class="name">fclose</span><span class="punctuation">(</span><span class="name">f</span><span class="punctuation">);</span>
|
||||||
<span class="keyword">return</span> <span class="operator">-</span><span class="literal number integer">1</span><span class="punctuation">;</span>
|
<span class="keyword">return</span> <span class="operator">-</span><span class="literal number integer">1</span><span class="punctuation">;</span>
|
||||||
<span class="punctuation">}</span>
|
<span class="punctuation">}</span>
|
||||||
<span class="keyword type">long</span> <span class="name">s</span> <span class="operator">=</span> <span class="name">ftell</span><span class="punctuation">(</span><span class="name">f</span><span class="punctuation">);</span>
|
<span class="keyword type">long</span> <span class="name">s</span> <span class="operator">=</span> <span class="name">ftell</span><span class="punctuation">(</span><span class="name">f</span><span class="punctuation">);</span>
|
||||||
<span class="keyword">if</span> <span class="punctuation">(</span><span class="name">s</span> <span class="operator"><</span> <span class="literal number integer">0</span><span class="punctuation">)</span>
|
<span class="keyword">if</span> <span class="punctuation">(</span><span class="name">s</span> <span class="operator"><</span> <span class="literal number integer">0</span><span class="punctuation">)</span>
|
||||||
<span class="punctuation">{</span>
|
<span class="punctuation">{</span>
|
||||||
<span class="name">ec</span><span class="punctuation">.</span><span class="name">assign</span><span class="punctuation">(</span><span class="name">errno</span><span class="punctuation">,</span> <span class="name">boost</span><span class="operator">::</span><span class="name">system</span><span class="operator">::</span><span class="name">generic_category</span><span class="punctuation">());</span>
|
<span class="name">ec</span><span class="punctuation">.</span><span class="name">assign</span><span class="punctuation">(</span><span class="name">errno</span><span class="punctuation">,</span> <span class="name">boost</span><span class="operator">::</span><span class="name">system</span><span class="operator">::</span><span class="name">system_category</span><span class="punctuation">());</span>
|
||||||
<span class="name">fclose</span><span class="punctuation">(</span><span class="name">f</span><span class="punctuation">);</span>
|
<span class="name">fclose</span><span class="punctuation">(</span><span class="name">f</span><span class="punctuation">);</span>
|
||||||
<span class="keyword">return</span> <span class="operator">-</span><span class="literal number integer">1</span><span class="punctuation">;</span>
|
<span class="keyword">return</span> <span class="operator">-</span><span class="literal number integer">1</span><span class="punctuation">;</span>
|
||||||
<span class="punctuation">}</span>
|
<span class="punctuation">}</span>
|
||||||
|
@ -173,7 +173,7 @@ instructions for how to use it <a class="reference external" href="client_test.h
|
||||||
<span class="name">r</span> <span class="operator">=</span> <span class="name">fseek</span><span class="punctuation">(</span><span class="name">f</span><span class="punctuation">,</span> <span class="literal number integer">0</span><span class="punctuation">,</span> <span class="name">SEEK_SET</span><span class="punctuation">);</span>
|
<span class="name">r</span> <span class="operator">=</span> <span class="name">fseek</span><span class="punctuation">(</span><span class="name">f</span><span class="punctuation">,</span> <span class="literal number integer">0</span><span class="punctuation">,</span> <span class="name">SEEK_SET</span><span class="punctuation">);</span>
|
||||||
<span class="keyword">if</span> <span class="punctuation">(</span><span class="name">r</span> <span class="operator">!=</span> <span class="literal number integer">0</span><span class="punctuation">)</span>
|
<span class="keyword">if</span> <span class="punctuation">(</span><span class="name">r</span> <span class="operator">!=</span> <span class="literal number integer">0</span><span class="punctuation">)</span>
|
||||||
<span class="punctuation">{</span>
|
<span class="punctuation">{</span>
|
||||||
<span class="name">ec</span><span class="punctuation">.</span><span class="name">assign</span><span class="punctuation">(</span><span class="name">errno</span><span class="punctuation">,</span> <span class="name">boost</span><span class="operator">::</span><span class="name">system</span><span class="operator">::</span><span class="name">generic_category</span><span class="punctuation">());</span>
|
<span class="name">ec</span><span class="punctuation">.</span><span class="name">assign</span><span class="punctuation">(</span><span class="name">errno</span><span class="punctuation">,</span> <span class="name">boost</span><span class="operator">::</span><span class="name">system</span><span class="operator">::</span><span class="name">system_category</span><span class="punctuation">());</span>
|
||||||
<span class="name">fclose</span><span class="punctuation">(</span><span class="name">f</span><span class="punctuation">);</span>
|
<span class="name">fclose</span><span class="punctuation">(</span><span class="name">f</span><span class="punctuation">);</span>
|
||||||
<span class="keyword">return</span> <span class="operator">-</span><span class="literal number integer">1</span><span class="punctuation">;</span>
|
<span class="keyword">return</span> <span class="operator">-</span><span class="literal number integer">1</span><span class="punctuation">;</span>
|
||||||
<span class="punctuation">}</span>
|
<span class="punctuation">}</span>
|
||||||
|
@ -188,7 +188,7 @@ instructions for how to use it <a class="reference external" href="client_test.h
|
||||||
<span class="name">r</span> <span class="operator">=</span> <span class="name">fread</span><span class="punctuation">(</span><span class="operator">&</span><span class="name">v</span><span class="punctuation">[</span><span class="literal number integer">0</span><span class="punctuation">],</span> <span class="literal number integer">1</span><span class="punctuation">,</span> <span class="name">v</span><span class="punctuation">.</span><span class="name">size</span><span class="punctuation">(),</span> <span class="name">f</span><span class="punctuation">);</span>
|
<span class="name">r</span> <span class="operator">=</span> <span class="name">fread</span><span class="punctuation">(</span><span class="operator">&</span><span class="name">v</span><span class="punctuation">[</span><span class="literal number integer">0</span><span class="punctuation">],</span> <span class="literal number integer">1</span><span class="punctuation">,</span> <span class="name">v</span><span class="punctuation">.</span><span class="name">size</span><span class="punctuation">(),</span> <span class="name">f</span><span class="punctuation">);</span>
|
||||||
<span class="keyword">if</span> <span class="punctuation">(</span><span class="name">r</span> <span class="operator"><</span> <span class="literal number integer">0</span><span class="punctuation">)</span>
|
<span class="keyword">if</span> <span class="punctuation">(</span><span class="name">r</span> <span class="operator"><</span> <span class="literal number integer">0</span><span class="punctuation">)</span>
|
||||||
<span class="punctuation">{</span>
|
<span class="punctuation">{</span>
|
||||||
<span class="name">ec</span><span class="punctuation">.</span><span class="name">assign</span><span class="punctuation">(</span><span class="name">errno</span><span class="punctuation">,</span> <span class="name">boost</span><span class="operator">::</span><span class="name">system</span><span class="operator">::</span><span class="name">generic_category</span><span class="punctuation">());</span>
|
<span class="name">ec</span><span class="punctuation">.</span><span class="name">assign</span><span class="punctuation">(</span><span class="name">errno</span><span class="punctuation">,</span> <span class="name">boost</span><span class="operator">::</span><span class="name">system</span><span class="operator">::</span><span class="name">system_category</span><span class="punctuation">());</span>
|
||||||
<span class="name">fclose</span><span class="punctuation">(</span><span class="name">f</span><span class="punctuation">);</span>
|
<span class="name">fclose</span><span class="punctuation">(</span><span class="name">f</span><span class="punctuation">);</span>
|
||||||
<span class="keyword">return</span> <span class="operator">-</span><span class="literal number integer">1</span><span class="punctuation">;</span>
|
<span class="keyword">return</span> <span class="operator">-</span><span class="literal number integer">1</span><span class="punctuation">;</span>
|
||||||
<span class="punctuation">}</span>
|
<span class="punctuation">}</span>
|
||||||
|
@ -551,21 +551,21 @@ print information about it to std out:</p>
|
||||||
<span class="keyword type">FILE</span><span class="operator">*</span> <span class="name">f</span> <span class="operator">=</span> <span class="name">fopen</span><span class="punctuation">(</span><span class="name">filename</span><span class="punctuation">.</span><span class="name">c_str</span><span class="punctuation">(),</span> <span class="literal string">"rb"</span><span class="punctuation">);</span>
|
<span class="keyword type">FILE</span><span class="operator">*</span> <span class="name">f</span> <span class="operator">=</span> <span class="name">fopen</span><span class="punctuation">(</span><span class="name">filename</span><span class="punctuation">.</span><span class="name">c_str</span><span class="punctuation">(),</span> <span class="literal string">"rb"</span><span class="punctuation">);</span>
|
||||||
<span class="keyword">if</span> <span class="punctuation">(</span><span class="name">f</span> <span class="operator">==</span> <span class="name builtin">NULL</span><span class="punctuation">)</span>
|
<span class="keyword">if</span> <span class="punctuation">(</span><span class="name">f</span> <span class="operator">==</span> <span class="name builtin">NULL</span><span class="punctuation">)</span>
|
||||||
<span class="punctuation">{</span>
|
<span class="punctuation">{</span>
|
||||||
<span class="name">ec</span><span class="punctuation">.</span><span class="name">assign</span><span class="punctuation">(</span><span class="name">errno</span><span class="punctuation">,</span> <span class="name">boost</span><span class="operator">::</span><span class="name">system</span><span class="operator">::</span><span class="name">generic_category</span><span class="punctuation">());</span>
|
<span class="name">ec</span><span class="punctuation">.</span><span class="name">assign</span><span class="punctuation">(</span><span class="name">errno</span><span class="punctuation">,</span> <span class="name">boost</span><span class="operator">::</span><span class="name">system</span><span class="operator">::</span><span class="name">system_category</span><span class="punctuation">());</span>
|
||||||
<span class="keyword">return</span> <span class="operator">-</span><span class="literal number integer">1</span><span class="punctuation">;</span>
|
<span class="keyword">return</span> <span class="operator">-</span><span class="literal number integer">1</span><span class="punctuation">;</span>
|
||||||
<span class="punctuation">}</span>
|
<span class="punctuation">}</span>
|
||||||
|
|
||||||
<span class="keyword type">int</span> <span class="name">r</span> <span class="operator">=</span> <span class="name">fseek</span><span class="punctuation">(</span><span class="name">f</span><span class="punctuation">,</span> <span class="literal number integer">0</span><span class="punctuation">,</span> <span class="name">SEEK_END</span><span class="punctuation">);</span>
|
<span class="keyword type">int</span> <span class="name">r</span> <span class="operator">=</span> <span class="name">fseek</span><span class="punctuation">(</span><span class="name">f</span><span class="punctuation">,</span> <span class="literal number integer">0</span><span class="punctuation">,</span> <span class="name">SEEK_END</span><span class="punctuation">);</span>
|
||||||
<span class="keyword">if</span> <span class="punctuation">(</span><span class="name">r</span> <span class="operator">!=</span> <span class="literal number integer">0</span><span class="punctuation">)</span>
|
<span class="keyword">if</span> <span class="punctuation">(</span><span class="name">r</span> <span class="operator">!=</span> <span class="literal number integer">0</span><span class="punctuation">)</span>
|
||||||
<span class="punctuation">{</span>
|
<span class="punctuation">{</span>
|
||||||
<span class="name">ec</span><span class="punctuation">.</span><span class="name">assign</span><span class="punctuation">(</span><span class="name">errno</span><span class="punctuation">,</span> <span class="name">boost</span><span class="operator">::</span><span class="name">system</span><span class="operator">::</span><span class="name">generic_category</span><span class="punctuation">());</span>
|
<span class="name">ec</span><span class="punctuation">.</span><span class="name">assign</span><span class="punctuation">(</span><span class="name">errno</span><span class="punctuation">,</span> <span class="name">boost</span><span class="operator">::</span><span class="name">system</span><span class="operator">::</span><span class="name">system_category</span><span class="punctuation">());</span>
|
||||||
<span class="name">fclose</span><span class="punctuation">(</span><span class="name">f</span><span class="punctuation">);</span>
|
<span class="name">fclose</span><span class="punctuation">(</span><span class="name">f</span><span class="punctuation">);</span>
|
||||||
<span class="keyword">return</span> <span class="operator">-</span><span class="literal number integer">1</span><span class="punctuation">;</span>
|
<span class="keyword">return</span> <span class="operator">-</span><span class="literal number integer">1</span><span class="punctuation">;</span>
|
||||||
<span class="punctuation">}</span>
|
<span class="punctuation">}</span>
|
||||||
<span class="keyword type">long</span> <span class="name">s</span> <span class="operator">=</span> <span class="name">ftell</span><span class="punctuation">(</span><span class="name">f</span><span class="punctuation">);</span>
|
<span class="keyword type">long</span> <span class="name">s</span> <span class="operator">=</span> <span class="name">ftell</span><span class="punctuation">(</span><span class="name">f</span><span class="punctuation">);</span>
|
||||||
<span class="keyword">if</span> <span class="punctuation">(</span><span class="name">s</span> <span class="operator"><</span> <span class="literal number integer">0</span><span class="punctuation">)</span>
|
<span class="keyword">if</span> <span class="punctuation">(</span><span class="name">s</span> <span class="operator"><</span> <span class="literal number integer">0</span><span class="punctuation">)</span>
|
||||||
<span class="punctuation">{</span>
|
<span class="punctuation">{</span>
|
||||||
<span class="name">ec</span><span class="punctuation">.</span><span class="name">assign</span><span class="punctuation">(</span><span class="name">errno</span><span class="punctuation">,</span> <span class="name">boost</span><span class="operator">::</span><span class="name">system</span><span class="operator">::</span><span class="name">generic_category</span><span class="punctuation">());</span>
|
<span class="name">ec</span><span class="punctuation">.</span><span class="name">assign</span><span class="punctuation">(</span><span class="name">errno</span><span class="punctuation">,</span> <span class="name">boost</span><span class="operator">::</span><span class="name">system</span><span class="operator">::</span><span class="name">system_category</span><span class="punctuation">());</span>
|
||||||
<span class="name">fclose</span><span class="punctuation">(</span><span class="name">f</span><span class="punctuation">);</span>
|
<span class="name">fclose</span><span class="punctuation">(</span><span class="name">f</span><span class="punctuation">);</span>
|
||||||
<span class="keyword">return</span> <span class="operator">-</span><span class="literal number integer">1</span><span class="punctuation">;</span>
|
<span class="keyword">return</span> <span class="operator">-</span><span class="literal number integer">1</span><span class="punctuation">;</span>
|
||||||
<span class="punctuation">}</span>
|
<span class="punctuation">}</span>
|
||||||
|
@ -579,7 +579,7 @@ print information about it to std out:</p>
|
||||||
<span class="name">r</span> <span class="operator">=</span> <span class="name">fseek</span><span class="punctuation">(</span><span class="name">f</span><span class="punctuation">,</span> <span class="literal number integer">0</span><span class="punctuation">,</span> <span class="name">SEEK_SET</span><span class="punctuation">);</span>
|
<span class="name">r</span> <span class="operator">=</span> <span class="name">fseek</span><span class="punctuation">(</span><span class="name">f</span><span class="punctuation">,</span> <span class="literal number integer">0</span><span class="punctuation">,</span> <span class="name">SEEK_SET</span><span class="punctuation">);</span>
|
||||||
<span class="keyword">if</span> <span class="punctuation">(</span><span class="name">r</span> <span class="operator">!=</span> <span class="literal number integer">0</span><span class="punctuation">)</span>
|
<span class="keyword">if</span> <span class="punctuation">(</span><span class="name">r</span> <span class="operator">!=</span> <span class="literal number integer">0</span><span class="punctuation">)</span>
|
||||||
<span class="punctuation">{</span>
|
<span class="punctuation">{</span>
|
||||||
<span class="name">ec</span><span class="punctuation">.</span><span class="name">assign</span><span class="punctuation">(</span><span class="name">errno</span><span class="punctuation">,</span> <span class="name">boost</span><span class="operator">::</span><span class="name">system</span><span class="operator">::</span><span class="name">generic_category</span><span class="punctuation">());</span>
|
<span class="name">ec</span><span class="punctuation">.</span><span class="name">assign</span><span class="punctuation">(</span><span class="name">errno</span><span class="punctuation">,</span> <span class="name">boost</span><span class="operator">::</span><span class="name">system</span><span class="operator">::</span><span class="name">system_category</span><span class="punctuation">());</span>
|
||||||
<span class="name">fclose</span><span class="punctuation">(</span><span class="name">f</span><span class="punctuation">);</span>
|
<span class="name">fclose</span><span class="punctuation">(</span><span class="name">f</span><span class="punctuation">);</span>
|
||||||
<span class="keyword">return</span> <span class="operator">-</span><span class="literal number integer">1</span><span class="punctuation">;</span>
|
<span class="keyword">return</span> <span class="operator">-</span><span class="literal number integer">1</span><span class="punctuation">;</span>
|
||||||
<span class="punctuation">}</span>
|
<span class="punctuation">}</span>
|
||||||
|
@ -594,7 +594,7 @@ print information about it to std out:</p>
|
||||||
<span class="name">r</span> <span class="operator">=</span> <span class="name">fread</span><span class="punctuation">(</span><span class="operator">&</span><span class="name">v</span><span class="punctuation">[</span><span class="literal number integer">0</span><span class="punctuation">],</span> <span class="literal number integer">1</span><span class="punctuation">,</span> <span class="name">v</span><span class="punctuation">.</span><span class="name">size</span><span class="punctuation">(),</span> <span class="name">f</span><span class="punctuation">);</span>
|
<span class="name">r</span> <span class="operator">=</span> <span class="name">fread</span><span class="punctuation">(</span><span class="operator">&</span><span class="name">v</span><span class="punctuation">[</span><span class="literal number integer">0</span><span class="punctuation">],</span> <span class="literal number integer">1</span><span class="punctuation">,</span> <span class="name">v</span><span class="punctuation">.</span><span class="name">size</span><span class="punctuation">(),</span> <span class="name">f</span><span class="punctuation">);</span>
|
||||||
<span class="keyword">if</span> <span class="punctuation">(</span><span class="name">r</span> <span class="operator"><</span> <span class="literal number integer">0</span><span class="punctuation">)</span>
|
<span class="keyword">if</span> <span class="punctuation">(</span><span class="name">r</span> <span class="operator"><</span> <span class="literal number integer">0</span><span class="punctuation">)</span>
|
||||||
<span class="punctuation">{</span>
|
<span class="punctuation">{</span>
|
||||||
<span class="name">ec</span><span class="punctuation">.</span><span class="name">assign</span><span class="punctuation">(</span><span class="name">errno</span><span class="punctuation">,</span> <span class="name">boost</span><span class="operator">::</span><span class="name">system</span><span class="operator">::</span><span class="name">generic_category</span><span class="punctuation">());</span>
|
<span class="name">ec</span><span class="punctuation">.</span><span class="name">assign</span><span class="punctuation">(</span><span class="name">errno</span><span class="punctuation">,</span> <span class="name">boost</span><span class="operator">::</span><span class="name">system</span><span class="operator">::</span><span class="name">system_category</span><span class="punctuation">());</span>
|
||||||
<span class="name">fclose</span><span class="punctuation">(</span><span class="name">f</span><span class="punctuation">);</span>
|
<span class="name">fclose</span><span class="punctuation">(</span><span class="name">f</span><span class="punctuation">);</span>
|
||||||
<span class="keyword">return</span> <span class="operator">-</span><span class="literal number integer">1</span><span class="punctuation">;</span>
|
<span class="keyword">return</span> <span class="operator">-</span><span class="literal number integer">1</span><span class="punctuation">;</span>
|
||||||
<span class="punctuation">}</span>
|
<span class="punctuation">}</span>
|
||||||
|
|
|
@ -114,11 +114,11 @@ ifneq ($(STAGE),)
|
||||||
endif
|
endif
|
||||||
|
|
||||||
%.png:%.diagram
|
%.png:%.diagram
|
||||||
aafigure -o $@ $?
|
aafigure --scale 0.6 -o $@ $?
|
||||||
ifneq ($(STAGE),)
|
ifneq ($(STAGE),)
|
||||||
cp $@ $(WEB_PATH)/$@
|
cp $@ $(WEB_PATH)/$@
|
||||||
endif
|
endif
|
||||||
|
|
||||||
clean:
|
clean:
|
||||||
rm -f $(TARGETS:=.html) $(TARGETS:=.pdf) $(FIGURES:=.png) $(FIGURES:=.eps) settings.rst todo.html reference*.html reference*.rst stats_counters.rst manual.rst
|
rm -f $(TARGETS:=.html) $(TARGETS:=.pdf) $(FIGURES:=.png) $(FIGURES:=.eps) $(REFERENCE_TARGETS:=.rst) settings.rst todo.html reference*.html stats_counters.rst
|
||||||
|
|
||||||
|
|
|
@ -485,6 +485,13 @@ The file format is a bencoded dictionary containing the following fields:
|
||||||
| ``banned_peers6`` | string. This string has the same format as ``peers6`` but |
|
| ``banned_peers6`` | string. This string has the same format as ``peers6`` but |
|
||||||
| | instead represent IPv6 peers that we have banned. |
|
| | instead represent IPv6 peers that we have banned. |
|
||||||
+--------------------------+--------------------------------------------------------------+
|
+--------------------------+--------------------------------------------------------------+
|
||||||
|
| ``info`` | If this field is present, it should be the info-dictionary |
|
||||||
|
| | of the torrent this resume data is for. Its SHA-1 hash must |
|
||||||
|
| | match the one in the ``info-hash`` field. When present, |
|
||||||
|
| | the torrent is loaded from here, meaning the torrent can be |
|
||||||
|
| | added purely from resume data (no need to load the .torrent |
|
||||||
|
| | file separately). This may have performance advantages. |
|
||||||
|
+--------------------------+--------------------------------------------------------------+
|
||||||
| ``unfinished`` | list of dictionaries. Each dictionary represents an |
|
| ``unfinished`` | list of dictionaries. Each dictionary represents an |
|
||||||
| | piece, and has the following layout: |
|
| | piece, and has the following layout: |
|
||||||
| | |
|
| | |
|
||||||
|
|
Binary file not shown.
Before Width: | Height: | Size: 4.6 KiB After Width: | Height: | Size: 3.4 KiB |
|
@ -120,24 +120,23 @@ connections.
|
||||||
| listen_interfaces | string | "0.0.0.0:6881" |
|
| listen_interfaces | string | "0.0.0.0:6881" |
|
||||||
+-------------------+--------+----------------+
|
+-------------------+--------+----------------+
|
||||||
|
|
||||||
a comma-separated list of (IP or device name, port) pairs. These
|
a comma-separated list of IP port-pairs. These
|
||||||
are the listen ports that will be opened for accepting incoming uTP
|
are the listen ports that will be opened for accepting incoming uTP
|
||||||
and TCP connections. It is possible to listen on multiple
|
and TCP connections. It is possible to listen on multiple
|
||||||
interfaces and multiple ports. Binding to port 0 will make the
|
IPs and multiple ports. Binding to port 0 will make the
|
||||||
operating system pick the port. The default is "0.0.0.0:0", which
|
operating system pick the port. The default is "0.0.0.0:6881", which
|
||||||
binds to all interfaces on a port the OS picks.
|
binds to all interfaces on port 6881.
|
||||||
if binding fails, the listen_failed_alert is posted, otherwise the
|
if binding fails, the listen_failed_alert is posted, potentially
|
||||||
listen_succeeded_alert.
|
more than once. Once/if binding the listen socket(s) succeed,
|
||||||
If the DHT is running, it will also have its socket rebound to the
|
listen_succeeded_alert is posted.
|
||||||
same port as the main listen port.
|
Each port will attempt to open both a UDP and a TCP listen socket,
|
||||||
|
to allow accepting uTP connections as well as TCP. If using the DHT,
|
||||||
|
this will also make the DHT use the same UDP ports.
|
||||||
|
|
||||||
The reason why it's a good idea to run the DHT and the bittorrent
|
.. note::
|
||||||
socket on the same port is because that is an assumption that may
|
The current support for opening arbitrary UDP sockets is limited.
|
||||||
be used to increase performance. One way to accelerate the
|
In this version of libtorrent, there will only ever be two UDP
|
||||||
connecting of peers on windows may be to first ping all peers with
|
sockets, one for IPv4 and one for IPv6.
|
||||||
a DHT ping packet, and connect to those that responds first. On
|
|
||||||
windows one can only connect to a few peers at a time because of a
|
|
||||||
built in limitation (in XP Service pack 2).
|
|
||||||
|
|
||||||
.. _proxy_hostname:
|
.. _proxy_hostname:
|
||||||
|
|
||||||
|
@ -706,8 +705,8 @@ can make us start the torrent and serve it.
|
||||||
+------------------------+------+---------+
|
+------------------------+------+---------+
|
||||||
|
|
||||||
when set to true, the downloaded counter sent to trackers will
|
when set to true, the downloaded counter sent to trackers will
|
||||||
include the actual number of payload bytes donwnloaded including
|
include the actual number of payload bytes downloaded including
|
||||||
redundant bytes. If set to false, it will not include any redundany
|
redundant bytes. If set to false, it will not include any redundancy
|
||||||
bytes
|
bytes
|
||||||
|
|
||||||
.. _strict_end_game_mode:
|
.. _strict_end_game_mode:
|
||||||
|
@ -819,7 +818,7 @@ storage to look for them.
|
||||||
``no_recheck_incomplete_resume`` determines if the storage should
|
``no_recheck_incomplete_resume`` determines if the storage should
|
||||||
check the whole files when resume data is incomplete or missing or
|
check the whole files when resume data is incomplete or missing or
|
||||||
whether it should simply assume we don't have any of the data. By
|
whether it should simply assume we don't have any of the data. By
|
||||||
default, this is determined by the existance of any of the files.
|
default, this is determined by the existence of any of the files.
|
||||||
By setting this setting to true, the files won't be checked, but
|
By setting this setting to true, the files won't be checked, but
|
||||||
will go straight to download mode.
|
will go straight to download mode.
|
||||||
|
|
||||||
|
@ -882,7 +881,7 @@ set to true if uTP connections should be rate limited This option
|
||||||
is *DEPRECATED*, please use set_peer_class_filter() instead.
|
is *DEPRECATED*, please use set_peer_class_filter() instead.
|
||||||
if this is true, the ``&ip=`` argument in tracker requests (unless
|
if this is true, the ``&ip=`` argument in tracker requests (unless
|
||||||
otherwise specified) will be set to the intermediate IP address if
|
otherwise specified) will be set to the intermediate IP address if
|
||||||
the user is double NATed. If ther user is not double NATed, this
|
the user is double NATed. If the user is not double NATed, this
|
||||||
option does not have an affect
|
option does not have an affect
|
||||||
|
|
||||||
.. _seeding_outgoing_connections:
|
.. _seeding_outgoing_connections:
|
||||||
|
@ -938,7 +937,7 @@ connection attempts per second may be limited to below the
|
||||||
``connection_speed``, in case we're close to bump up against the
|
``connection_speed``, in case we're close to bump up against the
|
||||||
limit of number of connections. The intention of this setting is to
|
limit of number of connections. The intention of this setting is to
|
||||||
more evenly distribute our connection attempts over time, instead
|
more evenly distribute our connection attempts over time, instead
|
||||||
of attempting to connectin in batches, and timing them out in
|
of attempting to connect in batches, and timing them out in
|
||||||
batches.
|
batches.
|
||||||
|
|
||||||
.. _always_send_user_agent:
|
.. _always_send_user_agent:
|
||||||
|
@ -1328,7 +1327,7 @@ unlikely to matter anyway
|
||||||
| proxy_tracker_connections | bool | true |
|
| proxy_tracker_connections | bool | true |
|
||||||
+---------------------------+------+---------+
|
+---------------------------+------+---------+
|
||||||
|
|
||||||
if true, trackerconnections are made over the configured proxy, if
|
if true, tracker connections are made over the configured proxy, if
|
||||||
any.
|
any.
|
||||||
|
|
||||||
.. _tracker_completion_timeout:
|
.. _tracker_completion_timeout:
|
||||||
|
@ -1792,7 +1791,7 @@ This queue is only for waiting for the disk I/O thread to receive
|
||||||
the job and either write it to disk or insert it in the write
|
the job and either write it to disk or insert it in the write
|
||||||
cache. When this limit is reached, the peer connections will stop
|
cache. When this limit is reached, the peer connections will stop
|
||||||
reading data from their sockets, until the disk thread catches up.
|
reading data from their sockets, until the disk thread catches up.
|
||||||
Setting this too low will severly limit your download rate.
|
Setting this too low will severely limit your download rate.
|
||||||
|
|
||||||
.. _handshake_timeout:
|
.. _handshake_timeout:
|
||||||
|
|
||||||
|
@ -2384,7 +2383,7 @@ processes.
|
||||||
read cache when a read cache miss occurs. Setting this to 0 is
|
read cache when a read cache miss occurs. Setting this to 0 is
|
||||||
essentially the same thing as disabling read cache. The number of
|
essentially the same thing as disabling read cache. The number of
|
||||||
blocks read into the read cache is always capped by the piece
|
blocks read into the read cache is always capped by the piece
|
||||||
boundry.
|
boundary.
|
||||||
|
|
||||||
When a piece in the write cache has ``write_cache_line_size``
|
When a piece in the write cache has ``write_cache_line_size``
|
||||||
contiguous blocks in it, they will be flushed. Setting this to 1
|
contiguous blocks in it, they will be flushed. Setting this to 1
|
||||||
|
@ -2548,7 +2547,7 @@ set too low, you'll be too stingy and waste finding the true
|
||||||
reciprocation rate.
|
reciprocation rate.
|
||||||
|
|
||||||
``increase_est_reciprocation_rate`` specifies how many percent the
|
``increase_est_reciprocation_rate`` specifies how many percent the
|
||||||
extimated reciprocation rate should be increased by each unchoke
|
estimated reciprocation rate should be increased by each unchoke
|
||||||
interval a peer is still choking us back. This defaults to 20%.
|
interval a peer is still choking us back. This defaults to 20%.
|
||||||
This only applies to the BitTyrant choker.
|
This only applies to the BitTyrant choker.
|
||||||
|
|
||||||
|
@ -2571,7 +2570,7 @@ to the BitTyrant choker.
|
||||||
|
|
||||||
the max number of peers we accept from pex messages from a single
|
the max number of peers we accept from pex messages from a single
|
||||||
peer. this limits the number of concurrent peers any of our peers
|
peer. this limits the number of concurrent peers any of our peers
|
||||||
claims to be connected to. If they clain to be connected to more
|
claims to be connected to. If they claim to be connected to more
|
||||||
than this, we'll ignore any peer that exceeds this limit
|
than this, we'll ignore any peer that exceeds this limit
|
||||||
|
|
||||||
.. _tick_interval:
|
.. _tick_interval:
|
||||||
|
@ -2980,7 +2979,7 @@ jobs.
|
||||||
``async_write_some`` (i.e. send) on peer connection sockets. When
|
``async_write_some`` (i.e. send) on peer connection sockets. When
|
||||||
seeding at extremely high rates, this may become a bottleneck, and
|
seeding at extremely high rates, this may become a bottleneck, and
|
||||||
setting this to 2 or more may parallelize that cost. When using SSL
|
setting this to 2 or more may parallelize that cost. When using SSL
|
||||||
torrents, all encryption for outgoing traffic is done withint the
|
torrents, all encryption for outgoing traffic is done within the
|
||||||
socket send functions, and this will help parallelizing the cost of
|
socket send functions, and this will help parallelizing the cost of
|
||||||
SSL encryption as well.
|
SSL encryption as well.
|
||||||
|
|
||||||
|
@ -3041,7 +3040,7 @@ aggressive in hitting trackers.
|
||||||
| seed_time_ratio_limit | int | 700 |
|
| seed_time_ratio_limit | int | 700 |
|
||||||
+-----------------------+------+---------+
|
+-----------------------+------+---------+
|
||||||
|
|
||||||
when a seeding torrent reaches eaither the share ratio (bytes up /
|
when a seeding torrent reaches either the share ratio (bytes up /
|
||||||
bytes down) or the seed time ratio (seconds as seed / seconds as
|
bytes down) or the seed time ratio (seconds as seed / seconds as
|
||||||
downloader) or the seed time limit (seconds as seed) it is
|
downloader) or the seed time limit (seconds as seed) it is
|
||||||
considered done, and it will leave room for other torrents these
|
considered done, and it will leave room for other torrents these
|
||||||
|
@ -3219,7 +3218,7 @@ the download and upload rate limits for a torrent to be considered
|
||||||
active by the queuing mechanism. A torrent whose download rate is
|
active by the queuing mechanism. A torrent whose download rate is
|
||||||
less than ``inactive_down_rate`` and whose upload rate is less than
|
less than ``inactive_down_rate`` and whose upload rate is less than
|
||||||
``inactive_up_rate`` for ``auto_manage_startup`` seconds, is
|
``inactive_up_rate`` for ``auto_manage_startup`` seconds, is
|
||||||
considered inactive, and another queued torrent may be startert.
|
considered inactive, and another queued torrent may be started.
|
||||||
This logic is disabled if ``dont_count_slow_torrents`` is false.
|
This logic is disabled if ``dont_count_slow_torrents`` is false.
|
||||||
|
|
||||||
.. _proxy_type:
|
.. _proxy_type:
|
||||||
|
|
|
@ -415,6 +415,8 @@ the number of optimistically unchoked peers.
|
||||||
|
|
||||||
.. _net.on_accept_counter:
|
.. _net.on_accept_counter:
|
||||||
|
|
||||||
|
.. _net.on_disk_queue_counter:
|
||||||
|
|
||||||
.. _net.on_disk_counter:
|
.. _net.on_disk_counter:
|
||||||
|
|
||||||
.. raw:: html
|
.. raw:: html
|
||||||
|
@ -426,27 +428,30 @@ the number of optimistically unchoked peers.
|
||||||
<a name="net.on_lsd_peer_counter"></a>
|
<a name="net.on_lsd_peer_counter"></a>
|
||||||
<a name="net.on_udp_counter"></a>
|
<a name="net.on_udp_counter"></a>
|
||||||
<a name="net.on_accept_counter"></a>
|
<a name="net.on_accept_counter"></a>
|
||||||
|
<a name="net.on_disk_queue_counter"></a>
|
||||||
<a name="net.on_disk_counter"></a>
|
<a name="net.on_disk_counter"></a>
|
||||||
|
|
||||||
+-------------------------+---------+
|
+---------------------------+---------+
|
||||||
| name | type |
|
| name | type |
|
||||||
+=========================+=========+
|
+===========================+=========+
|
||||||
| net.on_read_counter | counter |
|
| net.on_read_counter | counter |
|
||||||
+-------------------------+---------+
|
+---------------------------+---------+
|
||||||
| net.on_write_counter | counter |
|
| net.on_write_counter | counter |
|
||||||
+-------------------------+---------+
|
+---------------------------+---------+
|
||||||
| net.on_tick_counter | counter |
|
| net.on_tick_counter | counter |
|
||||||
+-------------------------+---------+
|
+---------------------------+---------+
|
||||||
| net.on_lsd_counter | counter |
|
| net.on_lsd_counter | counter |
|
||||||
+-------------------------+---------+
|
+---------------------------+---------+
|
||||||
| net.on_lsd_peer_counter | counter |
|
| net.on_lsd_peer_counter | counter |
|
||||||
+-------------------------+---------+
|
+---------------------------+---------+
|
||||||
| net.on_udp_counter | counter |
|
| net.on_udp_counter | counter |
|
||||||
+-------------------------+---------+
|
+---------------------------+---------+
|
||||||
| net.on_accept_counter | counter |
|
| net.on_accept_counter | counter |
|
||||||
+-------------------------+---------+
|
+---------------------------+---------+
|
||||||
| net.on_disk_counter | counter |
|
| net.on_disk_queue_counter | counter |
|
||||||
+-------------------------+---------+
|
+---------------------------+---------+
|
||||||
|
| net.on_disk_counter | counter |
|
||||||
|
+---------------------------+---------+
|
||||||
|
|
||||||
|
|
||||||
These counters count the number of times the
|
These counters count the number of times the
|
||||||
|
@ -656,6 +661,22 @@ in picked. For instance, a torrent with an error
|
||||||
counts as an error-torrent, regardless of its other
|
counts as an error-torrent, regardless of its other
|
||||||
state.
|
state.
|
||||||
|
|
||||||
|
.. _ses.non_filter_torrents:
|
||||||
|
|
||||||
|
.. raw:: html
|
||||||
|
|
||||||
|
<a name="ses.non_filter_torrents"></a>
|
||||||
|
|
||||||
|
+-------------------------+---------+
|
||||||
|
| name | type |
|
||||||
|
+=========================+=========+
|
||||||
|
| ses.non_filter_torrents | counter |
|
||||||
|
+-------------------------+---------+
|
||||||
|
|
||||||
|
|
||||||
|
the number of torrents that don't have the
|
||||||
|
IP filter applied to them.
|
||||||
|
|
||||||
.. _ses.num_loaded_torrents:
|
.. _ses.num_loaded_torrents:
|
||||||
|
|
||||||
.. _ses.num_pinned_torrents:
|
.. _ses.num_pinned_torrents:
|
||||||
|
@ -1780,6 +1801,8 @@ has occurred.
|
||||||
|
|
||||||
.. _utp.num_utp_close_wait:
|
.. _utp.num_utp_close_wait:
|
||||||
|
|
||||||
|
.. _utp.num_utp_deleted:
|
||||||
|
|
||||||
.. raw:: html
|
.. raw:: html
|
||||||
|
|
||||||
<a name="utp.num_utp_idle"></a>
|
<a name="utp.num_utp_idle"></a>
|
||||||
|
@ -1787,6 +1810,7 @@ has occurred.
|
||||||
<a name="utp.num_utp_connected"></a>
|
<a name="utp.num_utp_connected"></a>
|
||||||
<a name="utp.num_utp_fin_sent"></a>
|
<a name="utp.num_utp_fin_sent"></a>
|
||||||
<a name="utp.num_utp_close_wait"></a>
|
<a name="utp.num_utp_close_wait"></a>
|
||||||
|
<a name="utp.num_utp_deleted"></a>
|
||||||
|
|
||||||
+------------------------+---------+
|
+------------------------+---------+
|
||||||
| name | type |
|
| name | type |
|
||||||
|
@ -1801,6 +1825,8 @@ has occurred.
|
||||||
+------------------------+---------+
|
+------------------------+---------+
|
||||||
| utp.num_utp_close_wait | counter |
|
| utp.num_utp_close_wait | counter |
|
||||||
+------------------------+---------+
|
+------------------------+---------+
|
||||||
|
| utp.num_utp_deleted | counter |
|
||||||
|
+------------------------+---------+
|
||||||
|
|
||||||
|
|
||||||
the number of uTP sockets in each respective state
|
the number of uTP sockets in each respective state
|
||||||
|
|
BIN
docs/storage.png
BIN
docs/storage.png
Binary file not shown.
Before Width: | Height: | Size: 6.5 KiB After Width: | Height: | Size: 4.7 KiB |
3040
docs/todo.html
3040
docs/todo.html
File diff suppressed because one or more lines are too long
|
@ -1,15 +1,15 @@
|
||||||
|
|
||||||
decrypt in place move buffer ref.
|
"decrypt in place" "move buffer ref."
|
||||||
+----------------+ (no copy) +------------+ (no copy) +------------+
|
+------------------+ "(no copy)" +--------------+ "(no copy)" +--------------+
|
||||||
| receive buffer +--=-------------->| plain text +--=--------------->| disk cache |
|
| "receive buffer" +--=------------>| "plain text" +--=------------->| "disk cache" |
|
||||||
+----------------+ | buffer | +------+-----+
|
+------------------+ | "buffer" | +------+-------+
|
||||||
^ +------------+ |
|
^ +--------------+ |
|
||||||
| read() on socket write() to file |
|
| "read() on socket" "write() to file" |
|
||||||
| (copy) (copy) |
|
| "(copy)" "(copy)" |
|
||||||
---=----|---------------------------------=---------------------------------|--=----
|
---=----|---------------------------------=---------------------------------|--=----
|
||||||
| kernel space |
|
| "kernel space" |
|
||||||
| v
|
| v
|
||||||
+-------+--------+ +-------------------+
|
+-------+---------+ +---------------------+
|
||||||
| socket kernel | | kernel page cache |
|
| "socket kernel" | | "kernel page cache" |
|
||||||
| buffer | | |
|
| "buffer" | | |
|
||||||
+----------------+ +-------------------+
|
+-----------------+ +---------------------+
|
||||||
|
|
Binary file not shown.
Before Width: | Height: | Size: 4.7 KiB After Width: | Height: | Size: 3.1 KiB |
|
@ -1378,7 +1378,6 @@ int main(int argc, char* argv[])
|
||||||
break;
|
break;
|
||||||
case 'a':
|
case 'a':
|
||||||
if (strcmp(arg, "allocate") == 0) allocation_mode = storage_mode_allocate;
|
if (strcmp(arg, "allocate") == 0) allocation_mode = storage_mode_allocate;
|
||||||
else if (strcmp(arg, "full") == 0) allocation_mode = storage_mode_allocate;
|
|
||||||
else if (strcmp(arg, "sparse") == 0) allocation_mode = storage_mode_sparse;
|
else if (strcmp(arg, "sparse") == 0) allocation_mode = storage_mode_sparse;
|
||||||
break;
|
break;
|
||||||
case 's': save_path = arg; break;
|
case 's': save_path = arg; break;
|
||||||
|
|
|
@ -51,7 +51,7 @@ namespace libtorrent
|
||||||
// session. The key fields when adding a torrent are:
|
// session. The key fields when adding a torrent are:
|
||||||
//
|
//
|
||||||
// * ti - when you have a .torrent file
|
// * ti - when you have a .torrent file
|
||||||
// * url - when you have a magnet link or http URL to the .torrent file
|
// * url - when you have a magnet link
|
||||||
// * info_hash - when all you have is an info-hash (this is similar to a
|
// * info_hash - when all you have is an info-hash (this is similar to a
|
||||||
// magnet link)
|
// magnet link)
|
||||||
//
|
//
|
||||||
|
@ -362,15 +362,7 @@ namespace libtorrent
|
||||||
// ``downloading_metadata`` state until the .torrent file has been
|
// ``downloading_metadata`` state until the .torrent file has been
|
||||||
// downloaded. If there's any error while downloading, the torrent will
|
// downloaded. If there's any error while downloading, the torrent will
|
||||||
// be stopped and the torrent error state (``torrent_status::error``)
|
// be stopped and the torrent error state (``torrent_status::error``)
|
||||||
// will indicate what went wrong. The ``url`` may refer to a magnet link
|
// will indicate what went wrong. The ``url`` may be set to a magnet link.
|
||||||
// or a regular http URL.
|
|
||||||
//
|
|
||||||
// If it refers to an HTTP URL, the info-hash for the added torrent will
|
|
||||||
// not be the true info-hash of the .torrent. Instead a placeholder,
|
|
||||||
// unique, info-hash is used which is later updated once the .torrent
|
|
||||||
// file has been downloaded.
|
|
||||||
//
|
|
||||||
// Once the info-hash change happens, a torrent_update_alert is posted.
|
|
||||||
std::string url;
|
std::string url;
|
||||||
|
|
||||||
// if ``uuid`` is specified, it is used to find duplicates. If another
|
// if ``uuid`` is specified, it is used to find duplicates. If another
|
||||||
|
|
|
@ -1887,6 +1887,7 @@ namespace libtorrent
|
||||||
boost::uint64_t values[counters::num_counters];
|
boost::uint64_t values[counters::num_counters];
|
||||||
};
|
};
|
||||||
|
|
||||||
|
// hidden
|
||||||
// When a torrent changes its info-hash, this alert is posted. This only
|
// When a torrent changes its info-hash, this alert is posted. This only
|
||||||
// happens in very specific cases. For instance, when a torrent is
|
// happens in very specific cases. For instance, when a torrent is
|
||||||
// downloaded from a URL, the true info hash is not known immediately. First
|
// downloaded from a URL, the true info hash is not known immediately. First
|
||||||
|
|
Loading…
Reference in New Issue