<feed xmlns='http://www.w3.org/2005/Atom'>
<title>shapeshifter-dispatcher.git/ChangeLog, branch master</title>
<subtitle>[shapeshifter-dispatcher] 
</subtitle>
<link rel='alternate' type='text/html' href='https://leap.se/git/shapeshifter-dispatcher.git/'/>
<entry>
<title>Bump the version to 0.0.7-dev, signifying development towards 0.0.7.</title>
<updated>2016-01-25T14:40:14+00:00</updated>
<author>
<name>Yawning Angel</name>
<email>yawning@torproject.org</email>
</author>
<published>2016-01-25T14:40:14+00:00</published>
<link rel='alternate' type='text/html' href='https://leap.se/git/shapeshifter-dispatcher.git/commit/?id=1df5c8ffe8f4aa2614323698e8008f1ab1fb7a18'/>
<id>1df5c8ffe8f4aa2614323698e8008f1ab1fb7a18</id>
<content type='text'>
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
</pre>
</div>
</content>
</entry>
<entry>
<title>Do the release ritual for obfs4proxy-0.0.6.</title>
<updated>2016-01-25T14:14:30+00:00</updated>
<author>
<name>Yawning Angel</name>
<email>yawning@torproject.org</email>
</author>
<published>2016-01-25T14:14:30+00:00</published>
<link rel='alternate' type='text/html' href='https://leap.se/git/shapeshifter-dispatcher.git/commit/?id=896a98c427180a34b658277fa40c41823b9ef5c1'/>
<id>896a98c427180a34b658277fa40c41823b9ef5c1</id>
<content type='text'>
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
</pre>
</div>
</content>
</entry>
<entry>
<title>Add the "meek_lite" transport, which does what one would expect.</title>
<updated>2015-10-29T17:29:21+00:00</updated>
<author>
<name>Yawning Angel</name>
<email>yawning@torproject.org</email>
</author>
<published>2015-10-29T17:29:21+00:00</published>
<link rel='alternate' type='text/html' href='https://leap.se/git/shapeshifter-dispatcher.git/commit/?id=611205be681322883a4d73dd00fcb13c4352fe53'/>
<id>611205be681322883a4d73dd00fcb13c4352fe53</id>
<content type='text'>
This is a meek client only implementation, with the following
differences with dcf's `meek-client`:

 - It is named `meek_lite` to differentiate it from the real thing.
 - It does not support using an external helper to normalize TLS
   signatures, so adversaries can look for someone using the Go
   TLS library to do HTTP.
 - It does the right thing with TOR_PT_PROXY, even when a helper is
   not present.

Most of the credit goes to dcf, who's code I librerally cribbed and
stole.  It is intended primarily as a "better than nothina" option
for enviornments that do not or can not presently use an external
Firefox helper.
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
This is a meek client only implementation, with the following
differences with dcf's `meek-client`:

 - It is named `meek_lite` to differentiate it from the real thing.
 - It does not support using an external helper to normalize TLS
   signatures, so adversaries can look for someone using the Go
   TLS library to do HTTP.
 - It does the right thing with TOR_PT_PROXY, even when a helper is
   not present.

