[tor-project] [TSoP] stem.client - status report #5

Dave Rolek dmr-x at riseup.net
Wed Jul 25 06:11:59 UTC 2018

Hi everyone!

This is my fifth status report for the stem.client TSoP project [1].
You may see my previous reports on the tor-project ml. [2][3][4][5]

This report is a few days late.

# Updates

It's been roughly a week and a half since my last update.

I've focused on some loose ends over this time. I've found it's bad if I
let things sit in a partial state too long, so I wanted to push a few
things forward.

## stem.client

Nothing directly on the stem.client codebase. Oi.

## tor-spec

Having been pretty deep in the spec, I've been noting a number of things
to address.

When tor-spec was being discussed on #tor-dev, I contributed some to the
conversation and resultant tickets.

The discussion spawned the following tickets, which I filed:
* #26859 - improve contextual description of EXTEND->CREATE /
           CREATED->EXTENDED handling and payloads [6]
* #26860 - decryption order appears to be wrongly specified [7]

I also took #26228, which I previously filed, and split it into smaller
parts, to move forward:
* #26228 - Clarify/determine specification for padding bytes, (formerly
           also PADDING cell) [8]
* #26870 - clarify inconsistency for [V]PADDING/DROP cell content vs.
           padding bytes [9]

In a bit of relation, another part discussed in #26228 - randomized
padding - made it into a ticket thanks to teor and prop#289 review:
* #26871 - prop289: randomize the unused part of relay payloads [10]

I submitted a PR for #26860 and another for #26228.

#26859 and #26860 were addressed together; now merged. [11]

#26228, #26870, and #26871 are also being addressed together, the others
mostly by teor; current status is a PR. [12]

## stem, general

I filed/implemented a few tox-related tickets to make
development/testing easier:
* #26811 - tox fails with pip 10 [13]
* #26916 - Make tox config more useful/friendly for running multiple
           interpreters/versions [14]
* #26822 - Investigate relying on tox's default install capabilities
         | instead of an explicit command [15]
         +- better tox stuff of #26811, filed only

## tor, general

I ran into a few tor bugs during the past few weeks:
* #26709 - Onion V3 addresses not always working [16]
         +- I reproduced this (or something similar) and have a log that
            I will post this week
* #26882 - ~one case of IP address not scrubbed in logs~ [17]
         +- filed (noticed in scrubbing a log manually)

I ran into an exit that seems to be undergoing general censorship in the
area (tpo unreachable). Will be emailing bad-relays at torproject.org with
the details. (Thanks teor!)

# other bookkeeping

A few other general cleanup things:
* closed out #26197 - GitHub mirroring for stem [18]
* closed out stem's GitHub PRs #1-#4 [19]
* various other Trac triage/bookkeeping, e.g. ...
  - making the current status of #24321 clear in the ticket [20]
  - closing out #26852 [21]
* (probably other stuff)

# What's next

There's a bit more cleanup I want to do, but I recognized this update
has been proportionally much more of that than I had intended.

So next I plan to focus as much as possible on stem.client.

## stem.client

1. refactor: Relay cell encryption/decryption/processing
2. centralize ORPort reads/sends (demux/mux) at connection level
3. implement required RelayCell subclasses (e.g. parsing of decrypted

## tor-spec

File tickets to track spec improvements resulting from TSoP experience.
(These are bookkeeping / awareness tickets for my WIP changes.)

## tor, general

Post log for #26709. [15]
Email about potentially censored exit.

## other

File a GitHub mirroring ticket for nyx.
A bit of TSoP administrativia.

# Other Tor things

Multiple in-person chats. Seems to be a decently consistent interest in
Tor. :)

# Closing

I'm proactively reading a *bit* of IRC scrollback again now, but please
still mention my nick (dmr) if you want to get my attention!

As with before, please don't hesitate to reach out to me via IRC or


[6] https://trac.torproject.org/projects/tor/ticket/26859
[7] https://trac.torproject.org/projects/tor/ticket/26860
[8] https://trac.torproject.org/projects/tor/ticket/26228
[9] https://trac.torproject.org/projects/tor/ticket/26870
[10] https://trac.torproject.org/projects/tor/ticket/26871
[12] https://github.com/torproject/torspec/pull/28
[13] https://trac.torproject.org/projects/tor/ticket/26811
[14] https://trac.torproject.org/projects/tor/ticket/26916
[15] https://trac.torproject.org/projects/tor/ticket/26822
[16] https://trac.torproject.org/projects/tor/ticket/26709
[17] https://trac.torproject.org/projects/tor/ticket/26882
[18] https://trac.torproject.org/projects/tor/ticket/26197
[19] https://github.com/torproject/stem/pulls?q=is%3Aclosed
[20] https://trac.torproject.org/projects/tor/ticket/24321
[21] https://trac.torproject.org/projects/tor/ticket/26852

More information about the tor-project mailing list