View Issue Details

IDProjectCategoryView StatusLast Update
0002897unrealircdpublic2019-07-18 17:49
ReporterhmtXAssigned Toargvx 
PrioritynormalSeverityfeatureReproducibilityN/A
Status resolvedResolutionfixed 
PlatformOSallOS Versionall
Product Version3.2.8 
Target Version3.4-alpha1Fixed in Version5.0.0-alpha1 
Summary0002897: Add allow::options::wrongpasscont
DescriptionCurrently if used the client will continue to connect with no pass and put in the correct class if the correct pass is specified. However the client will either recieve a disconnect message saying "wrong password" or experience something like this:

[13:28:44] -Test.Net.Net- *** Checking ident...
[13:28:44] -Test.Net.Net- *** Found your hostname
[13:28:47] -Test.Net.Net- *** No ident response; username prefixed with ~
[13:28:48] -Test.Net.Net- *** If you are having problems connecting due to ping timeouts, please type /quote pong A19844B6 or /raw pong A19844B6 now.
-
[13:28:48] * [10101] Host disconnected
-
[13:28:48] * Disconnected
-
[13:28:48] * Send error ([10053] Software caused connection abort)
-
[13:28:48] * Disconnected

I'd want to treat a non-matching password as no password, meaning the client will connect as usual when specifying a password that does not match the allow block and nopasscont option is set.
TagsNo tags attached.
3rd party modules

Relationships

child of 0005328 assignedargvx TODO list for 'i' 

Activities

aquanight

2006-09-07 17:51

reporter   ~0012346

Added allow::options::wrongpasscont:

- Added allow::options::wrongpasscont to pass allow block checking to the next one if the
  password doesn't match.

Using wrongpasscont will make nopasscont in the same block redundant (since empty password would be considered a wrong password), but you can still use nopasscont for cases where you don't want wrong pass to be passed on, or put nopasscont in as well for extra sanity ;) .

And of course, this is as of CVS .2265 (devel)

aquanight

2007-12-21 00:28

reporter   ~0014918

Reopened to consider backporting to 3.2* (requested by Stealth).

Stealth

2009-07-24 00:47

reporter   ~0015894

Maybe for 3.2.9? :)

There's a patch somewhere, but I don't know where.

Stealth

2012-12-27 00:41

reporter   ~0017285

Update issue for 3.4 possibility

nenolod

2012-12-27 01:14

reporter   ~0017287

I think in general this is not the right way to do it.

Instead, the more obvious approach to me at least, is:

- rip all of that stuff out
- iterate through all auth{} blocks that match the user, if one of them is not password-required, allow the user through.

In other words, 'wrongpasscont' should be the default and I don't see any actual valid usecase for maintaining classic ircd semantics here. We got rid of that in charybdis, and you don't really see anything falling over.

Stealth

2012-12-27 01:19

reporter  

1.patch (1,384 bytes)

Stealth

2012-12-27 01:19

reporter  

2.patch (1,168 bytes)

Stealth

2012-12-27 01:20

reporter   ~0017288

Uploaded 2 patches from Unreal3.3's branch (probably invalid by now).

1.patch
2.patch

These are the 2 changesets that added allow::options::wrongpasscont

Stealth

2012-12-27 01:23

reporter   ~0017289

nenolod:

That's a good idea too :P

Issue History

Date Modified Username Field Change
2006-04-28 06:34 hmtX New Issue
2006-09-05 05:44 syzop Status new => acknowledged
2006-09-07 17:22 aquanight Status acknowledged => assigned
2006-09-07 17:22 aquanight Assigned To => aquanight
2006-09-07 17:51 aquanight Note Added: 0012346
2006-09-07 17:51 aquanight Status assigned => resolved
2006-09-07 17:51 aquanight Resolution open => fixed
2006-09-07 17:51 aquanight Fixed in Version => 3.3-alpha0
2007-12-21 00:28 aquanight QA => Not touched yet by developer
2007-12-21 00:28 aquanight U4: Need for upstream patch => No need for upstream InspIRCd patch
2007-12-21 00:28 aquanight U4: Upstream notification of bug => Not decided
2007-12-21 00:28 aquanight U4: Contributor working on this => None
2007-12-21 00:28 aquanight Note Added: 0014918
2007-12-21 00:28 aquanight Assigned To aquanight =>
2007-12-21 00:28 aquanight Status resolved => feedback
2007-12-21 00:28 aquanight Resolution fixed => reopened
2007-12-21 00:28 aquanight Product Version 3.2.4 => 3.2.8
2009-07-24 00:47 Stealth Note Added: 0015894
2009-07-24 00:47 Stealth Status feedback => acknowledged
2009-07-24 01:13 Stealth Summary change nopasscont option behaviour in allow block => Add allow::options::wrongpasscont
2012-12-27 00:41 Stealth Note Added: 0017285
2012-12-27 00:41 Stealth Resolution reopened => open
2012-12-27 00:41 Stealth Fixed in Version 3.3-alpha0 =>
2012-12-27 00:41 Stealth Target Version => 3.4-alpha1
2012-12-27 01:14 nenolod Note Added: 0017287
2012-12-27 01:19 Stealth File Added: 1.patch
2012-12-27 01:19 Stealth File Added: 2.patch
2012-12-27 01:20 Stealth Note Added: 0017288
2012-12-27 01:23 Stealth Note Added: 0017289
2015-08-08 17:54 syzop Severity tweak => feature
2019-07-08 08:46 syzop Relationship added child of 0005328
2019-07-18 17:49 argvx Assigned To => argvx
2019-07-18 17:49 argvx Status acknowledged => resolved
2019-07-18 17:49 argvx Resolution open => fixed
2019-07-18 17:49 argvx Fixed in Version => 5.0.0-alpha1