~AreEnn
~R4SAS
~orignal
~villain
&N00B
+Xeha
+relaybot
DUHOVKIN
Guest29533
HackerMan
Most2
Nausicaa
Ruskoye_911
Trusishka
Vort
`
acetone_
anon3
b3t4f4c3
mittwerk
nemiga
not_bob_afk
plap
poriori_
profetikla
segfault
soos
teeth
un
weko_
whothefuckami
Vort
R4SAS: поведение по умолчанию - это, конечно, интересно и важно для починки бага. но суть проблемы в другом
Vort
когда inport не указан, он должен соотвтествовать порту. но судя по тому, что описано в багрепорте, - не соответствует
Vort
то есть, сценарий такой: есть два туннеля, ни в одном из них не указан inport. клиент при этом явно указывает порт подключения (80 или 443 допустим)
Vort
то есть, дефолты вообще не при чём
Vort
дефолт был бы важен, если бы он указывал порт 12345, допустим, для которого туннеля нету, тогда был бы перенаправлен в первый туннель
Vort
про строчку №711 я понял - надо разбираться, почему это не работает значит
Vort
бля
Vort
полез разбираться с портами, словил креш в другом месте
Vort
github.com/PurpleI2P/i2pd/blob/75aa9f2c0c79c09d9ddc85465edad090dfee884d/libi2pd/Transports.cpp#L715
Vort
вот тут вот it->second.numAttempts = 2
Vort
при том, что размер it->second.priority = 2
Vort
то есть, выход за пределы массива
Vort
надеюсь, этой информации достаточно. буду теперь порты смотреть
Vort
этот баг не пускает меня дальше. it->second.numAttempts = 1 и it->second.priority размером 1 тоже бывают
Vort
R4SAS: orignal: выход за пределы массива - гадкая штука, как по мне, то лучше в релиз такое не пускать
Vort
может, конечно, это следствие какой-то моей ошибки, не знаю. очень желательно перепроверить
Vort
воспроизводится у меня довольно надёжно. так надёжно, что пришлось if (it->second.numAttempts < it->second.priority.size()) втыкать, чтобы отделаться от креша
Vort
что с портом более-менее понятно, написал результаты изучения проблемы в issue
orignal
там не может быть выхода
orignal
я погляжу
orignal
да это баг
orignal
я починю
orignal
Vort все я починил
orignal
отличная находка
orignal
R4SAS я закоммитил
orignal
читай
Opicaak
Didn't add the ports in webconsole that weko added?
orignal
no, it requires more changes
Opicaak
I see
R4SAS
недавно такое меняли
orignal
неее я это делал чтобы релоад чинить
R4SAS
тогда я не знаю по тому вопросу с портом
R4SAS
он не хочет писать inport, но внутренний хочет чтобы был по дефолту равен port?
R4SAS
разве это не делается как раз там?
orignal
что то его сегодня нету
orignal
я найденный им баг починил
R4SAS
был утром
R4SAS
int inPort = section.second.get (I2P_SERVER_TUNNEL_INPORT, 0);
R4SAS
serverTunnel = std::make_shared<I2PServerTunnel> (name, host, port, localDestination, inPort, gzip);
R4SAS
вроде всё верно
R4SAS
ну а решение он предлагает такое: github.com/Vort/i2pd/commit/21ad37833e7d965cf51a1f8c41fb494beed177ec
R4SAS
m_ServerTunnels.insert (std::make_pair ( std::make_pair (localDestination->GetIdentHash (), inPort), serverTunnel));
R4SAS
хм
R4SAS
а не из-за этого ли?
orignal
а x3
R4SAS
хотя врядли
R4SAS
оно только для остановки и обновления туннелей вроде используется
R4SAS
orignal: так переделывать int inport на указатель?
R4SAS
или лучше внутри отдельный int на это?
orignal
лучше отдельный
R4SAS
ок
orignal
ты давай релиз читай
R4SAS
уже
R4SAS
одну запись добавлю
R4SAS
остальное нормально
orignal
понял
orignal
завтра релизим
R4SAS
я с утра начну
R4SAS
залил