Opened 5 years ago

Last modified 5 weeks ago

#11727 assigned enhancement

Support shared onion pool for DNS resolution in separate process

Reported by: dgoulet Owned by:
Priority: Medium Milestone:
Component: Core Tor/Torsocks Version:
Severity: Normal Keywords:
Cc: Actual Points:
Parent ID: Points:
Reviewer: Sponsor:

Description

So it turns out that in irssi is doing DNS resolution in an other process and passing the result back to the first process which will make the connection.

This means that the two process have two distinct onion pools so the process doing the DNS resolution will store the onion address with the reserved cookie but the other process, when connecting using that cookie, will be unable to find the onion address in its pool.

One solution I have in mind is to create that onion pool in a shared memory (SHM) and hijack the clone/fork symbol so when we detect a new process we can set the onion pool reference in it thus sharing the pool across processes that have a common parent.

I have a PoC that works but maybe there could be an IPC approach instead.

Child Tickets

Change History (3)

comment:1 Changed 3 years ago by dgoulet

Status: newaccepted

Accept a bunch of tickets for torsocks.

comment:2 Changed 20 months ago by teor

Severity: Normal

Set all open tickets without a severity to "Normal"

comment:3 Changed 5 weeks ago by gaba

Owner: dgoulet deleted
Status: acceptedassigned

Releasing some old tickets.

Note: See TracTickets for help on using tickets.