~AreEnn_
~R4SAS
~acetone
~orignal
~villain
@onon
&N00B
+Xeha
CreateEnergyDecreaseEntropy
DsecT
Guest98878
Hypnosis
Lan_
Most
Nos4-Group
Opax
[---------------------------------------------]
ahiru
anontor
avele
ch
duanin2
entity
equinoxe
fidoid
ice_juice
justaperson
karamba_i2p
luvme
mareki2p
n1
nissarmeows
pinotto
poriori
profetikla
ps
qend
rumpelstilzchen
shaye
sonya
tensor
un
urist_
vade
void
плаZскуф
orignal
lock вернет nullptr на expired
sander
Пересобрано с добавленными "= nullptr" после delete[]. Посмотрю, будут ли дальнейшие вылеты на этих местах.
sander
13+ минут проработало без вылета, уже хорошо. Проверка на weakSession.isExpired() была true 3 раза.
sander
поправка: "weakSession.expired()", не "isExpired()"
orignal
так а почему lock не вернул nullptr?
orignal
если мы сделали lock то оно не станет expired в принципе
sander
Ну вот почему-то оно стало expired именно внутри IsCheckReserved, где GetNetworkAddress(session)
sander
Точнее, только там это встречалось, когда оно стало expired неизвестно.
orignal
так там session shared_ptr
sander
Так да, но вот такая вот загадка
sander
4 часа проработало без вылета, 27 раз был expired weakSession. Вылета на GetNetworkAddress больше не былольше не
luvme
cry4me: yeah its the spec but i don't think any tunnel is given how far away it is from destination and reciever right? so it can't even know total tunnel length
luvme
isn't max tunnel quantity and length purely a client side restriction?
anontor3
quantity is unlimited, length is protocol limited to 8 isn't it?
luvme
quantity is limited to 16 with unmodified i2pd, but i'm not sure if the 8 length restriction somehow verified by the routers
luvme
its probably that my brain too small but i personally can't think of a solid way to prevent extra long tunnel length, i'll read the docs and mod my clients for it to test tho
anontor3
isn't tunnel length limited naturally by number of garlic clove that fits in a packet?
cry4me
no, i don't think that's the case...garlic travel through already built tunnel
cry4me
hop is limited by the number of records in TBM
cry4me
not even >8, using >5 hops makes i2p unusable
anontor3
true facts
anontor3
i2pd Tunnels.cpp, normal tunnels up to 4 hops are padded to 218 bytes record size (SHORT_TUNNEL_BUILD_RECORD_SIZE)
anontor3
long tunnels 5-8 hops are padded to 528 bytes (TUNNEL_BUILD_RECORD_SIZE)
anontor3
when building the tunnel build message
anontor3
i2pd TransitTunnel.cpp rejects more than 8 (MAX_NUM_RECORDS) records in a TBM
anontor3
anyway it's true >5 hops won't be usable ever since the ddos
anontor3
really makes you think
luvme
useability isn't important
luvme
someone can put crazy load on i2p if they make a insanely long tunnels
anontor3
they can't, i2pd checks for it I assume Java I2P too
anontor3
ddos did crazy load with 1 hop tunnels
onon
Так всё-таки, сколько хопов влезает в короткое сообщение?
onon
4 или 3 + 1 фейковый
onon
orignal
orignal
ась?
orignal
4 для OB и 3 для IB
onon
Нада записать ато забуду
orignal
sander тем не менее это не объсняет причины двойного вызова деструктора
orignal
надо докопаться до них
orignal
length in 8 max, quantity is 16 max
sander
orignal, прощу прощения, вдруг не было замечены сообщения, вылетело в SIGTRAP 4 часа назад :(
sander
Проработало 8 часов с лишним, SIGTRAP с последующим вылетом на ntdll!RtlIsZeroMemory, сейчас на строке в Transports.cpp (где-то 605): auto s = std::make_shared<NTCP2Session> (*m_NTCP2Server, peer->router, address); при этом *m_NTCP2Server присутствует, peer->router присутствует, address валидный ipv4. Однако
sander
у peer->router m_Addresses.get() есть пустые элементы, которые в дебаггере прописаны как NULL (empty). Не знаю, может ли из-за этого. Есть backtrace из GDB, если нужен
orignal
не нужно
orignal
интересно другое
orignal
почему вылетает только у тебя
orignal
под виндой
orignal
вылетает потому что память где то битая
orignal
onon я все на бора бора отчаливаю потому буду появляться тут редко
onon
Как скоро отчаливаешь, и когда ждать возвращения
orignal
сегодня. ждать через 2 недели