View Issue Details
ID | Project | Category | View Status | Date Submitted | Last Update |
---|---|---|---|---|---|
0004901 | unreal | ircd | public | 2017-03-19 22:49 | 2017-03-20 16:26 |
Reporter | NoMiaus | Assigned To | syzop | ||
Priority | normal | Severity | major | Reproducibility | always |
Status | resolved | Resolution | fixed | ||
Fixed in Version | 4.0.12 | ||||
Summary | 0004901: Users IP shows up when /mode nick -t with force-rejoin option set | ||||
Description | Users IP shows up instead of the last host user had when -t with set::allow-userhost-change "force-rejoin". | ||||
Steps To Reproduce | Step 1. We set a host to the User via /chghost, his encrypted host is changed correctly to the one set, on this case 'example.example': User ([email protected]) has parted. (Rejoining because of user@host change) «1 person» User ([email protected]) has joined. «2 people» Step 2. User wants to get his encrypted host back and types /mode nick -t, but Users IP shows up: User ([email protected]) has parted. (Rejoining because of user@host change) «1 person» User ([email protected]) has joined. «2 people» It shouldn't shown the IP address but the host user currently had which is 'example.example'. The correct way should be: User ([email protected]) has parted. (Rejoining because of user@host change) «1 person» User ([email protected]) has joined. «2 people» The same happens when User uses a vHost set by HostServ: Step 1. User identifies to the nick and vHost is set by Services User ([email protected]) has parted. (Rejoining because of user@host change) «1 people» User ([email protected]) has joined. «2 people» Step 2. User types /mode nick -t User ([email protected]) has parted. (Rejoining because of user@host change) «1 person» User ([email protected]) has joined. «2 people» We should see the vhost user had, not the IP. The correct way should be: User ([email protected]) has joined. «1 people» User ([email protected]) has joined. «2 people» | ||||
Additional Information | After applying this commit https://github.com/unrealircd/unrealircd/commit/f3199ec5e519d74733b71341efc07a0b0fa54b98 and using the following options in the set block: modes-on-connect "+x"; restrict-usermodes "x"; allow-userhost-change "force-rejoin"; | ||||
Tags | No tags attached. | ||||
3rd party modules | |||||
|
Thanks. I can confirm the issue with latest git. This is obviously not how it should be :D |
|
I couldn't decide whether to call it 'minor' or 'major'.. The mode -t is not well known and the effect as you describe is clearly visible. Going for 'major' for now. It shouldn't expose real host/IP. In the past (and probably still) people were doing MODE -x and then MODE +x. That would expose their host/IP. The whole idea of this ability to -t (without the x) was that this would not happen. Turns out it doesn't help a bit if you use force-rejoin (and presumably same with quit+join). Grmpf. Anyway, details... I'll take a look later today at fixing the code. That'll be no issue. Thanks again for the report! |
|
Fixed, thanks! |
Date Modified | Username | Field | Change |
---|---|---|---|
2017-03-19 22:49 | NoMiaus | New Issue | |
2017-03-20 08:50 | syzop | View Status | public => private |
2017-03-20 08:52 | syzop | Assigned To | => syzop |
2017-03-20 08:52 | syzop | Status | new => confirmed |
2017-03-20 08:52 | syzop | Note Added: 0019700 | |
2017-03-20 08:52 | syzop | Severity | minor => major |
2017-03-20 09:01 | syzop | Note Added: 0019702 | |
2017-03-20 16:19 | syzop | View Status | private => public |
2017-03-20 16:26 | syzop | Status | confirmed => resolved |
2017-03-20 16:26 | syzop | Resolution | open => fixed |
2017-03-20 16:26 | syzop | Fixed in Version | => 4.0.12 |
2017-03-20 16:26 | syzop | Note Added: 0019703 |