Most of the credit goes to dcf, who's code I librerally cribbed and
stole.  It is intended primarily as a "better than nothina" option
for enviornments that do not or can not presently use an external
Firefox helper.
</pre>
</div>
</content>
</entry>
<entry>
<title>Delay transport initialization till after logging has been setup.</title>
<updated>2015-06-01T16:15:35+00:00</updated>
<author>
<name>Yawning Angel</name>
<email>yawning@torproject.org</email>
</author>
<published>2015-06-01T16:15:35+00:00</published>
<link rel='alternate' type='text/html' href='https://leap.se/git/shapeshifter-dispatcher.git/commit/?id=69ffcc39c63f4a9a192082da71eea6b06a1e75d7'/>
<id>69ffcc39c63f4a9a192082da71eea6b06a1e75d7</id>
<content type='text'>
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
</pre>
</div>
</content>
</entry>
<entry>
<title>Bump the version to 0.0.6-dev, signifying development towards 0.0.6.</title>
<updated>2015-04-23T00:32:25+00:00</updated>
<author>
<name>Yawning Angel</name>
<email>yawning@torproject.org</email>
</author>
<published>2015-04-23T00:32:25+00:00</published>
<link rel='alternate' type='text/html' href='https://leap.se/git/shapeshifter-dispatcher.git/commit/?id=37a709d8b4fec837c0c88c495e7ea926953d974f'/>
<id>37a709d8b4fec837c0c88c495e7ea926953d974f</id>
<content type='text'>
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
</pre>
</div>
</content>
</entry>
<entry>
<title>Do the release ritual for obfs4proxy-0.0.5.</title>
<updated>2015-04-15T20:54:07+00:00</updated>
<author>
<name>Yawning Angel</name>
<email>yawning@torproject.org</email>
</author>
<published>2015-04-15T20:54:07+00:00</published>
<link rel='alternate' type='text/html' href='https://leap.se/git/shapeshifter-dispatcher.git/commit/?id=3540313e53fc851c833d98281fd64c8fd32effeb'/>
<id>3540313e53fc851c833d98281fd64c8fd32effeb</id>
<content type='text'>
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
</pre>
</div>
</content>
</entry>
<entry>
<title>Use a built in SOCKS 5 server instead of goptlibs.</title>
<updated>2015-04-15T20:50:01+00:00</updated>
<author>
<name>Yawning Angel</name>
<email>yawning@torproject.org</email>
</author>
<published>2015-04-12T19:00:46+00:00</published>
<link rel='alternate' type='text/html' href='https://leap.se/git/shapeshifter-dispatcher.git/commit/?id=a8d7134f1097bd50803da0e2a86c07524e433b51'/>
<id>a8d7134f1097bd50803da0e2a86c07524e433b51</id>
<content type='text'>
Differences from my goptlib branch:
 * Instead of exposing a net.Listener, just expose a Handshake() routine
   that takes an existing net.Conn. (#14135 is irrelevant to this socks
   server.
 * There's an extra routine for sending back sensible errors on Dial
   failure instead of "General failure".
 * The code is slightly cleaner (IMO).

Gotchas:
 * If the goptlib pt.Args datatype or external interface changes,
   args.go will need to be updated.

Tested with obfs3 and obfs4, including IPv6.
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
Differences from my goptlib branch:
 * Instead of exposing a net.Listener, just expose a Handshake() routine
   that takes an existing net.Conn. (#14135 is irrelevant to this socks
   server.
 * There's an extra routine for sending back sensible errors on Dial
   failure instead of "General failure".
 * The code is slightly cleaner (IMO).

Gotchas:
 * If the goptlib pt.Args datatype or external interface changes,
   args.go will need to be updated.

Tested with obfs3 and obfs4, including IPv6.
</pre>
</div>
</content>
</entry>
<entry>
<title>Move logging wrappers into common/log, and add a DEBUG log level.</title>
<updated>2015-04-03T14:21:31+00:00</updated>
<author>
<name>Yawning Angel</name>
<email>yawning@torproject.org</email>
</author>
<published>2015-04-03T14:21:31+00:00</published>
<link rel='alternate' type='text/html' href='https://leap.se/git/shapeshifter-dispatcher.git/commit/?id=df4265707999b08d220374c08e82711f264247bf'/>
<id>df4265707999b08d220374c08e82711f264247bf</id>
<content type='text'>
Implements feature #15576.
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
Implements feature #15576.
</pre>
</div>
</content>
</entry>
<entry>
<title>Add support for tor feature #15435.</title>
<updated>2015-03-28T03:09:17+00:00</updated>
<author>
<name>Yawning Angel</name>
<email>yawning@torproject.org</email>
</author>
<published>2015-03-28T03:09:17+00:00</published>
<link rel='alternate' type='text/html' href='https://leap.se/git/shapeshifter-dispatcher.git/commit/?id=402fe97d8547d216746d2237010f32b691cb71e1'/>
<id>402fe97d8547d216746d2237010f32b691cb71e1</id>
<content type='text'>
If the relevant enviornment variable is set, treat read errors from
Stdin as a SIGTERM.
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
If the relevant enviornment variable is set, treat read errors from
Stdin as a SIGTERM.
</pre>
</div>
</content>
</entry>
<entry>
<title>Attempt to detect if the parent crashed without killing obfs4proxy.</title>
<updated>2015-03-26T06:30:50+00:00</updated>
<author>
<name>Yawning Angel</name>
<email>yawning@torproject.org</email>
</author>
<published>2015-03-26T06:30:50+00:00</published>
<link rel='alternate' type='text/html' href='https://leap.se/git/shapeshifter-dispatcher.git/commit/?id=4e4c9052f436b86729b853715086e9445c76e185'/>
<id>4e4c9052f436b86729b853715086e9445c76e185</id>
<content type='text'>
The ideal solution here would be to implement #15435, but till then
use one of several kludges:
 * Linux - prctl() so that the kernel SIGTERMs on parent exit.
 * Other U*ix - Poll the parent process id once a second, and SIGTERM
   ourself/exit if it changes.  Former is better since all the normal
   cleanup if any gets done.
 * Windows - Log a warning.
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
The ideal solution here would be to implement #15435, but till then
use one of several kludges:
 * Linux - prctl() so that the kernel SIGTERMs on parent exit.
 * Other U*ix - Poll the parent process id once a second, and SIGTERM
   ourself/exit if it changes.  Former is better since all the normal
   cleanup if any gets done.
 * Windows - Log a warning.
</pre>
</div>
</content>
</entry>
</feed>
